認証フィルターについて

PALポータルは J2EE のフォーム認証をサポートしていますが、様々な認証環境にサポートするため、認証フィルター群を提供しています。 認証フィルターを利用することで、リクエストパラメータやクッキーなどからユーザー名とパスワードを取得して、認証処理を実行できます。 たとえば、他のシステムで認証後、そのシステムでクッキーに認証するための情報を入れて、PALポータルにアクセスすることで、ログイン画面を表示することなしにログインすることができます。

認証フィルターの種類

PALポータルでは、次の認証フィルターを提供しています。

  • jp.sf.pal.portal.filter.CookieAuthFilter: クッキーからユーザー名とパスワードを取得する。
  • jp.sf.pal.portal.filter.RequestHeaderAuthFilter: リクエストヘッダーからユーザー名とパスワードを取得する。
  • jp.sf.pal.portal.filter.RequestParameterAuthFilter: リクエストパラメータからからユーザー名とパスワードを取得する。

初期値

web.xml で filter 要素内の init-param 要素で値を指定できます。

username.key

  • ユーザー名を取得するためのキー
  • デフォルト値: org.apache.jetspeed.login.username

password.key

  • パスワードを取得するためのキー
  • デフォルト値: org.apache.jetspeed.login.password

skip.password.check

  • パスワード確認をスキップするかどうか。
  • デフォルト値: false

設定方法

web.xml に以下のように記述します。

...
  <filter>
    <filter-name>AuthFilter</filter-name>
    <filter-class>jp.sf.pal.portal.filter.RequestHeaderAuthFilter</filter-class>
    <init-param>
      <param-name>username.key</param-name>
      <param-value>USERNAME</param-value>
    </init-param>
    <init-param>
      <param-name>password.key</param-name>
      <param-value>PASSWORD</param-value>
    </init-param>
    <init-param>
      <param-name>skip.password.check</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
...
  <filter-mapping>
    <filter-name>AuthFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
...

設定を保存し、ポータルを再起動後に有効になります。