`

关于java.security.AccessController.doPrivileged

    博客分类:
  • java
阅读更多
关于java.security.AccessController.doPrivileged


lineSeparator =	(String) java.security.AccessController.doPrivileged(
               new sun.security.action.GetPropertyAction("line.separator"));
    }


比较好奇和System.getProperty有什么区别呢?

下面是stackoverflow上的回答http://stackoverflow.com/questions/4954924/getpropertyaction-vs-system-getproperty-in-obtaining-system-variables

感觉也没有完全说清楚。

关于System.getProperty 看源码得到:
public static String getProperty(String key) {
	checkKey(key);
	SecurityManager sm = getSecurityManager();
        if (sm != null) {
	    sm.checkPropertyAccess(key);
	}

	return props.getProperty(key);

    }


再得到set的方法:
  public static void setProperties(Properties props) {
	SecurityManager sm = getSecurityManager();
        if (sm != null) {
	    sm.checkPropertiesAccess();
	}
        if (props == null) {
            props = new Properties();
            initProperties(props);
        }
	System.props = props;
    }


可以看到时需要initProperties
private static native Properties initProperties(Properties props);


然后就终结了 这个native 的方法是怎么做的呢 不知道。。。

而且doPrivileged也还是native 的方法 关于这两个native 的方法的区别真的就是不知道了。

0
0
分享到:
评论
2 楼 ite_kevin 2016-06-22  
netwelfare 写道
AccessController类是jdk底层控制权限的一个类,可以看这篇文章,介绍的挺详细的:AccessController类详细介绍

什么都没有  
1 楼 netwelfare 2015-06-06  
AccessController类是jdk底层控制权限的一个类,可以看这篇文章,介绍的挺详细的:AccessController类详细介绍

相关推荐

    aop面向切面需要的jar包

    at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc....

    jaxen.jar和dom4j.jar

    at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$...

    swing-worker-1.1.jar

    at java.security.AccessController.doPrivileged(NativeMethod) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229) at java....

    AXMLPrinter2、baksmali、smali、dex2jar

    at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$...

    java权限设计

    在Java中,可以通过`java.security.PrivilegedAction`和`java.security.AccessController.doPrivileged()`方法实现。 10. **Java标准权限(Standard Permissions)**:Java提供了一些预定义的权限,如`All...

    hadoop-2.6.0-hadoop.dll-winutils.exe

     at java.security.AccessController.doPrivileged(Native Method)  at javax.security.auth.Subject.doAs(Subject.java:415)  at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation....

    【2018hit计算机学院系统安全java】实验三:完整性访问控制系统设计与实现代码

    在Java中,`java.security.AccessController`和`java.security.Permission`类用于实现这一功能,它们定义了权限对象并检查是否具备执行特定操作的权限。 3. **访问控制列表(ACL)**:这是一个记录了哪些用户或组...

    android反编译dex2jar

    at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc....

    Java2平台安全技术-结构,API设计和实现

    4. java.security.AccessController:在需要进行安全性检查的地方,会调用AccessController的doPrivileged方法,这会暂时放松当前代码的信任级别。 三、实现机制 1. 沙箱模型:Java的沙箱模型限制了未经签名的代码...

    java权限实现实例

    6. **代码实现**:在实际代码中,使用`AccessController.doPrivileged()`方法来执行需要特定权限的代码块。这样,即使在没有权限的环境中,也可以在受保护的上下文中执行这些操作。 在文档"权限实现实例.doc"中,...

    Android用JavaMail发送邮件

    AccessController.doPrivileged(new java.security.PrivilegedAction() { public Void run() { put("SSLContext.TLS", "org.apache.harmony.xnet.provider.jsse.SSLContextImpl"); put("Alg.Alias.SSLContext....

    jdk1.8.0_181(64位).7z

    新的变体AccessController.doPrivileged使代码能够断言其特权的子集,而不会阻止堆栈的完整遍历来检查其他权限 更强大的基于密码加密的算法 JSSE服务器中的SSL / TLS服务器名称指示(SNI)扩展支持 支持AEAD算法...

    struts2驱动包

    at java.security.AccessController.doPrivileged(Native Method) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) at...

    activiti-sandbox-script:如何使用沙盒脚本引擎运行Activiti

    该实现重写受保护的方法my.seoj.activiti.sandbox.script.Main.PrivilegedScriptingEngines.evaluate(String,String,Bindings) 重写的方法应该将super.evaluate()包装在AccessController.doPrivileged()中。...

    BufferedWriter 介绍_动力节点Java学院整理

    在 BufferedWriter 中,lineSeparator 变量用于存储行分隔符,它的值是通过 java.security.AccessController.doPrivileged 方法获取的。 BufferedWriter 的使用场景包括日志记录、文件写入、网络传输等场景。在这些...

    security-study:权限验证学习

    总结一下,"security-study"项目着重于Java环境下的权限验证技术,包括但不限于Java内置的安全模型、Policy配置、AccessController的使用、Spring Security的集成以及Servlet容器的安全配置。通过深入学习这些知识点...

    permissiondemo2.zip

    8. **权限动态授予**:在运行时,可以使用AccessController类的doPrivileged方法来临时提升代码的权限,但这种方式需要谨慎使用,因为可能导致安全性漏洞。 9. **Java Security API**:Java提供了一整套的Security ...

    Halt:应用程序访问和安全库

    例如,`java.security`包就是Java安全框架的核心,其中包含了如`AccessController`、`Policy`、`Principal`等关键组件。 1. **安全管理器(SecurityManager)**:这是Java安全模型的中心组件,它可以控制程序的某些...

    Java 安全模型,你了解了吗

    在Java的安全实现中,`java.security`包包含了一系列与安全相关的类和接口,如`AccessController`。`AccessController`是访问控制框架的核心,它在调用栈中检查权限,如果调用链中的任何部分缺乏所需权限,就会抛出`...

Global site tag (gtag.js) - Google Analytics