Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java安全管理器查找请求访问的用户_Java_Securitymanager - Fatal编程技术网

Java安全管理器查找请求访问的用户

Java安全管理器查找请求访问的用户,java,securitymanager,Java,Securitymanager,我自己编写了一个安全管理器,我的问题是,我在程序中运行来自其他用户的代码,我必须确保没有滥用 所以我的问题是:我如何才能在安全管理器的方法中找到答案,安全管理器在checkXXXXX()方法中请求访问权 谢谢不,在一般情况下,没有简单的方法可以做到这一点 (如果您是在web容器中运行的,那么这可能会提供一种获取当前请求的身份验证详细信息的方法。但这听起来不像您的用例。) 我想有多种方法可以尝试实现这一点,尽管您需要小心防止伪造用户身份的代码。一个想法是将每个用户标识与不同的线程组相关联,并让您的

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

所以我的问题是:我如何才能在安全管理器的方法中找到答案,安全管理器在checkXXXXX()方法中请求访问权


谢谢

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

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


我想有多种方法可以尝试实现这一点,尽管您需要小心防止伪造用户身份的代码。一个想法是将每个用户标识与不同的线程组相关联,并让您的安全管理器阻止在其他线程组中创建线程;阅读javadoc for,注意它对线程组检查的说明。

感谢您的回答。我已经用一个安全密钥阻止了在其他线程中创建线程,您必须注册自己的线程,您可以创建一个。但是在一个例子中,你帮了我很多,因为我现在知道安全管理器是由线程自己调用的,因此我可以找到线程组和线程ID。因此,我可以做同样的事情,用安全密钥注册线程!非常感谢。