Spring 安全 CAS 插件和不重定向到被拒绝的操作
Spring Security CAS Plugin and Not Redirecting to denied Action
我使用 Geb 编写了一个功能测试来执行拒绝访问的场景。问题是由于某种原因 LoginController.denied
没有被调用。相反,我会转到成功控制器,但会在 GSP 中抛出错误,因为存在条件标记。
如果我分析测试,JSESSIONID 参数会附加到 URL,如下所示:https://<host>/;JSESSIONID=XXXXXXXX
如果我在断点处删除 JSESSIONID 参数,它会正常工作。
这是UrlMapping的问题还是插件的问题?我似乎无法弄清楚问题所在。
更新
我认为这是我的 UrlMapping "/"(action: 'index', controller: 'dashboard')
我将其更改为 "/**"(action: 'index', controller: 'dashboard')
并且 ;XXXX 不再是问题,但我需要回归。
肯定是 URL 映射,但是 "/**
导致了一些不需要的 URL 链接。
听取了 another thread 的建议并使用了:
"/$path**"(action: 'index', controller: 'dashboard')
我使用 Geb 编写了一个功能测试来执行拒绝访问的场景。问题是由于某种原因 LoginController.denied
没有被调用。相反,我会转到成功控制器,但会在 GSP 中抛出错误,因为存在条件标记。
如果我分析测试,JSESSIONID 参数会附加到 URL,如下所示:https://<host>/;JSESSIONID=XXXXXXXX
如果我在断点处删除 JSESSIONID 参数,它会正常工作。
这是UrlMapping的问题还是插件的问题?我似乎无法弄清楚问题所在。
更新
我认为这是我的 UrlMapping "/"(action: 'index', controller: 'dashboard')
我将其更改为 "/**"(action: 'index', controller: 'dashboard')
并且 ;XXXX 不再是问题,但我需要回归。
肯定是 URL 映射,但是 "/**
导致了一些不需要的 URL 链接。
听取了 another thread 的建议并使用了:
"/$path**"(action: 'index', controller: 'dashboard')