Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.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 Spring安全性将Bean用于访问配置属性_Java_Spring_Spring Security - Fatal编程技术网

Java Spring安全性将Bean用于访问配置属性

Java Spring安全性将Bean用于访问配置属性,java,spring,spring-security,Java,Spring,Spring Security,我想使用具有spring安全性的Springbean来确定是否应该显示页面。下面是我想做的psudocode示例: <security:http use-expressions="true"> <security:intercept-url pattern="/devlogin.html" access="someBean.isNotProduction()" /> </security:http> 我知道上面的方法不起作用,但希望它能作为我正在

我想使用具有spring安全性的Springbean来确定是否应该显示页面。下面是我想做的psudocode示例:

<security:http use-expressions="true">
    <security:intercept-url pattern="/devlogin.html" access="someBean.isNotProduction()" />
</security:http>

我知道上面的方法不起作用,但希望它能作为我正在寻找的一个例子。我不想只告诉Spring“允许访问某个角色”,而是“如果您在测试系统上运行,则允许访问”。我是运气好并且存在这样的解决方案,还是这不是我应该从SpringSecurity中得到的?(也许我甚至会听到有人说,拥有这样一个页面是一个巨大的安全问题,我对此持批评态度。)

在生产中拥有特定于开发(或测试)的代码/页面在我的书中始终是一个禁忌,但正如我所说的,这就是我的书:)

access属性已被解析,并且可能包含。您发布的示例代码几乎是正确的,只需在它前面加上@就可以了

security:http use-expressions="true">
  <security:intercept-url pattern="/devlogin.html" access="@someBean.isNotProduction()" />
</security:http>
security:http使用expressions=“true”>
这应该适用于Spring安全版本3.0及更高版本

可能,尽管这是为了方法安全。

这会有所帮助