`
kiki1120
  • 浏览: 308115 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

《Java安全性编程指南》—第7章 核心Java安全模块和Applet安全(2)

阅读更多

Java安全管理器

    Java安全管理器处理必要的权限检查。缺省的实现是Java.lang.SecurityManager类中,如有必要可以派生出子类或取代之。对于不安全的行为,Java就会强制安全管理器进行安全检查。

安全管理器是如何工作的:

  1. 你的代码调用需要权限的代码,如new FileInputStream("filename")
  2. 那代码就会调用安全管理器检查权限
  3. 安全管理器决定权限是否允许。这通常(而不是必须的)会与java.security.AccessController交互。如果没有权限,就会出现运行异常:java.lang.SecurityException,否则不会返回异常而正常运行。安全管理器会监督整个执行线程已确保每个类都有相应权限。
  4. 如果没有异常,说明有足够的权限,程序将继续正常运行。

设置安全管理器有2个常用的方法

  1. 执行命令    java -Djava.security.manager FileWriteTest
  2. 程序中指定

           SecurityManager security = new SecurityManager();
           System.setSecurityManager(security);

 

Java.policy文件

    某些权限必须赋予类,这是在java.policy文件中定义,java.policy文件保存在目录$JAVA_HOME/jre/lib/security中。

 

Java中的权限

    Java本身定义了许多权限,顶层类包括:

  • java.security.AllPermission—对所有文件都有的全部权限
  • java.security.BasicPermission—大多数简单权限的超类
  • java.io.FilePermission—文件读写权限
  • java.net.SocketPermission—打开连接远程计算机的包,并用DNS解析主机名

BasicPermission有许多派生类定义其他权限

  • javax.sound.sampled.AudioPermission—访问音频函数的权限,如播放、录音等。
  • javax.awt.AWTPermission—与图形有关的行为的权限,比如访问剪贴板或读AWT事件。
  • java.net.NetPermission—处理URL的权限,必然增加一个口令认证。
  • java.util.PropertyPermission—读写系统属性的权限。
  • java.lang.reflect.ReflectPermission—使用reflection的权限。
  • java.lang.RuntimePermission—运行时安全元素的权限,比如设置类装载器或安全管理器。
  • java.security.SecurityPermission—安全元素的权限,像安全策略和加密服务。
  • java.io.SerializablePermission—读写可序列化对象的权限。
  • java.sql.SQLPermission—设置SQL日志的权限。
分享到:
评论

相关推荐

    Java.Servlets编程指南

    第1章 servlet概述第2章 Java Web服务器第3章 第一个servlet 第4章 servlet链第5章 servlet-side Includes 第6章 会话管理第7章 安全性 第8章 HTML表单第9章 在servlet中使用JDBC 第10章 applet与servlet的通信第11...

    Java Applet实例编程

    Java Applet实例编程

    Java的线程和Java AppletJava的线程和Java AppletJava的线程和Java Applet

    Java的线程和Java AppletJava的线程和Java AppletJava的线程和Java AppletJava的线程和Java AppletJava的线程和Java Applet

    JAVA安全性编程实例.doc及源码

    本书以大量的实例介绍了Java安全性编程方面的概念和技术,全书共计9章。经过精心设计,每个小节的实例着重说明一个问题,又相互贯穿和联系。内容涉及Java加密和解密,反编译和反反编译,对类、成员变量、方法的攻击...

    JavaApplet实例及教程

    Java+Applet实例讲解(分为1和2两部分)、Java+Applet实例编程、java+Applet登录、JavaApplet教程.pdf、JAVA_applet应用实例.ppt、JavaApplet编程技巧实例专辑、javaapplet例子.doc、Applet类.doc等教程。...

    Java安全性编程实例(徐迎晓)

    # 本章解决的是数据内容的安全性,介绍Java的加密和解密技术。学完该章可以通过Java编程对各种数据进行各种形式的加密。密码学也是安全机制的基础。 # 第三章 # 解决的主要问题——和源代码相关的安全性 # 编写好...

    <Java安全性编程实例>书和代码

    &lt;Java安全性编程实例&gt;书和代码,内容涉及Java加密和解密,反编译和反反编译,对类、成员变量、方法的攻击和保护,消息摘要,消息验证码,数字签名,口令保护,数字证书和证书链的生成、签发、检验和维护,SSL和HTTPS...

    Web编程指南Web编程指南

    第7章 使用JAVA进行面向对象的程序设计 第8章 JAVA语法基础 第9章 Applet图形应用程序和基本绘图 第10章 处理鼠标和键盘事件 第11章 窗口 第12章 使用布局管理器安排窗口 第13章 图形用户界面控件 第14章 使用JAVA...

    Java语言Applet编程技术.

    本教程详尽的介绍了如何进行Applet的开发。

    Java Applet实例编程.rar_applet_java Applet

    Java Applet实例编程.rar

    完整版 Java编程基础入门教程 Java语言程序设计 第9章_Applet(共40页).ppt

    完整版 Java编程基础入门教程 Java语言程序设计 第7章_流和文件(共63页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第8章_多线程与异常处理(共72页).ppt 完整版 Java编程基础入门教程 Java语言程序设计...

    java核心技术第八版源代码(全)

    第1章 Java 程序设计概述 ...第7章 图形程序设计 第8章 事件处理 第9章 Swing用户界面组件 第10章 部署应用程序和applet 第11章 异常、日志、断言和调试 第12章 泛型程序设计 第13章 集合 第14章 多线程

    javaapplication和javaapplet的区别

    javaapplication和javaapplet的区别

    java 核心编程 java

    全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、泛型程序设计、集合以及多线程等内容。. 全书对Java...

    Java核心编程技术源码

    《Java高手真经(编程基础卷):Java核心编程技术》详细讲解了Java语言基础开发中的各种技术,主要内容包括如下。Java开发入门:JDK、JVM、Eclipse、Linux。Java语法基础:类、抽象类、接口、内部类、匿名类、异常、...

    完整版 Java编程基础入门教程 Java语言程序设计 第1章_java概述(共50页).ppt

    完整版 Java编程基础入门教程 Java语言程序设计 第7章_流和文件(共63页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第8章_多线程与异常处理(共72页).ppt 完整版 Java编程基础入门教程 Java语言程序设计...

    [java.核心技术.第八版].Core.Java..8th.Edition源代码 示例代码

    第1章 Java 程序设计概述 ...第7章 图形程序设计 第8章 事件处理 第9章 Swing用户界面组件 第10章 部署应用程序和applet 第11章 异常、日志、断言和调试 第12章 泛型程序设计 第13章 集合 第14章 多线程

Global site tag (gtag.js) - Google Analytics