`

java安全管理器-SecurityManager

 
阅读更多

当java应用程序启动时,它还没有安全管理器,应用程序可以通过将一个指向java.lang.SecurityManager或是其子类的实例传给 System.setSecurityManager()来安装一个安全管理器,安全管理器的作用嘛,谁用谁知道,留下个例子代码吧,见代码....

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class MySecurityManager extends SecurityManager {

	@Override
	public void checkRead(String file) {
		if (file.endsWith("Security.txt"))
			throw new SecurityException("这个你是没有权限读滴...");
	}

	/**
	 * 
	 * @param args
	 * @return void
	 */
	public static void main(String[] args) {
		// 设置安全管理器
		System.setSecurityManager(new MySecurityManager());
		try {
			// new FileOutputStream("Security.txt");
			FileInputStream fis = new FileInputStream("Security.txt");
			System.out.println(fis.read());
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}
 

输出:

 

Exception in thread "main" java.lang.SecurityException: 这个你是没有权限读滴...
    at com.jvm.threee.securitymanager.MySecurityManager.checkRead(MySecurityManager.java:14)
    at java.io.FileInputStream.<init>(FileInputStream.java:100)
    at java.io.FileInputStream.<init>(FileInputStream.java:66)
    at com.jvm.threee.securitymanager.MySecurityManager.main(MySecurityManager.java:27)



可以程序显示的安装安全管理器,同样可以让它自动安装默认的安全管理器(给jvm加上-Djava.security.manager就可以了)
当然还有安全策略文件,这个就不举例了,参考http://blog.csdn.net/neusoftware_20063500/article/details/4200458

分享到:
评论

相关推荐

    Java 2平台安全技术-结构,API设计和实现(pdf)

    Java安全API包括`java.security`和`javax.security`包,提供了安全管理器、权限类、密钥和证书管理等功能。例如,`SecurityManager`类用于实施全局安全策略,`Permission`类定义了可授予或拒绝的权限类型。 6. **...

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

    3.10.1 使用安全管理器的实例 51 3.10.2 JDK1.2中没有改变的API 52 3.10.3 JDK1.2中禁用的方法 53 3.11 java.security.AccessController 56 3.11.1 AceessController的界面设计 57 3.11.2 基础访问控制算法 57 ...

    dappFinance#Note#【Java多线程】安全管理器SecurityManager1

    创建安全管理器利用安全管理器public static void main(String args[]){方法调用此方法时,返回所有新创建的线程实例化后所在的线

    Java安全权限控制机制研究综述.pdf

    Java安全管理器(SecurityManager)是Java中的一种安全机制,允许应用程序实现安全策略。它包含了很多名称以单词check开头的方法,Java库中的各种方法在执行某些潜在的敏感操作前可以调用这些方法。安全管理器通过抛...

    Java-API-1.6.rar_java 1.6api_java api 1.6 115_java doc_java-a_ja

    12. **安全管理**: Java的权限模型在1.6中进一步完善,包括了Policy类、SecurityManager类和Permission类,用于控制代码的执行权限。 这个“Java API 1.6中文手册.chm”文件提供了所有这些知识点的详细文档,便于...

    SecurityManager使用

    在Java编程语言中,`SecurityManager`(安全管理器)是一个重要的安全组件,它允许开发者对应用程序的安全性进行精细控制。`SecurityManager`是Java虚拟机(JVM)的一部分,用于实施一套安全策略,以防止代码执行...

    java_2平台安全技术-结构,api设计和实现

    9. **反射和安全管理**: - 反射允许代码在运行时动态地访问类和方法,但这也可能带来安全风险。安全经理对此进行了限制,需要进行相应的权限检查。 10. **JNI和本地方法安全性**: - Java Native Interface(JNI...

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

    3.10.1 使用安全管理器的实例 51 3.10.2 JDK1.2中没有改变的API 52 3.10.3 JDK1.2中禁用的方法 53 3.11 java.security.AccessController 56 3.11.1 AceessController的界面设计 57 3.11.2 基础访问控制算法 57 ...

    Java 安全编程 .pdf

    - **API级安全**: 包括`SecurityManager`、`ClassLoader`、`CertPath`以及`JAAS`等组件,为开发者提供了灵活的安全管理选项。 - **加密支持**: 通过`JCA`、`JCE`和`JSSE`等库,Java支持广泛的加密算法和协议。 ####...

    java安全性编程指南,JAVA安全性编程已成为当前JAVA编程者的主要课题,本资料是解决此类问题的权威资料。

    权限的管理通常在安全管理器(SecurityManager)中进行配置。 3. **类加载器机制**:Java的类加载器设计允许隔离不同来源的代码,有助于防止恶意代码篡改或干扰其他合法代码的执行。 4. **签名与代码认证**:使用...

    Java安全性编程源代码

    6. **ch7** - 可能探讨“安全管理器”和自定义安全策略。这部分内容可能包括如何实现和配置`java.lang.SecurityManager`,以及如何编写自定义的安全策略文件来细化权限控制。 7. **ch6** - 可能是关于“沙箱之外:...

    Java安全性编程实例

    此外,权限(Permissions)和安全管理者(SecurityManager)一起工作,对敏感操作进行控制,如文件读写、网络访问等。 Java还提供了一种名为“异常”的机制,用于处理程序中的错误和异常情况。在安全编程中,异常...

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

    3. java.lang.SecurityManager:这是安全管理器的实现类,通过设置System属性`java.security.manager`,可以启用安全管理器。 4. java.security.AccessController:在需要进行安全性检查的地方,会调用Access...

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

    此外,Java2平台还支持安全管理扩展(Security Manager Extensions, SMEs),允许开发人员添加自定义的安全功能。这可以通过实现特定的接口或继承已有的安全类来完成。 总而言之,Java2平台安全技术涉及到广泛的...

    java安全性编程教案(java)

    开发者可以通过定制安全管理器和安全策略文件来细化安全控制。安全策略文件定义了哪些代码可以从哪些来源获取权限,以及这些代码可以执行哪些操作。 五、异常处理与权限检查 在进行敏感操作时,Java会抛出`...

    java安全性编程指南(pdg)

    9. **安全管理器**:通过自定义安全管理器,可以进一步定制Java应用程序的安全策略。理解如何设置和使用`java.lang.SecurityManager`是控制应用程序行为的关键。 10. **Java标准安全API**:熟悉`java.security`包中...

    Java2平台安全技术

    权限对象代表特定的操作,保护域包含了拥有这些权限的代码,而安全管理器是执行权限检查的组件。 API设计在Java2平台安全技术中扮演着关键角色。Java提供了丰富的安全相关的API,如java.security包下的Permission、...

    Java安全性编程示例(含源码)

    4. **权限与安全管理器**:Java的权限模型允许通过安全管理器限制代码执行特定操作,如读写文件、网络连接等。开发者需要理解和使用`java.security.Permission`和`java.lang.SecurityManager`来实施细粒度的控制。 ...

Global site tag (gtag.js) - Google Analytics