ADFS は、Windows Server 2008 オペレーティング システムの新機能であり、内部ユーザーと外部ユーザーにブラウザベースのアクセスのための統合アクセス ソリューションを提供します。この新機能により、2 つのまったく異なるネットワークまたは組織間のアカウントとアプリケーション間の通信も可能になります。
ADFS がどのように機能するかを理解するには、まず Active Directory がどのように機能するかを検討します。ユーザーが Active Directory を通じて認証されると、ドメイン コントローラーはユーザーの証明書を確認します。正規のユーザーであることが証明されると、ユーザーは、別のサーバーにアクセスするたびに再認証することなく、Windows ネットワーク上の承認されたリソースに自由にアクセスできるようになります。 ADFS は、同じ概念をインターネットに適用します。 Web アプリケーションがデータベースまたは他の種類のバックエンド リソースにあるバックエンド データにアクセスする必要がある場合、バックエンド リソースのセキュリティ認証の問題が複雑になることが多いことは誰もが知っています。現在、このような認証を提供するためにさまざまな認証方法が利用可能です。たとえば、ユーザーは、RADIUS (リモート認証ダイヤルイン ユーザー サービス) サーバーまたはアプリケーション コードの一部を通じて所有権認証メカニズムを実装する場合があります。これらの認証メカニズムはすべて認証機能を実装できますが、いくつかの欠点もあります。欠点の 1 つはアカウント管理です。アプリケーションに自社の従業員のみがアクセスする場合、アカウント管理は大きな問題ではありません。ただし、会社のサプライヤーと顧客がすべてアプリケーションを使用している場合、ユーザーは突然、他の会社の従業員用に新しいユーザー アカウントを作成する必要があることに気づくでしょう。 2 番目の欠点はメンテナンスです。他社の従業員が退職し、新しい従業員が雇用された場合も、ユーザーは古いアカウントを削除して新しいアカウントを作成する必要があります。
ADFS では何ができるのでしょうか?
ユーザーが Web アプリケーションを使用してアカウント管理タスクを顧客、サプライヤー、その他のユーザーにオフロードし、Web アプリケーションが他の企業にサービスを提供し、ユーザーがそれらの従業員アカウントのユーザーを作成したりリセットしたりする必要がなくなったらどうなるでしょうか?あなたのパスワード。それでも十分でない場合は、ユーザーはアプリを使用するためにアプリにログインする必要がなくなりました。それはとてもエキサイティングなことでしょう。
ADFS には何が必要ですか?
もちろん、Active Directory フェデレーション サービスでは他の構成を使用することも必要であり、ユーザーはこれらの機能を実行するためにいくつかのサーバーを必要とします。最も基本的なのはフェデレーション サーバーで、ADFS のフェデレーション サービス コンポーネントを実行します。 フェデレーション サーバーの主な役割は、さまざまな外部ユーザーからのリクエストを送信することであり、認証されたユーザーにトークンを発行する役割も担います。
さらに、ほとんどの場合、共同代理人が必要です。想像してみてください。外部ネットワークがユーザーの内部ネットワークとフェデレーション プロトコルを確立できる必要がある場合、これはユーザーのフェデレーション サーバーがインターネット経由でアクセスできる必要があることを意味します。ただし、Active Directory フェデレーションは Active Directory に大きく依存していないため、フェデレーション サーバーをインターネットに直接公開すると、大きなリスクが生じます。このため、フェデレーション サーバーはインターネットに直接接続できず、フェデレーション プロキシを通じてアクセスされます。フェデレーション プロキシは、フェデレーション サーバーが外部に直接公開されないように、外部からのフェデレーション要求をフェデレーション サーバーに転送します。
ADFS のもう 1 つの主要なコンポーネントは、ADFS Web エージェントです。 Web アプリケーションには、外部ユーザーを認証するメカニズムが必要です。これらのメカニズムは ADFS Web プロキシです。 ADFS Web プロキシは、Web サーバーに発行されるセキュリティ トークンと認証 Cookie を管理します。
次の記事では、ADFS サービスが企業にもたらす新しいエクスペリエンスを体験するためのシミュレートされたテスト環境を紹介します。早速、ADFS 構成テストを開始しましょう。
ステップ 1: インストール前のタスク
次の実験を完了するには、ユーザーは ADFS をインストールする前に少なくとも 4 台のコンピューターを準備する必要があります。
1) パソコンのOSとネットワーク環境を設定する
次の表を使用して、テスト用のコンピューター システムとネットワーク環境を構成します。
2)AD DSをインストールする
ユーザーは、Dcpromo ツールを使用して、フェデレーション サーバー (FS) ごとに新しい Active Directory フォレストを作成します。具体的な名前については、以下の構成表を参照してください。
3) ユーザーアカウントとリソースアカウントを作成する
2 つのフォレストを設定した後、ユーザーは「ユーザー アカウントとコンピューター」(Active Directory ユーザーとコンピューター) ツールを使用して、次の実験に備えていくつかのアカウントを作成できます。次のリストは、ユーザー参考のためにいくつかの例を示しています。
4) テスト コンピュータを適切なドメインに参加させます
以下の表に従って、対応するコンピュータを適切なドメインに追加します。これらのコンピュータをドメインに追加する前に、対応するドメイン コントローラのファイアウォールを無効にする必要があることに注意してください。
手順 2: AD FS 役割サービスをインストールし、証明書を構成する
コンピューターを構成してドメインに追加したので、各サーバーに ADFS コンポーネントもインストールしました。
1) アライアンスサービスの導入
アライアンス サービスを 2 台のコンピュータにインストールします。インストールが完了すると、2 台のコンピュータがアライアンス サーバーになります。次の手順では、新しい信頼ポリシー ファイル、SSL、証明書を作成する手順を説明します。
[スタート] をクリックし、[管理ツール] を選択して、[サーバー マネージャー] をクリックします。 「役割の管理」を右クリックし、「役割の追加」を選択して役割の追加ウィザードを開始します。 「始める前に」ページで「次へ」をクリックします。 [サーバーの役割の選択] ページで、[Active Directory フェデレーション サービス] を選択し、[次へ] をクリックします。 [役割サービスの選択] で [フェデレーション サービス] チェックボックスを選択し、Web サーバー (IIS) または Windows Activation Service (WAS) 役割サービスをインストールするようにユーザーに要求する場合は、 [必要な役割サービスの追加] をクリックして追加し、完了したら [次へ] をクリックします。 [SSL 暗号化用の証明書の選択] ページで、[SSL 暗号化用の自己署名証明書の作成] をクリックし、[次へ] をクリックして続行します。 [トークン署名証明書の選択] ページで、[自己署名トークン署名証明書の作成] をクリックし、[次へ] をクリックします。 [信頼ポリシーの選択] ページで、[新しい信頼ポリシーの作成] を選択し、[役割サービスの選択] ページに入り、[次へ] をクリックしてデフォルト値を確認します。 「インストール オプションの確認」の情報を確認した後、「インストール」をクリックしてインストールを開始できます。
[カットページ]
2) ローカル システム アカウントを ADFSAppPool ID に割り当てます。
[スタート] をクリックし、[管理ツール] の [インターネット インフォメーション サービス (IIS) マネージャー] で [ADFSRESOURCE] または [ADFSACCOUNT] をダブルクリックし、[アプリケーション プール] を選択し、中央のパネルで [ADFSAppPool] を右クリックし、[ID タイプ] で [アプリケーション プールのデフォルトの設定] を選択し、[LocalSystem] をクリックします。 [OK] を選択します。
3) AD FS Web エージェントをインストールする
管理ツールのサーバー マネージャーで、[役割の管理] を右クリックし、[役割の追加] を選択し、ウィザードに従って [サーバーの役割の選択] ページで [Active Directory フェデレーション サービス] を選択し、[次へ] をクリックして、[役割サービスの選択] ウィンドウで [クレーム対応エージェント] チェック ボックスをオンにします。 。ウィザードが Web サーバー (IIS) または Windows Activation Service (WAS) の役割サービスをインストールするようにユーザーに要求した場合は、「必要な役割サービスの追加」をクリックしてインストールを完了します。完了したら、[役割サービスの選択] ページで、[クライアント証明書マッピング認証] チェックボックスをオンにします (この手順を実行するには、IIS で自己署名サービス認証を作成する必要があります)。情報を確認したら、インストールを開始できます。
Web サーバーとアライアンス サーバーを正常にセットアップするためのもう 1 つの重要な手順は、証明書の作成、インポート、エクスポートです。以前に、役割追加ウィザードを使用して、アライアンス サーバー間のサーバー認証証明書を作成しました。後は、adfsweb コンピューターに対応する認証証明書を作成するだけです。紙面の都合上、ここでは詳しくご紹介しません。関連コンテンツについては、シリーズの証明書関連記事をご覧ください。
ステップ 3: Web サーバーの構成
このステップで主に完了したいのは、Web サーバー (adfsweb) 上でクレーム対応アプリケーションをセットアップする方法です。
まず IIS を構成します。完了したら、IIS の ADFSWEB で [Web サイト] をダブルクリックし、[アプリケーションの追加] を選択して、「claimapp」と入力します。 [アプリケーションの追加] ダイアログ ボックスのエイリアスをクリックし、[claimapp] という名前の新しいフォルダーを作成して確認します。新しいフォルダーに名前を付けるときは大文字を使用しないことをお勧めします。そうしないと、後で使用するときに対応する大文字を使用する必要があります。
ステップ 4: Alliance サーバーを構成する
ADFS サービスをインストールし、クレーム対応アプリケーションにアクセスするように Web サーバーを構成したので、テスト環境で 2 社 (Trey Research と A. Datum Corporation) のアライアンス サービスを構成しましょう。
まず、信頼ポリシーを構成します。管理ツールで [Active Directory フェデレーション サービス] をクリックし、フェデレーション サービスをダブルクリックして、右クリックして [信頼ポリシー] を選択し、[プロパティ] を選択します。 [全般] タブの [フェデレーション サービス URI] オプションに urn:federation:adatum と入力します。次に、フェデレーション サービス エンドポイント URL テキスト ボックスに次の URL が正しいことを確認します https://adfsaccount.adatum.com/adfs/ls/ 最後に、[表示名] タブのこの信頼ポリシーの表示名に「A. Datum」と入力します。 [OK はい]を選択します。完了したら、再度 Active Directory フェデレーション サービスに入り、[フェデレーション サービス]、[信頼ポリシー]、[組織の要求] を右クリックし、[新規] をクリックして、[作成] の要求名に「Trey ClaimApp Claim」と入力します。 [新しい組織の要求] ダイアログ ボックス。 「グループ要求」が選択されていることを確認し、「OK」をクリックします。他社の構成も基本的に上記の動作と同様ですので、詳細は割愛します。
ステップ 5: クライアント コンピューター経由でパイロット アプリケーションにアクセスする
adfsaccount フェデレーション サービスのブラウザ設定を構成する
ユーザー alansh として adfsclient にログインし、IE を起動し、[ツール] メニューの [インターネット オプション] をクリックし、[セキュリティ] タブの [ローカル イントラネット] をクリックして、[詳細設定] に「https://adfsaccount」と入力します。 adatum.com で、「追加」をクリックします。次に、IE ブラウザに https://adfsweb.treyresearch.net/claimapp/ と入力します。ただし、ホーム レルムの入力を求められたら、[A. Datum] をクリックし、[Submit] をクリックします。これにより、クレーム対応サンプル アプリケーションがブラウザーに表示され、ユーザーは SingleSignOnIdentity.SecurityPropertyCollection でアプリケーションの選択されたクレームを確認できるようになります。アクセス中に問題が発生した場合、ユーザーは iisreset を実行するか、adfsweb コンピュータを再起動して、再度アクセスを試みることができます。
この時点で、基本的な ADFS テスト モデルは構築されました。もちろん、ADFS はまだ包括的で複雑な新しいテクノロジですが、構成に関係なく、まだ多くの操作と構成を実行する必要があります。前述したように、ADFS は Web アプリケーションの機能を大幅に拡張し、企業の外部ビジネスの情報化レベルを拡張します。Windows Server 2008 の ADFS テクノロジが実際のアプリケーションでどのように使用されるかを見てみましょう。
[カットページ]2) ローカル システム アカウントを ADFSAppPool ID に割り当てます。
[スタート] をクリックし、[管理ツール] の [インターネット インフォメーション サービス (IIS) マネージャー] で [ADFSRESOURCE] または [ADFSACCOUNT] をダブルクリックし、[アプリケーション プール] を選択し、中央のパネルで [ADFSAppPool] を右クリックし、[ID タイプ] で [アプリケーション プールのデフォルトの設定] を選択し、[LocalSystem] をクリックします。 [OK] を選択します。
3) AD FS Web エージェントをインストールする
管理ツールのサーバー マネージャーで、[役割の管理] を右クリックし、[役割の追加] を選択し、ウィザードに従って [サーバーの役割の選択] ページで [Active Directory フェデレーション サービス] を選択し、[次へ] をクリックして、[役割サービスの選択] ウィンドウで [クレーム対応エージェント] チェック ボックスをオンにします。 。ウィザードが Web サーバー (IIS) または Windows Activation Service (WAS) の役割サービスをインストールするようにユーザーに要求した場合は、「必要な役割サービスの追加」をクリックしてインストールを完了します。完了したら、[役割サービスの選択] ページで、[クライアント証明書マッピング認証] チェックボックスをオンにします (この手順を実行するには、IIS で自己署名サービス認証を作成する必要があります)。情報を確認したら、インストールを開始できます。
Web サーバーとアライアンス サーバーを正常にセットアップするためのもう 1 つの重要な手順は、証明書の作成、インポート、エクスポートです。以前に、役割追加ウィザードを使用して、アライアンス サーバー間のサーバー認証証明書を作成しました。後は、adfsweb コンピューターに対応する認証証明書を作成するだけです。紙面の都合上、ここでは詳しくご紹介しません。関連コンテンツについては、シリーズの証明書関連記事をご覧ください。
ステップ 3: Web サーバーの構成
このステップで主に完了したいのは、Web サーバー (adfsweb) 上でクレーム対応アプリケーションをセットアップする方法です。
まず IIS を構成します。完了したら、IIS の ADFSWEB で [Web サイト] をダブルクリックし、[アプリケーションの追加] を選択して、「claimapp」と入力します。 [アプリケーションの追加] ダイアログ ボックスのエイリアスをクリックし、[claimapp] という名前の新しいフォルダーを作成して確認します。新しいフォルダーに名前を付けるときは大文字を使用しないことをお勧めします。そうしないと、後で使用するときに対応する大文字を使用する必要があります。
ステップ 4: Alliance サーバーを構成する
ADFS サービスをインストールし、クレーム対応アプリケーションにアクセスするように Web サーバーを構成したので、テスト環境で 2 社 (Trey Research と A. Datum Corporation) のアライアンス サービスを構成しましょう。
まず、信頼ポリシーを構成します。管理ツールで [Active Directory フェデレーション サービス] をクリックし、フェデレーション サービスをダブルクリックして、右クリックして [信頼ポリシー] を選択し、[プロパティ] を選択します。 [全般] タブの [フェデレーション サービス URI] オプションに urn:federation:adatum と入力します。次に、フェデレーション サービス エンドポイント URL テキスト ボックスに次の URL が正しいことを確認します https://adfsaccount.adatum.com/adfs/ls/ 最後に、[表示名] タブのこの信頼ポリシーの表示名に「A. Datum」と入力します。 [OK はい]を選択します。完了したら、再度 Active Directory フェデレーション サービスに入り、[フェデレーション サービス]、[信頼ポリシー]、[組織の要求] を右クリックし、[新規] をクリックして、[作成] の要求名に「Trey ClaimApp Claim」と入力します。 [新しい組織の要求] ダイアログ ボックス。 「グループ要求」が選択されていることを確認し、「OK」をクリックします。他社の構成も基本的に上記の動作と同様ですので、詳細は割愛します。
ステップ 5: クライアント コンピューター経由でパイロット アプリケーションにアクセスする
adfsaccount フェデレーション サービスのブラウザ設定を構成する
ユーザー alansh として adfsclient にログインし、IE を起動し、[ツール] メニューの [インターネット オプション] をクリックし、[セキュリティ] タブの [ローカル イントラネット] をクリックして、[詳細設定] に「https://adfsaccount」と入力します。 adatum.com で、「追加」をクリックします。次に、IE ブラウザに https://adfsweb.treyresearch.net/claimapp/ と入力します。ただし、ホーム レルムの入力を求められたら、[A. Datum] をクリックし、[Submit] をクリックします。これにより、クレーム対応サンプル アプリケーションがブラウザーに表示され、ユーザーは SingleSignOnIdentity.SecurityPropertyCollection でアプリケーションの選択されたクレームを確認できるようになります。アクセス中に問題が発生した場合、ユーザーは iisreset を実行するか、adfsweb コンピュータを再起動して、再度アクセスを試みることができます。
この時点で、基本的な ADFS テスト モデルは構築されました。もちろん、ADFS はまだ包括的で複雑な新しいテクノロジですが、構成に関係なく、まだ多くの操作と構成を実行する必要があります。前述したように、ADFS は Web アプリケーションの機能を大幅に拡張し、企業の外部ビジネスの情報化レベルを拡張します。Windows Server 2008 の ADFS テクノロジが実際のアプリケーションでどのように使用されるかを見てみましょう。