2.2. Active Directory に関する注意点
本項では、Active Directory ドメインの一部である Microsoft Windows サーバー上で JBoss EAP 6 が実行されている場合に、JBoss Negotiation の使用で必要となるアカウントの設定方法を説明します。
ここでは、サーバーへのアクセスに使用されるホスト名は HOSTNAME、レルムは REALM、ドメインは DOMAIN、JBoss EAP 6 インスタンスをホストするサーバーは MACHINE_NAME を使用します。
2.2.1. Microsoft Windows ドメインでの JBoss Negotiation の設定
2.2.1.1. 1.既存のサービスプリンシパルマッピング消去
Microsoft Windows ネットワークでは、一部のマッピングが自動作成されます。自動的に作成されたマッピングを削除し、ネゴシエーションが適切に行われるようにサーバーのアイデンティティーをサービスプリンシパルへマップします。マッピングにより、クライアントコンピューター上の Web ブラウザーがサーバーを信頼し、SPNEGO の実行を試みます。クライアントコンピューターは、HTTP/HOSTNAME 形式のマッピングに対し、ドメインコントローラーを検証します。
既存のマッピングを削除する手順は次のとおりです。
以下のコマンドを使用して、コンピューターに対してドメインに登録されたマッピングをリストします。
setspn -L MACHINE_NAME
以下のコマンドを使用して、既存のマッピングを削除します。
setspn -D HTTP/HOST_NAME MACHINE_NAME
setspn -D host/HOSTNAME MACHINE_NAME
2.2.1.2. 2.ホストユーザーアカウントを作成します。
ホスト名には MACHINE_NAME 以外の名前を使用してください。
これ以降では、ホストユーザー名として USER_NAME を使用します。
2.2.1.3. 3.USER_NAME と HOST_NAME との間のマッピングを定義します。
以下のコマンドを実行して、サービスプリンシパルマッピングを設定します。
ktpass -princ HTTP/HOSTNAME@REALM -pass * -mapuser DOMAIN\USER_NAME
プロンプトが表示されたら、ユーザー名のパスワードを入力します。
キータブのエクスポートの前提条件として、ユーザー名のパスワードをリセットします。
コマンド setspn -L USER_NAME を実行してマッピングを検証します。
2.2.1.4. 4.EAP JBoss がインストールされているサーバーに、ユーザーのキータブをエクスポートします。
以下のコマンドを実行してデータをエクスポートします。
ktab -k service.keytab -a HTTP/HOSTNAME@REALM
このコマンドは、HTTP/HOSTNAME プリンシパルのチケットをキータブ service.keytab にエクスポートします。これは、JBoss EAP 6 でホストセキュリティードメインを設定するために使用されます。
2.2.1.5. 5.セキュリティードメイン内でプリンシパルを定義します。
プリンシパルは以下のようにセキュリティードメインで定義または更新できます。
<module-option name="principal">HTTP/HOSTNAME@REALM</module-option>