IBM HTTP Server for WebSphere Application Server, Version 6.1
             オペレーティング・システム: z/OS

             目次と検索結果のパーソナライズ化
このトピックは、z/OS オペレーティング・システムにのみ適用されます。

SAF ディレクティブ

これらの構成パラメーターは、IBM HTTP Server の System Authorization Facility (SAF) 機能を制御します。SAF ディレクティブを使用して、 IBM HTTP Server にユーザー認証を提供します。

AuthSAF ディレクティブ

AuthSAF ディレクティブは、オペレーティング・システムの SAF を使用して 基本認証が実行されるかどうかを設定します。

構文 AuthSaf on | off
デフォルト off
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
on または off

SAF 機能 (SAFRunAs、SAFRequire、または SAF 認証) のいずれかを使用するには、 AuthSAF ディレクティブを on に設定します。AuthSAF を on に設定する場合、 AuthType Basic も設定する必要があります。

valid-user またはユーザーのリストに対して、 Require ディレクティブを設定する必要があります。

例: valid-user
Require valid-user
valid-user の場合、 ID およびパスワードが SAF に登録済みで、OMVS セグメントを持つユーザーに属していない限り、 サーバーはアクセスを許可しません。
例: ユーザーのリスト
Require user SYSADM USER152 BABAR

ユーザーのリストの場合、ID が認証済みで、 その ID がリストされたユーザーの 1 つでない限り、サーバーはアクセスを許可しません。ユーザーによる ブラウザーでのユーザー名の入力方法に関係なく、httpd.conf ファイルではユーザー名を 大文字でコーディングする必要があります。

オプションで、グループの Require ディレクティブを追加することができます。

例: グループのリスト
Require group SYS1 WASUSER

この例では、グループ SYS1 および WASUSER は SAF で定義されている必要があり、 また、OMVS セグメントを持っている必要があります。ID およびパスワードが、 SAF およびリストされたグループの 1 つに登録済みのユーザーに属していない限り、アクセスは拒否されます。

AuthSAFAuthoritative ディレクティブ

AuthSAFAuthoritative ディレクティブは、許可および認証が下位レベルの モジュールに受け渡されるかどうかを設定します。

構文 AuthSAFAuthoritative on | off
デフォルト on
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
on または off

AuthSAFAuthoritative ディレクティブを off に設定すると、 提供されるユーザー ID と一致するユーザー ID またはルールがない場合は、 (modules.c ファイルで定義されているように) 認証と許可の両方が 下位レベルのモジュールに受け渡されます。指定されたユーザー ID またはルールがある場合、 通常のパスワードおよびアクセス確認が適用され、失敗すると Authentication Required 応答が返されます。

ユーザー ID が複数のモジュールのデータベースで表示される場合、 または有効な Require ディレクティブが複数のモジュールに適用される場合、 最初のモジュールがクレデンシャルを検査し、AuthSAFAuthoritative 設定に関係なく、 アクセスは渡されません。

デフォルトでは、制御は渡されず、不明なユーザー ID またはルールが不明な場合には、 Authentication Required 応答が返されます。そのため、これを設定しないでおくと、 システム保護が保たれ、NCSA に準拠した振る舞いが強制されます。

AuthSAFExpiration ディレクティブ

AuthSAFExpiration ディレクティブは、ブラウザーのプロンプトに表示される 値を設定します。

構文 AuthSAFExpiration short_phrase
デフォルト off
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
off または short_phrase

AuthSAFExpiration ディレクティブを句に設定すると、SAF パスワードの有効期限が切れている場合に、 IBM HTTP Server はパスワードを更新するようにユーザーにプロンプトを出すことができます。ユーザーが 有効な ID および SAF パスワードを入力しても、そのパスワードの有効期限が切れている場合、 サーバーは Authentication Required 応答を戻し、 ユーザーが有効期限の切れたパスワードを更新できるように、特別なプロンプトが出されます。このプロンプトは、 レルム (AuthName ディレクティブからの値) と、その後に続く AuthSAFExpiration ディレクティブからの short_phrase 値で構成されています。

例えば、以下の構成について考えてみます。
<Location /js>
AuthType Basic
AuthName "zwasa051_SAF"
AuthSAF on
Require valid-user
Require group SYS1 WASUSER
AuthSAFExpiration "EXPIRED! oldpw/newpw/newpw"
</Location>

