Java安全经理找出谁要求访问

时间:2011-08-13 11:03:49

标签: java securitymanager

我写了一个自己的安全管理器,我的问题是,我在我的程序中运行其他用户的代码,我必须确保没有滥用。

所以我的问题是:我如何能够找到安全管理器的方法,谁在checkXXXXX()方法中要求访问。

由于

1 个答案:

答案 0 :(得分:2)

在一般情况下,没有简单的方法可以做到这一点。

(如果您在Web容器中运行,可能会提供一种方法来获取当前请求的身份验证详细信息。但这听起来不像您的用例。)

我想有很多方法可以尝试实现这一点,尽管你需要小心防范欺骗用户身份的代码。一种想法是将每个用户身份与不同的ThreadGroup相关联,并让您的安全管理器阻止在其他线程组中创建线程;阅读Thread(ThreadGroup group, Runnable target, String name)的javadoc,注意它对线程组检查的说法。