用例:HTTP上下文,我需要在给定某个会话属性状态的情况下限制对URL的访问
在自定义过滤器中扩展AccessControlFilter的is *方法是有效的,但它看起来很丑陋:我没有Realm。
AFAIK Realms用于LDAP,JDBC,INI后端等。每当我的"领域"实际上是网络绑定的,即HttpSession本身就是领域。
答案 0 :(得分:0)
你应该使用Realm绑定你的用户[Subject],即使你只是从你的过滤器中传入一些对象(即从会话或http头中提取的信息)
领域是将进行身份验证和授权的对象。一般来说,有两种类型的过滤器:构建传递到域的令牌的过滤器(例如,表单身份验证,基本身份验证等)和需要某种授权的过滤器(声明一个或多个角色和/或权限)< / p>