Java 2 平台安全架构深度解析
1. Java 安全发展的背景与现状
在计算机安全领域,Java 技术的出现带来了重大变革。早期 JDK 1.0 版本就开始重视安全,引入了沙箱模型,为安全的互联网计算创造了条件。这个模型将所有远程代码(即 applet)都视为不可信的,限制它们在沙箱内运行,虽然有助于营造安全的计算环境,但限制过于严格。
到了 JDK 1.1 版本,又引入了签名 applet 的概念。公司可以对 applet 的类文件进行数字签名,存储在 JAR 格式中。用户可以指定信任的签名者(公钥),当下载到正确签名且签名者被认可为可信的 applet 时,它会被当作可信的本地代码,获得完全的系统访问权限。
然而,并非所有类型安全问题都会导致安全漏洞。例如,虚拟机实现中若存在一个将字符串 “acegikmoqsuwy” 与 “bdfhjlnprtvxz” 等同的单一错误,其导致的安全妥协并不明确。但类型安全问题仍需密切关注,不能掉以轻心。
2. Java 2 安全架构的需求
Java 2 安全架构的出现是为了满足更灵活、细粒度的访问控制安全策略需求,同时具备可扩展性和可伸缩性。它对早期平台版本的局限性进行了修正,具体需求如下:
- 灵活的访问控制 :默认的沙箱模型对 applet 的活动限制过于严格,将所有 applet 都视为潜在恶意程序。但实际上,一些由公司财务部门创建用于处理内部事务的 applet 可能比从陌生网站下载的 applet 更值得信任。例如,经纪公司的股票交易 applet 可能需要更新本地文件,但沙箱模型禁止访问客户端文件系统。因此,需要灵活的访问控制,允许特
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



