grails spring security ui登录奇怪的重定向有时

Mon*_*ist 3 grails login spring-security

美好的一天,

我正在使用Grails中的应用程序,我正在尝试使用spring security core和ui.具体来说,我使用s2ui-override来覆盖用户,角色,身份验证和布局.

一般来说它似乎有效.我现在遇到了一个非常奇怪的问题,我似乎无法解决它.

当我点击主页上的登录链接时,我会按预期发送到s2ui登录页面.填写已知凭据并单击登录按钮后,我收到"抱歉,您无权查看此页面"消息; 同时,Firefox地址面板中显示的URL是

http://localhost:8080/galaxy/plugins/jquery-ui-1.10.3/jquery-ui/themes/ui-lightness/jquery-ui-1.10.3.custom.css
Run Code Online (Sandbox Code Playgroud)

我之前有过这种行为,但是(我以为我已经)通过在Config.groovy中将以下两行添加到grails.plugin.springsecurity.controllerAnnotations.staticRules中来纠正它

'/login/**':                      ['permitAll'],
'/logout/**':                     ['permitAll']
Run Code Online (Sandbox Code Playgroud)

这个奇怪的部分是,如果我在浏览器中单击回来,我将返回到s2ui登录面板(字段为空); 如果我再次填写(同一用户)并单击登录按钮,这次我按预期重定向到我的主页.

就我所见,这种行为是一致的,也就是说,它每次都是第二次工作.

小智 5

我很确定这是因为重定向到的资产被Spring Security插件阻止,提示登录并返回请求资产.

仔细检查,grails.plugin.springsecurity.controllerAnnotations.staticRules,包含一个匹配正在传递/请求的资产的正确条目.

Config.groovy:
grails.plugin.springsecurity.controllerAnnotations.staticRules =[ '/plugins/**':['permitAll']

造成这种情况的根本原因可能是Spring Security UI插件没有(现在?)使用现在默认的Asset Pipeline.