【发布时间】:2014-07-09 15:02:03
【问题描述】:
我在我的 Web 应用程序上安装并运行了 PicketLink,但我似乎无法按组或角色保护文件夹等资源。 PicketLink AuthenticationFilter (org.picketlink.authentication.web.AuthenticationFilter) 不提供任何方式来说明哪个 url 模式属于哪个组或角色。我将如何保护 admin 目录,以便只有 admin 组中的用户可以访问它?现在,如果您已登录,则可以访问所有内容。
web.xml 文件:
<filter>
<filter-name>PicketLinkAuthenticationFilter</filter-name>
<filter-class>org.picketlink.authentication.web.AuthenticationFilter</filter-class>
<init-param>
<param-name>authType</param-name>
<param-value>FORM</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>PicketLinkAuthenticationFilter</filter-name>
<url-pattern>/admin/*</url-pattern>
<url-pattern>/standarduser/*</url-pattern>
</filter-mapping>
我尝试创建自己的自定义 AuthenticationFilter,但我做不到。我真的希望我能在春天做一些类似的事情。像这样或使用诸如 hasRole 或 isMember 之类的 IDM 函数:
<intercept-url pattern="/admin/*" access="ADMIN" />
<intercept-url pattern="/member/*" access="ADMIN,STANDARDUSER" />
【问题讨论】:
-
我认为这不可能。因此,我制作了自己的自定义过滤器,以在纠察链接过滤器之后检查组和角色。
标签: java authentication authorization picketlink