- 1
- 0
- 约2.82万字
- 约 13页
- 2018-02-05 发布于浙江
- 举报
下载
下载
第5章 结构定制安全
政府机关不会给人们带来幸福,但能给人们提供创造幸福的机会。
—Winlliam Ellery Channing
第4章讨论了配置J a v a安全结构的几种可能性。本章进一步研究一些具体的定制例子。
5.1 创建新的许可权类型
回想一下, JDK 1.2 介绍了由抽象类确立的一种新的类型化、参数化的访问许可权
j a v a . s e c u r i t y. P e i m i s s i o n 。其他的许可权或者是P e r m i s s i o n类的子类。或者是 P e r m i s s i o n子类的
子类。所以一般情况下应该归入它们自己的包中。例如,表示文件系统访问的许可权位于
J a v a 的I / O包中,像j a v a . i o . F i l e P e r m i s s i o n 是j a v a . i o 。JKD 1.2 中其他新的许可权类包括:
• java.net.SocketPermission用于对网络资源的访问。
• java.lang.RuntimePermission用于对运行系统资源的访问,如属性等。
• java.awt.AW T P e r m i s s i o n用于对窗口资源的访问。
换句话说,对于大多数的控制资源,包括对 J a v a属性和包的访问方法和参数时由新的许可权
类表示的。
应用程序可以自由地添加新种类的许可权,但必须注意的是:除非是正式发行,不管是
通过给像j a v a . l a n g . R u n t i m e P e r m i s s i o n 这样的类中添加新功能还是引入另外的关键字,没有人
能扩展内置于J D K 中的许可权,如果要创建一个新的许可权,建议采用如下例所示的步骤。
假设A B C公司的一位软件开发人员想要定制一个许可权来“看电视”。首要问题是:他是直接用
现有的P e r m i s s i o n对象,比如任何可能的R u n t i m e P e r m i s s i o n对象,还是需要一个定制的对象?假设想要
创建一个新的P e r m i s s i o n类,命名为c o m . a b c . P e r m i s s i o n,它扩展了抽象类j a v a . s e c u r i t y. P e r m i s s i o n (或它的
任一个子类) 。还需设计另外的新类c o m . a b c . T V P e r m i s s i o n,它扩展了c o m . a b c . P e r m i s s i o n。
public class com.abc.Permission extends java.security.Permission
public class com.abc.TVPermission extends com.abc.Permission
必须确保在其他的方法中, i m p l i e s ( ) 方法得到正确的实现。如果包含有更复杂的 T V
P e r m i s s i o n s ,例如c h a n n e l - 1 : 1 3或c h a n n e l - *,那么也许需要实现一个 TV PermissionCollection
对象,它知道如何处理这些语义学。接着,需要把这些许可权类包含进应用程序包中,以便
当应用程序需要它们的时候,类加载器能够找到它们。
然后,当核查一个许可权是否应该得到准许时,需要应用程序的资源管理代码来调用
A c c e s s C o n t r o l l e r 的c h e c k P e r m i s s i o n方法,使用com.abc.TVPermission 对象作为参数。
public void switchChannel(int channel) {
com.abc.TVPermission tvperm = new
您可能关注的文档
最近下载
- 明代宗教信仰与思想控制.docx VIP
- 江苏省南通市2024-2025学年高二上学期期末学业质量监测语文试卷(含答案).pdf VIP
- 国就有成人演出的电影了?想看就要冒生命危险.pdf VIP
- 综合素质练习题及答案.doc VIP
- 2020-2021学年北京高三化学二轮复习 反应原理型简答题(突破二卷)(word版 含答案).docx VIP
- 电力拖动控制线路安装与检修(白银矿冶职业技术学院)知到智慧树答案.docx VIP
- 煤炭巷道掘砌工(高级工)资格考试题库(全真题库).docx VIP
- 影像叙事中情感共鸣生成机制.docx VIP
- 同轴二级圆柱齿轮减速器的设计(硬齿面).doc VIP
- 基于GPU多线程多通道图像高速重构方法、设备及介质.pdf VIP
原创力文档

文档评论(0)