ユーザーが、URL の先頭が /js であるファイルにアクセスしようとする場合、 サーバーは SAF ID およびパスワードに関してプロンプトを出します。ブラウザーには、 レルムが含まれるプロンプトが表示されます。レルムは、AuthName ディレクティブからの値 (この例では zwasa051_SAF) です。

ユーザーが有効な ID およびパスワードを入力する場合、パスワードの有効期限が切れていれば、 サーバーはこのプロンプトを繰り返しますが、ここでは値 zwasa051_SAF EXPIRED! oldpw/newpw/newpw が示されます。プロンプトにかかわらず、ユーザーは、 有効期限が切れたパスワードを入力し、その後にスラッシュ、新規パスワード、スラッシュ、 新規パスワードと再入力する必要があります。

パスワード更新が正常に行われると、サーバーは別の Authentication Required 応答、および異なる特別なプロンプトを送信します。この最後の対話は、キャッシュする必要があるパスワードをブラウザーに 認識させるために必要です。 ここでは、プロンプトはレルムおよびその後に続く プロンプト Re-enter new password で構成されています。この例では、zwasa051_SAF Re-enter new password となります。

AuthSAFReEnter ディレクティブ

AuthSAFReEnter ディレクティブは、正常なパスワード変更の後、 レルムに追加される値を設定します。

構文 AuthSAFReEnter short_phrase
デフォルト Re-enter new password
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
off または short_phrase

AuthSAFReEnter ディレクティブを「Re-enter new password」 以外の句に明示的に設定すると、有効期限が切れたパスワードが正常に更新された後、 管理者は代わりのメッセージを表示することができます。AuthSAFExpiration が off に設定されている場合、このディレクティブは影響を及ぼしません。

例えば、以下の構成について考えてみます。
<Location /js>
 AuthType Basic
 AuthName "zwasa051_SAF"
 AuthSAF on
 Require user SYSADM USER152 BABAR
 AuthSAFExpiration "EXPIRED! oldpw/newpw/newpw"
 AuthSAFReEnter "Enter new password one more time"</Location>

この例では、有効期限が切れたパスワードが正常に更新された後、 サーバーは AuthSAFReEnter ディレクティブからの値とともに、別の Authentication Required 応答を 送信します。この最後の対話は、キャッシュする必要があるパスワードをブラウザーに 認識させるために必要です。 ここでは、プロンプトはレルムおよびその後に続く 特別な句で構成されています。この例では、 zwasa051_SAF Enter new password one more time となります。

SAFRequire ディレクティブ

SAFRequire ディレクティブは、mod_auth_saf が Require ディレクティブを処理するかどうかを決定します。

構文 SAFRequire on | off
デフォルト off
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
on または off

SAFRequire ディレクティブを on に設定すると、mod_auth_saf は Require ディレクティブでユーザー名およびグループ名を処理することができます。SAF で定義されたグループを使用する場合は、 このディレクティブを on に設定する必要がありますが、他の場所で定義されたグループを使用する場合は、 このディレクティブを off に設定するか、ディレクティブを省略する必要があります。

例えば、SAFRequire を on にコード化するのではなく、AuthGroupFile ディレクティブを コード化する場合、mod_auth_saf は Require ディレクティブを処理することができます。 両方をコード化しないでください。

SAFRequire を on に設定する場合、すべてのユーザー名を大文字でリストします。 SAF がユーザー名を大文字で保守するためです。ユーザーは、ブラウザーでユーザー名および パスワードを大/小文字で入力することができます。Require ディレクティブの処理に mod_auth_saf を 使用しない場合は、ユーザーがブラウザーでのユーザー名入力に使用する可能性があるすべての文字の種類で 各ユーザー名をコード化する必要がある場合があります。

SAFRunAs ディレクティブ

SAFRunAs ディレクティブは、要求が処理される SAF ユーザー ID を設定します。

構文 SAFRunAs value
デフォルト off
Context ディレクトリー、.htaccess
モジュール mod_auth_saf
off | %%CLIENT%% | %%CERTIF%% | %%CERTIF_REQ%% | <surrogate ID>

Off: サーバーは、Web サーバー・ユーザー ID で要求を 実行します。

%%CLIENT%%: サーバーは、 許可要求ヘッダーで提供される ID で要求を実行します。通常、 ユーザーはブラウザー上のポップアップ・ウィンドウで ID およびパスワードを入力し、 ブラウザーがヘッダーを作成します。

