当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

基于Java 2运行时安全模子的线程合作[Java编程]

赞助商链接



  本文“基于Java 2运行时安全模子的线程合作[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

本文配套源码

在Java 2之前的版本,运行时的安全模子利用非常严峻受限的沙箱模子(Sandbox).读者应当熟习,Java 不受信的Applet代码就是基于这个严峻受限的沙箱模子来供应运行时的安全查抄.沙箱模子的本质是,任何本地运行的代码都是受信的,有完好的权限来存取关键的系统资源.而关于Applet,则属于不受信的代码,只能拜候沙箱范围内有限的资源.当然,您可以通过数字签名的方法配置您的Applet为受信的代码,具有同本地代码一样的权限.

从Java 2开始,Java 供应了基于战略(Policy)与仓库受权的运行时安全模子,它是一个越发细粒度的存取掌握,易于配置与扩大,其总体的架构如图 1 所示:

图 1.Java 2安全模子

简单来说,当类由类装载器(Class Loader)载入到 JVM 运行,这些运行时的类会按照 Java Policy 文件的配置,被赋予差别的权限.当这些类要拜候某些系统资源(比方翻开 Socket、读写文件等),大概履行某些敏感的操作(比方存取密码)时,Java 的安全管理器(ava.lang.SecuirtyManager)的查抄权限办法将被调用,查抄这些类能否具有必要的权限来履行该操作.

在持续深化谈论之前,我们先来澄清下面的几个概念:

战略,即系统安全战略,由用户大概管理员配置,用来配置履行代码的权限.运行时的 java.security.Policy 对象用来代表该战略文件.

权限,Java 定义了层次构造的权限对象,全部权限对象的根类是 java.security.Permission.权限的定义触及两个核心属性:目标(Target)与行动 (Action).比方关于文件相关的权限定义,其目标就是文件大概目录,其行动包含:读,写,删除等.

保护域,保护域可以理解为具有共同的权限集的类的调集.

在Java 2里,权限实际上是被赋予保护域的,而不是直接赋给类.权限、保护域和类之间的映射关系如图 2.

图 2. 类,保护域,权限的映射关系

如图 2 所示,当前运行时仓库是从 a.class 到 e.class.在运行时仓库上的每一帧(Stack Frame)城市被 Java 划归为某个保护域(保护域是 Java 按照 Policy 文件配置构建出来的).Java 的安全管理器在履行权限查抄时,会对仓库上的每个 Stack Frame 做权限查抄,当且仅当每个 Stack Frame 被赋予的权限集都暗含(Imply)了所要求的权限时,该操作才被答应履行,不然 java.security.AccessControlException 非常将被抛出,该操作履行失利.


  以上是“基于Java 2运行时安全模子的线程合作[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>基于java的图片文件格局转换和线性缩放</b>
  • 基于Java 2运行时安全模子的线程合作
  • 深化浅出基于Java的责任链情势
  • 深化浅出基于Java的制作筹划情势
  • 操纵SWT开辟基于Java的图形用户界面
  • 深化浅出基于Java的代理筹划情势
  • 构建自己的基于Java的超级计算机
  • 基于Java的IDEA加密算法根究
  • 基于Java的UDP协议程序筹划初探
  • 基于Java的动画编程底子(一)
  • 基于Java的动画编程底子(二)
  • 深化浅出基于Java的注释器筹划情势
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .