Kerberos 認証用 Java クライアントの構成
Java™ クライアントは、Kerberos プリンシパル名とパスワード、または Kerberos クレデンシャル・キャッシュ (krb5Ccache) を使用して、WebSphere® Application Server で認証できます。
手順
- 基本の Kerberos 構成ファイル (krb5.ini または krb5.conf) を作成します。 詳しくは、Kerberos 構成ファイルの作成を参照してください。
- 作成済みの krb5.ini または krb5.conf ファイルを、デフォルトのロケーションに配置してください。 ファイルのいずれかがデフォルトのロケーションに配置されていない場合、sas.client.props ファイルの com.ibm.COBRA.krb5ConfigFile で、パスおよび Kerberos 構成ファイル名を正しく設定する必要があります。
デフォルトのロケーションは c:¥winnt¥krb5.ini です。
デフォルトのロケーションは /etc/krb5.conf です。
デフォルトのロケーションは /etc/krb5/krb5.conf です。
デフォルトのロケーションは /QIBM/UserData/OS400/NetworkAuthentication/krb5.conf です。
- sas.client.props ファイルの com.ibm.CORBA.authenticationTarget プロパティーを KRB5 に設定します。 詳しくは、スクリプト記述を使用したセキュリティーの構成に関する項目を参照してください。
- sas.client.props ファイルでも、com.ibm.CORBA.loginSource プロパティーを、下に示すサポートされる値の 1 つに設定します。 authenticationTarget が BasicAuth の場合、サポートされている loginSource は以下のとおりです。
- prompt [デフォルト]
- properties
- stdin
- none
authenticationTarget が KRB5 の場合、サポートされている loginSource は以下のとおりです。- prompt [デフォルト]
- properties
- stdin
- none
- krb5Ccache
- krb5Ccache:prompt
- krb5Ccache:properties
- krb5Ccache:stdin
以下も考慮してください。- krb5Ccache:prompt
- 最初に、krb5Ccache が WebSphere Application Server への認証に使用されます。 失敗した場合は prompt にフォールバックします。
- krb5Ccache:properties
- 最初に、krb5Ccache が WebSphere Application Server への認証に使用されます。 失敗した場合は properties にフォールバックします。
- krb5Ccache:stdin
- 最初に、krb5Ccache が WebSphere Application Server への認証に使用されます。 失敗した場合は stdin にフォールバックします。
- authenticationTarget が KRB5 の場合、Java クライアント・アプリケーションに wsjaas_client.conf ファイルがある必要があります。 launchClient コマンドを使用しない場合は、java オプションを次のように設定する必要があります。
-Djava.security.auth.login.config=wsjaas_client.config
- authenticationTarget が KRB5 で、loginSource が Kerberos クレデンシャル・キャッシュの場合は、以下を実行します。
- wsjaas_client.conf ファイルの WSKRB5Login エントリーを、以下のように更新します。
WSKRB5Login{ com.ibm.ws.security.auth.kerberos.Krb5LoginModuleWrapperClient required credsType=INITIATOR useFirstPass=false forwardable=false renewable=false noAddress=false; };
- Kerberos クレデンシャル・キャッシュがデフォルトのロケーションではない場合、com.ibm.CORBA.krb5CcacheFile プロパティーを URL にします。 以下に例を示します。
com.ibm.CORBA.krb5CcacheFile=FILE:/home/smith/krb5cc_smith
Kerberos クレデンシャル・キャッシュ・ファイルのデフォルト・ロケーションは、 ご使用のオペレーティング・システムによって異なります。ユーザー・クレデンシャル・キャッシュは、 以下の順序で配置されます。Java プロパティー KRB5CCNAME が参照するファイル
<user.home>/krb5cc_<user.name>
<user.home>/krb5cc (<user.name> が取得できない場合)注: Kerberos クレデンシャル・キャッシュを認証に使用する場合、クライアントの Kerberos 委任チケットは renewable (更新可能) ではありません。
- wsjaas_client.conf ファイルの WSKRB5Login エントリーを、以下のように更新します。
- オプション: エラーが発生した場合、すべての WebSphere Application Server マシンの刻時が KDC マシンと同期されていることを確認してください。kinit コマンドを使用して、Kerberos プリンシパル名とパスワードを検証してください。 Java SE Development Kit (JDK) 8 に付属の kinit コマンドを使用することをお勧めします。
このコマンドのヘルプを表示するには、以下のように入力します。
kinit -help
kinit コマンドの例を示します。この例では、 duke として Kerberos チケット許可チケット (TGT) が取得でき、 Kerberos クレデンシャル・キャッシュは、デフォルト・ロケーション c:¥Documents and Settings¥duke¥krb5cc_duke に保管されます。kinit duke@JAVA.SUN.COM
注: このコマンドは、すべてのバージョンの KDC で機能するわけではありません。注: Kerberos のプリンシパル名と パスワードには、ともに、大文字小文字の区別があります。z/OS で KDC を使用する場合は、 RACF ユーザー ID の KERB セグメントに表示されている Kerberos プリンシパル名を、 そのまま正確に入力する必要があります。RACF で 大/小文字混合のパスワードを有効にしていない場合は、kinit コマンドではパスワードを すべて大文字で入力してください。
タスクの結果
サーバー・サイドでの Kerberos の構成は、管理コンソールまたは wsadmin コマンドのいずれかを使用して完了することができます。 詳しくは、管理コンソールを使用した認証メカニズムとしての Kerberos の構成 または『Kerberos 認証コマンド』をそれぞれ参照してください。
関連タスク:


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_kerb_auth_client
ファイル名:tsec_kerb_auth_client.html