Windows シングルサインオン (複数の Active Directory ドメインをまたがる Web クライアント用の)

Windows 環境に複数の Active Directory ドメインが定義されている場合、このドメイン全体の Web クライアントに対して Windows シングルサインオンが機能するようセットアップすることができます。この場合、いくつかの要件と推奨事項があります。

Active Directory の信頼要件

このタスクについて

Windows 管理者は、Active Directory ドメインと信頼スナップインユーティリティを使用して、ドメイン間のフォレストの信頼関係を設定する必要があります。外部の信頼関係は Kerberos 認証をサポートしていないため、使用することはできません。信頼関係の設定の詳細については、Microsoft の文書を参照してください。

親子関係にあるドメインの場合、親ドメインは子ドメインを暗黙的に信頼するため、両者間で信頼を設定する必要はありません。子ドメインとは、DNS 階層内の他のドメインよりも 1 レベル下位に位置するドメインを指します。たとえば、sales.east.renovations.com は east.renovations.com の子になります。

サポートされるフォレストの信頼の種類は次のとおりです。

  • 双方向の Windows フォレストの信頼。たとえば、フォレスト A とフォレスト B の間に双方向の信頼がある場合、フォレスト A とフォレスト B のユーザーは両フォレストのサーバーにアクセスすることができます。
  • 別のフォレストに対する一方向の受信信頼。たとえば、フォレスト A がフォレスト B に対する受信信頼を持つ場合、フォレスト A のユーザーはフォレスト B のサーバーにアクセスできます。フォレスト B のユーザーは、フォレスト B がフォレスト A に対して同様の受信信頼を持たない限り、フォレスト A にアクセスすることはできません。
  • 別のフォレストに対する一方向の送信信頼。たとえば、フォレスト A がフォレスト B に対する送信信頼を持つ場合、フォレスト B のユーザーはフォレスト A のサーバーにアクセスできます。フォレスト A のユーザーは、フォレスト B がフォレスト A に対して同様の送信信頼を持たない限り、フォレスト B のサーバーにアクセスすることはできません。
  • 過渡的な信頼。フォレスト A のユーザーが信頼関係によってフォレスト B のサーバーにアクセスできる場合、フォレスト A の子ドメインのユーザーは、フォレスト A と B の間で過渡的な信頼として信頼関係が設定されていれば、フォレスト B のサーバーにアクセスすることができます。

Active Directory ドメイン間に信頼関係が確立されているかどうかを確認するには、次の手順を実行します。

手順

  1. [管理ツール] メニューから Active Directory ドメインと信頼ユーティリティを開きます。
  2. ドメインを右クリックして [プロパティ] を選択します。
  3. [信頼] タブをクリックし、信頼されているドメインのリストを表示します。

コンピュータのクロックの同期

このタスクについて

ドメイン内とドメイン間のサーバー同士のクロックは、可能な限り同期を維持する必要があります。これは、Kerberos (Web クライアントの Windows シングルサインオンでベースとなるセキュリティメカニズム) がクロックスキューの影響を受けやすいためです。クロックスキューが発生した場合は、可能な限り修正してください。Windows 管理者は、必要に応じて次の手順を実行して、クロックスキューの許容値を増やすことができます。

手順

  1. グループポリシー管理コンソールを起動します。例えば Windows Server 2008 の場合、[スタート] > [ファイル名を指定して実行] の順にクリックし、「gpmc.msc」と入力してから [OK] をクリックします。
  2. コンソールツリーでドメインを検索し、ツリーを展開します。
  3. グループポリシーオブジェクトを展開します。
  4. 展開されたグループポリシーオブジェクトで、(この後表示される) デフォルトドメインポリシーをクリックします。デフォルトドメインポリシーの [設定] タブで [セキュリティー設定] - [アカウントポリシー/Kerberos ポリシー] をクリックします。
  5. コンピュータのクロック同期の最大許容値をダブルクリックして設定を編集します。

DNS の要件

ドメインにはそれぞれ固有の名前階層 (east.renovations.com や west.renovations.com など) が指定されているため、ネットワーク管理者は DNS 順検索ゾーンと逆検索ゾーンを設定して、コンピュータが他のドメインから名前を解決できるようにする必要があります。

ブラウザーの要件

ブラウザーの設定を変更して、それぞれの宛先 Active Directory ドメインへの Windows シングルサインオンを許可する必要があります。

Domino® の名前検索の要件

