问题标签 [securitymanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何自动将数据复制到新的 RMI 线程?
我正在调整一个小的 rmi 客户端-服务器应用程序。我写了几件事:
没什么特别的,但是...我已经将手放在一个新的 RMISecurityManager 中,它调用 JNI 方法并检查单独用户的权限:
在服务器类中,我正在这样做:
这个类似乎在服务器的主线程中工作。现在的问题是当我尝试连接到该服务器类并查找注册表时。我得到了那个例外:
恕我直言,这意味着(隐式)创建了一个线程并将 NativeRMISecurityManager 作为其默认 SecurityManager。
有人对此有什么建议吗?
java - 如何为此线程而不是系统设置 SecurityManager?
我有一个在其所有线程中运行基本 RMISecurityManager 的程序。但我想对多个线程进行更多控制,并专门为这些线程设置另一个 SecurityManager。
我怎样才能做到这一点 ?...如果这是可能的!?
提前谢谢你。
编辑:我找到了我的解决方案。有关更多详细信息,请参见此处。
c# - SecurityManager.IsGranted() 行为
任何人都可以解释以下 c# 行为吗?我编写了一个小型控制台应用程序只是为了了解 CAS,但我似乎无法理解为什么以下代码行会像它们那样工作:
两个 SecurityManager.IsGranted() 调用的输出都是“真”。
如果我再添加以下几行:
第一个需求调用通过,但第二个(如预期的那样)导致 SecurityException。
为什么 SecurityManager.IsGranted() 调用不为“roleX”权限返回 false?
java - 为当前线程禁用 Java 反射
我需要调用一些半可信的 Java 代码,并希望在该代码执行期间禁用使用反射的能力。
这可以用 SecurityManager 来完成吗?如果可以,怎么做?
澄清/上下文:这是关于限制可以从 JavaScript/Rhino 调用的包的另一个问题的后续。接受的答案引用了一篇关于如何做到这一点的博客条目,它需要两个步骤,第一个步骤使用 Rhino API (ClassShutter),第二个步骤关闭反射和 Class.forName()。我在想我可以使用 SecurityManager 更干净地完成第二步(学习 SecurityManager,正如已经指出的那样,这是一个复杂的野兽,一路走来)。
总而言之,我希望(从代码,而不是设置文件)关闭 Class.forName() 以及对整个反射包的任何访问。
java - 如何从 Applet 中模拟模式对话框?
在 setVisible(true) 上,我调用以下代码来启动模式对话框:
这在大多数浏览器中都非常有效。但是,在 Windows 的 Opera 和 Safari 中,我遇到了以下严重的异常:
是否有在这些浏览器中生成假模态对话框的解决方法?
java - 访问 sun.awt 包中的非公共类 [特别是:FetcherInfo]
问题:
我的应用程序存在一些性能问题 - 瓶颈是sun.awt.image.ImageFetcher.run
,我无法从探查器获得任何(更多)有意义的信息。所以我认为看看 ImageFetcher 正在做的工作会很好。
我无法进入FetcherInfo
拥有所有ImageFetcher
工作的班级。要获得FetcherInfo
实例,我必须调用FetcherInfo.getFetcherInfo()
.
我在包中创建了类sun.awt.image
(只是在我的项目中,我没有修改 rt.jar)。
为了让FetcherInfo
我使用:
我得到了例外:Exception in thread "IMAGE-FETCHER-WATCHER" java.lang.IllegalAccessError: tried to access class sun.awt.image.FetcherInfo from class sun.awt.image.FetcherDebug
堆栈跟踪指向:
由以下人员引发了相同的异常:
所以任何人都有任何想法如何:
- 获取 ImageFetcher 实例
- 找出正在加载的图像
解决方案
问题是我已经将我的类放入sun.java.awt
包中以访问包受保护的成员,而没有将其放入rt.jar
,并且在调用时抛出异常ImageFetcher.class
。
java - 将 Tomcat 与 Java SecurityManager 一起使用?
我正在编写一个应该在 Ubuntu 上的 Tomcat 上运行的 Web 应用程序。在 Ubuntu 上,Tomcat 默认配置为与 Java SecurityManager 一起运行。除了我自己的 Web 应用程序之外,只会有一些与我自己相关的知名第三方 Web 应用程序,例如 BIRT 报告引擎。
如果其中一个 Web 应用程序出现故障或受到威胁,它可能会在没有伤害的情况下关闭所有其他应用程序,因为它们都属于同一个。我不会发生的是,受感染的网络应用程序会损害系统本身,例如调用 rm -r /
我是否需要使用 java 安全管理器来实现这一点?还是只需要保护一个 Web 应用程序免受另一个 Web 应用程序的影响?我真的很想阻止为我打算使用的所有 3rd 方 Web 应用程序创建 .policy 文件。
java - 如何配置 Java SecurityManager 以允许从给定文件中读取所有属性
我目前正在尝试为在 Tomcat 上运行的 Nexus 存储库管理器创建一个策略文件。
Nexus 尝试读取文件WEB-INF/plexus.properties
(我已经授予了权限),并且似乎尝试从那里读取所有属性,但由于缺少以下权限而失败:
如何配置 SecurityManager 以允许从该特定文件读取所有属性?如果我将其添加到策略文件中:
我将授予读取和更改所有属性的权限,甚至是系统属性,不是吗?
java - 如何使用 Resin 中的 SecurityManager 策略文件授予 JSP 权限?
我们正在尝试将 SecurityManager 与 Resin 3.1.9 一起使用并遇到以下问题: CodeSource.getLocation() 为已编译的 JSP 返回 null。
这意味着我们不能在策略文件的授权子句中使用特定的代码库,例如:
相反,我们必须使用通用授权子句:
有没有办法让 JSP 有合适的 CodeSource?我们想限制第三方库的权限,但给我们自己的 JSP 权限。如果我们无法在策略文件中指定 JSP,我们可能无法做到这一点,或者您怎么看?
编辑:我们按原样部署 JSP,所以不要重新编译它们。这可能与问题有关。
java - 我应该在 Java Web 应用程序中使用安全管理器吗?
使用运行应用程序服务器进程的用户的权限来保护 Java Web 应用程序是否足够,或者将 SecurityManager 与合适的策略文件一起使用是否合理?
我曾经使用前者而不是后者,但有些客户希望我们也使用 SecurityManager,它会显式地授予每个第三方组件权限,以确保没有任何恶意代码潜伏在那里。
我见过一些 Servlet 容器,比如Resin,建议不要使用 SecurityManager 来减慢速度。有什么想法吗?