你能以编程方式配置Spring-Security吗?

Jac*_*oen 2 java spring-security

我正在使用现有应用程序配置Spring-Security,仅用于基本安全性(即用户可以根据其角色查看哪些页面).问题出现了,想知道我们是否可以设置java中每个页面所需的角色而不是ApplicationContext.xml.

我们的想法是将它们存储在我们数据库的表中,这样我们就可以通过重新部署轻松地更改它们.这可能吗?怎么样?

Ste*_*n C 5

是的,您可以通过编程方式配置Spring-Security.但我认为这不是你想要/需要做的.

问题出现了,想知道我们是否可以设置java中每个页面所需的角色而不是ApplicationContext.xml.

您可以实现自己的AccessDecisionManager类来查询数据库以获取每个资源/页面的规则(或其他).这在SpringSecurity手册的第IV节中有所描述.

或者,您可以在MVC控制器中嵌入自己的自定义访问控制逻辑.使用SpringSecurityContext获取请求的Authorization对象,捞出身份和/或主管部门,并实现使无论你想要的决定.