我将Spring Security用于与控制器匹配的URL的基于角色的访问控制。
我想创建一个系统,在其中检查某些URL的用户权限。我已经创建了一个自定义访问决策投票器,并在自定义访问决策管理器中使用了它。但是到目前为止,我还无法获得要检查的实际URL。
访问决策投票者是否有可能获取正在投票的实际URL?我可以使用表决接口方法中指定的对象o参数吗?
谢谢
最佳答案
我想我在this answer中回答了您的问题。基本上实现AccessDecisionVoter<FilterInvocation>
,重写supports(Class<?> clazz)
以仅对FilterInvocation
对象返回true,并且在表决方法的第二个参数中,您将具有FilterInvocation
对象和getRequestUrl()
方法,这正是您要寻找的。