Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 セキュリティ管理機能編


6.2.1 DDの設定によるWebコンテナのユーザ認証の機能

ここでは,DD(WEB-INF/web.xml)の設定によるWebコンテナのユーザ認証で実現できる機能について説明します。

〈この項の構成〉

(1) ユーザ情報の管理

Webコンテナでは,各ユーザのユーザ名,パスワード,および所属するロールを,J2EEサーバ付属のユーザ管理機能によって定義し,保持・管理します。

(2) コンテナセキュリティとアクセス権管理

Webコンテナでは,Webクライアントから特定のURLへのアクセスを制限できます。

特定のURLへのアクセスを制限するには,DD(WEB-INF/web.xml)に次に示す情報を記述します。

Webクライアントが認証に失敗した場合,またはユーザがアクセスするのに必要なロールを持たない場合には,アクセス制限対象となっているURLパターンへのアクセスはエラーになります。なお,認証に成功したクライアントは,セッションの有効期間内には再度認証の対象になることはありません。

セキュリティ定義情報,および認証方式を定義する方法は,Servlet API 2.3で規定されているDD(WEB-INF/web.xml)の仕様に従います。

なお,Webコンテナでの認証方式は,Basic認証とForm認証とがあります。これらは,J2EEアプリケーションに含まれるDD(WEB-INF/web.xml)に<login-config>タグを追加することで定義できます。J2EEアプリケーションの設定については,「6.2.2 DDでの定義」を参照してください。

注意事項
WebサーバにHTTP ServerまたはMicrosoft IISを使用する場合

WebコンテナによるBasic認証を正しく動作させるには,Webサーバ認証機能を解除しておく必要があります。

詳細については,「6.2.4 認証機能を併用するときの注意」を参照してください。

web.xmlでBasic認証を設定する場合

<realm-name>タグでレルム名を指定してください。省略した場合,レルム名として「Authentication required」が使用されます。なお,<realm-name>タグに空文字列,または空白だけを指定した場合も<realm-name>タグを省略した場合と同じ扱いになります。

(3) プログラムセキュリティ

DD(WEB-INF/web.xml)によってBasic,またはForm認証によるアクセス制限が設定されたサーブレット,JSPでは,HttpServletRequestの次に示すAPIを使用することで,ログインしたユーザのユーザ名やロール名などに応じて処理を切り替えるなど,プログラムレベルでのより細かいセキュリティ処理を行えます。

これらのAPIの詳細については,Java Servlet Specification v2.3を参照してください。