すべての Active Directory ドメインに属するユーザーの Kerberos 名を、各 Domino® サーバーで検索できるようにする必要があります。ユーザーの Kerberos 名が複数の Domino® ディレクトリーに格納されている場合、Domino® 管理者は、ディレクトリー・カタログまたはディレクトリアシスタントを使用して 2 次 Domino® ディレクトリー内のユーザー名を検索できるよう、各 Domino® サーバーを設定する必要があります。ディレクトリアシスタントによってユーザーの Kerberos 名が Active Directory に対して解決される場合、各 Domino® サーバーはディレクトリアシスタントを使用して、ユーザーが存在する各 Active Directory で名前を検索することができます。

シングルサインオンの設定上の推奨事項

このタスクについて

あるユーザーに対して Windows シングルサインオンが設定されると、Domino® サーバーは LTPA トークンをこのユーザーに返します。複数の Domino® サーバーが同一の SSO 設定を共有する場合を考慮して、SSO のデプロイメントは慎重に計画する必要があります。

たとえば、「east.renovations.com」というドメインのサーバーに SSO を設定し、「west.renovations.com」ドメインのサーバーと同じ SSO キーを共有するように設定した場合、west サーバーで作成された LTPA トークンを east サーバーで受信できるようになります。この場合、SSO 設定文書で「renovations.com」などの一般 DNS ドメインを使用することができます。

ただし、east と west のそれぞれのサーバーで同じ SSO キーを共有しない場合、「renovations.com」などの一般 DNS ドメインを使用しても SSO の効率は悪くなります。代わりに、操作する Windows DNS ドメインに合わせて SSO ドメインを調整する必要があります。

例: 非効率な SSO 設定

次の例は、west.renovations.com と east.renovations.com の各サーバーが SSO キーを共有していない状態で一般 SSO ドメインの renovations.com を使用した場合、どのように効率が悪くなるかを示したものです。

手順

  1. ユーザーが Windows シングルサインオンによって east.renovations.com のサーバーに対する認証を取得します。この east サーバーは、east サーバーの SSO キーを使用して LTPA トークンを作成します。ユーザーのブラウザーは、renovations.com DNS ドメインで使用する LTPA トークンを取得します。
  2. このユーザーが west.renovations.com のサーバーにアクセスします。ブラウザーから LTPA トークンが送信されます。このトークンは、renovations.com のすべてサーバーに対して適用されます。west.renovations.com のサーバーはこのトークンを検証しようとしますが、east サーバーとの間で SSO キーが共有されていないため、検証することができません。
  3. west サーバーは既存の LTPA トークンを検証できないため、Windows シングルサインオン経由でユーザーを認証する必要があります。この west サーバーは、west サーバーの SSO キーを使用して LTPA トークンを作成します。ユーザーのブラウザーは、renovations.com DNS ドメインで使用する新しい LTPA トークンを取得します。このブラウザーには west サーバーが作成した LTPA トークンしか設定されていないため、このトークンによって以前のトークンが置き換えられます。
  4. ユーザーが east.renovations.com のサーバーにアクセスします。ブラウザーから LTPA トークンが送信されます。このトークンは、renovations.com のすべてサーバーに対して適用されます。east サーバーはこのトークンを検証しようとしますが、west サーバーによって代替 SSO キーを使用して作成されているため、検証することができません。そのため、Windows シングルサインオンを使用して、east サーバーに対してもう一度このユーザーを認証する必要があります。その際、east サーバーによって既存の LTPA トークンが再び上書きされます。

タスクの結果

このように、Windows シングルサインオンと LTPA トークンの上書きを繰り返す方法は非常に効率が悪くなります。

例: 効率的な SSO 設定

次の例は、west.renovations.com と east.renovations.com の各サーバーが SSO キーを共有していない状態で Windows ドメインに合わせて調整した SSO ドメインを使用した場合、どのように効率が改善されるかを示したものです。

手順

  1. ユーザーが east.renovations.com のサーバーに対する認証を取得し、east.renovations.com DNS ドメインで使用する LTPA トークンを取得します。
  2. このユーザーが west.renovations.com のサーバーにアクセスします。LTPA トークンは east サーバー専用のトークンであるため、ブラウザーは LTPA トークンを送信しません。
  3. west サーバーは、Windows シングルサインオン経由でユーザーを認証する必要があります。ユーザーは、west.renovations.com DNS ドメインで使用する 2 番目の LTPA トークンを取得します。
  4. このユーザーが east.renovations.com のサーバーにアクセスします。ブラウザー内の最初の LTPA トークンが送信されます。このトークンは、すべての east サーバーに対して適用されます。east サーバーは、この LTPA トークンを使用してユーザーを識別します。
  5. このユーザーが west.renovations.com のサーバーにアクセスします。ブラウザー内の 2 番目の LTPA トークンが送信されます。このトークンは、すべての west サーバーに対して適用されます。west サーバーは、この LTPA トークンを使用してユーザーを識別します。