%%CERTIF%%: サーバーは、 SAF で SSL クライアント証明書と関連付けられた ID で要求を実行します。 SSL 証明書がない場合、または SSL 証明書が SAF で ID に関連付けられていない場合、 %%CLIENT%% がコード化されているかのように、処理が続行します。

%%CERTIF_REQ%%: サーバーは、SAF で SSL クライアント証明書に 関連付けられた ID で要求を実行します。SSL 証明書がない場合、 または SSL 証明書が SAF で ID に関連付けられていない場合、 サーバーはアクセスを許可しません。

<surrogate ID>: サーバーは、指定された SAF 代理 ID に関連付けられた ID で要求を実行します。

%%CERTIF%%%%CERTIF_REQ%%、 および SAF 認証または許可のその他すべての形式の場合、 Require ディレクティブをコード化し、AuthSAF ディレクティブを on に設定する必要があります。

IBM HTTP Server は、TCP ソケットまたは UNIX ソケットのいずれかを使用して FastCGI アプリケーションと通信ができます。 ただし、FastCGI 要求に対して SAFRunAs を使用している場合は、アプリケーションとの通信には TCP ソケットを使用する必要があります。FastCGI アプリケーション用に作成された UNIX ソケットは、Web サーバーのユーザー ID のみでアクセスできます。 SAFRunAs ディレクティブで制御された代替のユーザー ID は、UNIX ソケットにアクセスする権利がないため、要求は失敗します。

FastCGI を構成して TCP ソケットを使用するには、FastCGIServer ディレクティブを -port オプションで使用するか、または FastCGIExternalServer ディレクティブを使用することにより、FastCGI アプリケーションを mod_fastcgi モジュールに定義します。 FastCGIServer または FastCGIExternalServer で構成されていない動的 FastCGI サーバーは、SAFRunAS と一緒に使用することができません。

FastCGI 要求の SAFRunAs を使用可能にしない場合、TCP ソケットは必要ありません。

基本 SAF 認証を使用したい場合には、以下のコンテナーを定義することを考慮してください。
<Location /x1>
AuthType Basic
AuthName x1  
Require valid-user
SAFRequire On  
AuthSAF on
</Location>
アクセス対象をユーザーのショート・リストのみに限定したい場合には、以下のコンテナーを定義することを考慮してください。
注: Require user ディレクティブを使用する場合には、AuthAuthoritative ディレクティブを使用する必要があり、名前のリストには大文字のみを含める必要があります。
<Location /x2>
	AuthType Basic  
	AuthName x2  
	Require user ALICE123 BOB456 CAROL789 
	SAFRequire On  
	AuthSAF on
	<IfModule mod_auth.c>
# If mod_auth is loaded, ensure that it allows other 
# modules to authenticate in case mod_auth runs first.
	AuthAthoritative off
	</IfModule>
</Location>
SAF で定義されたグループのみにアクセス対象を限定したい場合には、以下のコンテナーを定義することを考慮してください。
<Location /x3>
AuthType Basic
AuthName x3  
Require group WASUSER  
SAFRequire on  
AuthSAF on
</Location>
SAF 認証を AuthUserFile または AuthGroupFile ディレクティブとともに使用したい場合には、以下のコンテナーを定義することを考慮してください。
注: SAFRequire ディレクティブの値をオンに設定する場合には、AuthUserFile または AuthGroupFile ディレクティブは使用できません。ユーザーのリストは、Require user ディレクティブを使用して、あるいは SAF グループ内で設定する必要があります。SAFRequire ディレクティブをオフに設定する場合には、AuthUserFile または AuthGroupFile ディレクティブで定義されたユーザー・リストまたはグループを使用することができますが、IBM HTTP Server については、名前の突き合わせで大/小文字が区別されます。
<Location /x4>
	AuthType Basic  
	AuthName x4  
	Require group wasuser  
# File x4.grp contains this line: wasuser: alice123 ALICE123 	guest3 GUEST3  	AuthGroupFile /usr/lpp/config/x4.grp
	AuthBasicProvider saf
</Location>



関連タスク
SAF を使用した IBM HTTP Server 上での認証 (z/OS システム)
関連資料
FastCGI ディレクティブ
参照トピック    

ご利用条件 | フィードバック

最終更新: Feb 19, 2009 11:52:36 AM CST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.ihs.doc/info/ihs/ihs/rihs_safdirs.html