Tro*_*ang 4 grails spring spring-security
我希望在访问我的应用程序之前对所有用户进行身份验证。以下是Config.groovy中的设置:
grails.plugin.springsecurity.controllerAnnotations.staticRules=[
"/**": ["ROLE_ADMIN"],
"/login/auth": ["permitAll"]
]
Run Code Online (Sandbox Code Playgroud)
我输入“ / login / auth”:[“ permitAll”]的原因是任何用户都可以登录并进行身份验证。但是,当我访问http:// localhost:8080 / myapp /时,它将重定向到http:// localhost:8080 / myapp / login / auth并抛出错误:页面未正确重定向。您能告诉我我在这里犯了什么错误吗?
首先,您必须向Spring Security说要使用哪种类型的映射。
grails.plugins.springsecurity.securityConfigType = 'InterceptUrlMap'
Run Code Online (Sandbox Code Playgroud)
第二个'permitAll'更改为'IS_AUTHENTICATED_ANONYMOUSLY'
And第三,如果Spring Security发现/**他在此行下没有看到另一个。因此,您的代码必须像这样:
grails.plugins.springsecurity.securityConfigType = SecurityConfigType.InterceptUrlMap
grails.plugins.springsecurity.interceptUrlMap = [
"/login/auth": ["permitAll"],
"/**": ["ROLE_ADMIN"]
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4686 次 |
| 最近记录: |