Spring Security Access拒绝记录缺少角色的日志

是否存在开箱即用的解决方案,拒绝登录
Spring安全性.

我想要的是基本上显示用户在获得访问被拒绝的异常时缺少的角色.

如果没有,并且我必须沿着拥有自己的accesssDeniedHandler的路径,我如何访问在该控制器上配置的角色,该角色抛出访问被拒绝的异常.

谢谢!

最佳答案 不,没有开箱即用的“缺少角色”的概念.

访问被拒绝事件是通过Spring的标准事件机制发布的,您可以使用ApplicationListener来订阅这些事件,但是没有假设访问决策完全基于Spring Security中的角色.要实现这一点,您需要自定义AccessDecisionManager实现,以记录有关它如何达到特定决策的信息.

在这种情况下,AccessDeniedHandler并不真正相关.

点赞