1

Web アプリケーションに PicketLink をインストールして実行していますが、フォルダなどのリソースをグループまたはロールで保護できないようです。PicketLink AuthenticationFilter (org.picketlink.authentication.web.AuthenticationFilter) は、どの url-pattern がどのグループまたは役割に属しているかを示す方法を提供しません。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" />
4

2 に答える 2

2

前述のように、AuthenticationFilter は認証のみを目的としています。

PicketLink チームは、完全なサーブレット セキュリティ サポートに取り組んでおり、アプリケーションの URI に対してロールおよびグループ ベースの承認を提供します。

とりあえず、独自のフィルターを作成することをお勧めします。

于 2014-07-31T23:23:24.163 に答える