- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
带有 Spring 安全性的 Grails 2.4 2 3RC
我的 Config.groovy 上有这个
grails.plugin.springsecurity.controllerAnnotations.staticRules = [
'/': ['permitAll'],
'/index': ['permitAll'],
'/index.gsp': ['permitAll'],
'/**/js/**': ['permitAll'],
'/**/css/**': ['permitAll'],
'/**/images/**': ['permitAll'],
'/**/favicon.ico': ['permitAll']
]
grails.plugin.springsecurity.successHandler.defaultTargetUrl = "/home/index"
但这让我重定向到
assets/favicon.ico
我的 HomeController 就是这样
@Secured(['ROLE_ADMIN', 'ROLE_USER'])
def index() {
if (SpringSecurityUtils.ifAllGranted('ROLE_ADMIN')) {
redirect controller: 'admin', action: 'index'
return
}
}
然后我在我的 UrlMapping 中修改它:
"/"(controller: 'home', action:'index')
为什么我总是发送错误的路径?
更新:使用另一台计算机,它将我重定向到/asset/grails_logo.png
最佳答案
听起来您遇到的问题与我将 Grails 1.x 应用程序升级到 2.4.2 时遇到的问题类似。当您尝试访问受 Spring Security 授权规则保护的 URL/页面并且您未登录时,它会将您重定向到登录页面。成功登录后,它会将您重定向到您请求的 URL。在这种情况下,您的 favicon.ico 和 grails_logo.png 受到授权规则的保护,我猜是无意的,因此它将您重定向到登录页面。成功登录后,它会将您重定向到 favicon.ico 或 grails_logo.png URL,因为这是在授权失败时请求的 protected URL。相应地更改您的授权规则(如果您在两个位置都有 Assets ,则可能需要同时执行这两个操作):
如果您使用的是 Asset Pipeline 插件,请使用:
'/assets/**': ['permitAll']
如果您正在使用类似资源 插件的东西,请使用:
'/css/**': ['permitAll'],
'/js/**': ['permitAll'],
'/images/**': ['permitAll']
关于spring - Grails spring security defaultTargetUrl 路径错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24112632/
带有 Spring 安全性的 Grails 2.4 2 3RC 我的 Config.groovy 上有这个 grails.plugin.springsecurity.controllerAnnotat
我是一名优秀的程序员,十分优秀!