- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OSGi安全层是OSGi服务框架的一个可选的层它基于Java
OSGi R4 服务平台核心标准
PAGE 11
PAGE 4
So many open source projects. Why not Open your Documents?
简介
参考
Bradner, S., Key words for use in RFCs to Indicate Requirement Levels
/rfc/rfc2119.txt, March 1997.
OSGi Service Gateway Specification 1.0, May 2000
/resources/spec_download.asp
OSGi Service Platform, Release 2, October 2001
/resources/spec_download.asp
OSGi Service Platform, Release 3, March 2003
/resources/spec_download.asp
Lexical Structure Java Language
/docs/books/jls/second_edition/html/lexical.doc.html
安全层
版本号: 1.3
简介
OSGi安全层是OSGi服务框架的一个可选的层。它基于Java 2 安全体系结构,提供了对运行在精密控制细颗粒度受控环境下里面的应用部署和管理的基础架构。
要点
精密控制细颗粒度(fine grained)—在OSGi框架下里边运行的应用控制必须达到考虑到对这些应用的精细粒度详细的控制。
可管理性—安全层本身没有定义API来控制应用,对安全层的管理交由生命周期层。
可选性—安全层是可选的。
安全概览概述
框架安全模型基于Java 2 规范。如果运行安全检查,那么需要遵循Java 2 安全架构体系结构规范。本规范假定读者熟悉这些Java规范,安全层是可选的,参见 HYPERLINK \l _安全可选性情况 安全可选性一节。
代码验证
OSGi服务平台采用以下两种方式对代码进行校验证:
依靠位置验证
依靠签名者验证
在较高层次有明确规定的服务,可以管理权限有关联的认证单位的代码。权限和验证单元的代码关联,在高层定义了管理这些权限的服务,如下这些服务是:
权限管理服务(Permission Admin service):基于完整的位置字符串的权限管理
条件权限管理服务(Conditional Permission Admin service):基于复杂综合条件模型的权限管理,可以使用位置或签名来验证条件。
对于签名验证,这有赖于需要签过名的JAR文件也是采用签名,在 HYPERLINK \l _数字签名JAR文件 数字签名JAR文件一节中进行了详细描述。
安全可选性情况
框架运行的在Java平台上的框架必须为Java 2 权限提供Java安全API。在资源约束的平台,这些Java安全API可以是一个存根,以便于可以运行和加载bundle类。但是,在安全检查时,这些API存根并不实际执行,这些存根必须遵循一些约束:
checkPermission—不抛出安全异常(Security Exception)返回
checkGuard—不抛出安全异常(Security Exception)返回
implies—返回true
这种处理默认所有的Bundle具有所有的处理权限使代码运行就像所有bundle都拥有所有的权限。
数字签名JAR文件
本节详细描述了怎样签名数字签名的JAR文件。本节覆盖了不同JAVA版本中的JAR文件规范的一部分,这是由于在这些规范中,存在这一些可选的方面或者是没有良好定义的方面。因此,一份参考是不足以说明的。
数字签名是一种安全机制,采用如下方法进行验证:
验证签名者
确保签名后的内容没有被修改过。
在OSGi框架中,对JAR文件的签名关联到该JAR文件。这种关联可用于:
在认证的基础上进行授权给JAR文件。
通过对bundle集合授予权限来操作选定其中的这些bundle
例如:操作员给ACME公司赋予在他们设备上使用网络的权限,如果带有ACME公司签名的bundle部署在操作员的设备上,那么这些bundle就使用网络了。同理,一个特定的bundle也可以赋予它只有管理带ACME公司签名的bundle的生命周期。
签名提供了一种强大的代理模型。它允许操作员赋予一个公司一系列受限的权限,然后,这个公司就可以创建JAR文件来使用这些权限,而不需要进行其他的任何干涉,或者也不需要针对每个特定的JAR同操作员交流通讯。
这种代理模型描述如下图所示:
图 STYLEREF 2 \s 2.3 SEQ 图 \* ARABIC \s 2 1 代理模型
数字签名采用了公钥密码机制加密系
文档评论(0)