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')