1

我在 Applet 中遇到了一些问题。这是该问题的链接。

java.security.AccessControlException:访问被拒绝(“java.security.SecurityPermission”“authProvider.SunMSCAPI”)

我刚刚添加System.setSecurityManager(null)而且我的小程序工作正常。我想知道,设置安全管理器为空会有什么影响?它会使数据不安全吗?或者是其他东西。

4

2 回答 2

4

既然你在谈论小程序

来自安全管理器的文档

通常,Web 小程序使用浏览器或 Java Web Start 插件提供的安全管理器运行。其他类型的应用程序通常在没有安全管理器的情况下运行,除非应用程序本身定义了一个。如果不存在安全管理器,则应用程序没有安全策略并且可以不受限制地运行。

因此,通过传递 null,您将禁用运行时环境的安全性。

例如System.exit以退出状态终止 Java 虚拟机,调用 SecurityManager.checkExit 以确保当前线程有权关闭应用程序。

如果您禁用文件权限等安全管理器,还会发生更多示例。

请在制作之前阅读完整的文档null,因此您欢迎您的应用程序以及最终用户中的安全问题。

于 2013-10-21T06:21:51.223 回答
0

清除小程序中的安全管理器是一个非常糟糕的主意。如果小程序具有该权限,那么它无论如何都可以作为本地用户执行任何操作。但是,一旦您清除了该进程中运行的所有代码(包括来自其他站点的未签名小程序)的安全管理器。任何清除安全管理器的小程序(使用有效证书签名)都应列入黑名单。

于 2013-10-21T12:21:26.517 回答