証明書利用者アプリケーション

更新日: 2015 年 6 月 19 日

適用先:Azure

証明書利用者アプリケーション (要求対応アプリケーションまたは要求ベース アプリケーションとも呼ばれる) とは、認証要求に依存するアプリケーションまたはサービスのことです。 Microsoft Azure Active Directory Access Control (Access Control サービスまたは ACS とも呼ばれます) では、証明書利用者アプリケーションは、WEB サイト、アプリケーション、または ACS を使用してフェデレーション認証を実装するサービスです。

ACS 管理ポータルを使用して、または ACS 管理サービスを使用して、証明書利用者アプリケーションを手動で作成および構成できます。

ACS 管理ポータルでは、追加して構成する証明書利用者アプリケーションは、特定のAccess Control名前空間を信頼する Web サイト、アプリケーション、またはサービスの論理的な表現です。 各Access Control名前空間に多数の証明書利用者アプリケーションを追加して構成できます。

ACS 管理ポータルでの構成

ACS 管理ポータルを使用して、証明書利用者アプリケーションの次のプロパティを構成できます。

  • モード

  • 領域およびリターン URL

  • エラー URL (省略可能)

  • トークン形式

  • トークンの暗号化ポリシー

  • トークンの有効期間

  • [ID プロバイダー]

  • ルール グループ

  • トークンの署名

  • トークンの暗号化

モード

Mode プロパティでは、証明書利用者アプリケーションの設定を手動で構成するかどうか、あるいはアプリケーションの設定を定義する WS-Federation メタデータ ドキュメントを指定するかどうかを決定します。

WS-Federation メタデータ ドキュメントには、通常、アプリケーションの領域およびリターン URL が含まれます。 ACS によってアプリケーションに対して発行されるトークンを暗号化するために使用される省略可能な暗号化証明書を含めることもできます。 WS-Federation ドキュメントが指定され、メタデータに暗号化証明書が含まれている場合、トークン暗号化ポリシー設定は既定で [暗号化を要求する] に設定されます。 「トークンの暗号化ポリシー」設定の値は「暗号化を必要とする」であるが、WS-Federation メタデータ ドキュメントに暗号化証明書が含まれていない場合は、暗号化証明書を手動でアップロードする必要があります。

証明書利用者アプリケーションが Windows Identity Foundation (WIF) と統合されている場合、アプリケーションの WS-Federation メタデータ ドキュメントは WIF によって自動的に作成されます。

領域およびリターン URL

Realm プロパティは、ACS によって発行されたトークンが有効な URI を定義します。 戻り URL (ReplyTo アドレスとも呼ばれます) は、ACS によって発行されたトークンの送信先の URL を定義します。 証明書利用者アプリケーションへのアクセスのためにトークンが要求されると、ACS はトークン要求の領域が証明書利用者アプリケーションの領域と一致する場合にのみトークンを発行します。

重要

ACS では、領域の値では大文字と小文字が区別されます。

ACS 管理ポータルでは、各Access Control名前空間に 1 つの領域と 1 つの戻り URL のみを構成できます。 最も単純なケースでは、領域およびリターン URL は同じです。 たとえば、アプリケーションのルート URI が指定されている場合、 https://contoso.com証明書利用者アプリケーションの領域と戻り値の URL は次のようになります https://contoso.com

証明書利用者アプリケーションに対して複数のリターン URL (ReplyTo アドレス) を構成するには、ACS 管理サービスの RelyingPartyAddress エンティティを使用します。

ACS からトークンが要求された場合、またはトークンが ID プロバイダーから ACS にポストされると、ACS はトークン要求の領域値を証明書利用者アプリケーションの領域値と比較します。 トークン要求でプロトコルWS-Federation使用する場合、ACS は、 wtrealm パラメーター内の領域値を使用します。 トークンが OAuth WRAP プロトコルを使用する場合、ACS は applies_to パラメーターの領域値を使用します。 ACS は、証明書利用者アプリケーションの構成設定で一致する領域を見つけた場合、証明書利用者アプリケーションに対してユーザーを認証し、トークンを Return URL に送信するトークンを作成します。

証明書利用者が複数の Return URL を持っている場合、プロセスも同様です。 ACS は wreply パラメーターからリダイレクト URL を取得します。 リダイレクト URL が証明書利用者アプリケーションのリターン URL の 1 つである場合、ACS はその URL に応答を送信します。

領域値では大文字と小文字が区別されます。 トークンが発行されるのは、領域値が同一であるか、証明書利用者アプリケーションの領域値がトークン要求における領域のプレフィックスである場合のみです。 たとえば、証明書利用者アプリケーションの領域値はトークン要求領域の http://www.fabrikam.comhttp://www.fabrikam.com/billingと一致しますが、トークン要求領域 v https://fabrikam.comと一致しません。

エラー URL (省略可能)

エラー URL は、ログイン プロセス中にエラーが発生した場合に ACS がユーザーをリダイレクトする URL を指定します。 これは、証明書利用者アプリケーションの省略可能なプロパティです。

エラー URL の値には、証明書利用者アプリケーションによってホストされるカスタム ページを指定できます。次に例を示http://www.fabrikam.com/billing/error.aspxします。 ACS は、リダイレクトの一環として、JSON でエンコードされた HTTP URL パラメーターとして証明書利用者アプリケーションにエラーの詳細を提供します。 カスタム エラー ページを作成して、JSON でエンコードされたエラー情報を解釈し、実際のエラー メッセージや静的なヘルプ テキストを表示することができます。

エラー URL の使用方法の詳細については、「コード サンプル: ASP.NET Simple MVC 2」を参照してください。

トークン形式

Token format プロパティは、ACS が証明書利用者アプリケーションに発行するトークンの形式を決定します。 ACS は、SAML 2.0、SAML 1.1、SWT、または JWT トークンを発行できます。 トークン形式の詳細については、「 ACS でサポートされるトークン形式」を参照してください。

ACS は標準プロトコルを使用して、トークンを Web アプリケーションまたはサービスに返します。 トークン形式で複数のプロトコルがサポートされている場合、ACS はトークン要求に使用されたのと同じプロトコルを使用します。 ACS では、次のトークン形式とプロトコルの組み合わせがサポートされています。

  • ACS は、WS-TrustプロトコルとWS-Federation プロトコルを使用して SAML 2.0 トークンを返すことができます。

  • ACS は、WS-Federationおよび関連するWS-Trust プロトコルを使用して SAML 1.1 トークンを返すことができます。

  • ACS は、WS-Federation、WS-Trust、OAuth-WRAP、および OAuth 2.0 プロトコルを使用して SWT トークンを返すことができます。

  • ACS は、WS-Federation、WS-Trust、および OAuth 2.0 プロトコルを使用して JWT トークンを発行して返すことができます。

ACS が使用する標準プロトコルの詳細については、「ACS でサポートされるプロトコル」を参照してください。

トークン形式を選択するときは、Access Control名前空間が発行するトークンに署名する方法を検討してください。 ACS によって発行されたすべてのトークンに署名する必要があります。 詳細については、「トークン署名」を参照してください。

また、トークンを暗号化するかどうかも考慮してください。 詳細については、「トークン暗号化ポリシー」を参照してください。

トークンの暗号化ポリシー

トークン暗号化ポリシーは、ACS が証明書利用者アプリケーションに発行するトークンを暗号化するかどうかを決定します。 暗号化が必要になるようにするには、「暗号化を必要とする」の値を選択します。

ACS では、SAML 2.0 または SAML 1.1 トークンのみの暗号化ポリシーを構成できます。 ACS では、SWT または JWT トークンの暗号化はサポートされていません。

ACS は、公開キー (.cer ファイル) を含む X.509 証明書を使用して SAML 2.0 および SAML 1.1 トークンを暗号化します。 その後、これらの暗号化されたトークンは、証明書利用者アプリケーションが所有する秘密キーを使用して復号化されます。 暗号化証明書の取得と使用の詳細については、「証明書 とキー」を参照してください。

ACS によって発行されたトークンに対する暗号化ポリシーの構成は省略可能です。 ただし、証明書利用者アプリケーションが、WS-Trust プロトコルで所有の証明トークンを使用している Web サービスの場合、暗号化ポリシーを構成する必要があります。 この特定のシナリオは暗号化されたトークンを使用しないと正しく機能しません。

トークンの有効期間

Token lifetime プロパティは、ACS が証明書利用者アプリケーションに発行するセキュリティ トークンが有効な期間 (秒単位) を指定します。 既定値は 600 (10 分) です。 ACS では、トークンの有効期間の値は 0 から 86400 (24 時間) までの範囲である必要があります。

[ID プロバイダー]

ID プロバイダー プロパティは、要求を証明書利用者アプリケーションに送信できる ID プロバイダーを指定します。 これらの ID プロバイダーは、Web アプリケーションまたはサービスの ACS ログイン ページに表示されます。 ACS ポータルの [ID プロバイダー] セクションで構成されているすべての ID プロバイダー が ID プロバイダーの一覧に表示されます。 一覧に ID プロバイダーを追加するには、「ID プロバイダー」をクリックします。

各証明書利用者アプリケーションを 0 個以上の ID プロバイダーに関連付けることができます。 Access Control名前空間内の証明書利用者アプリケーションは、同じ ID プロバイダーまたは異なる ID プロバイダーに関連付けることができます。 証明書利用者アプリケーションの ID プロバイダーを選択しない場合は、証明書利用者アプリケーション用に ACS を使用して直接認証を構成する必要があります。 たとえば、サービス ID を使用して直接認証を構成することができます。 詳細については、「 サービス ID」を参照してください。

ルール グループ

ルール グループ プロパティは、要求の処理時に証明書利用者アプリケーションが使用するルールを決定します。

各 ACS 証明書利用者アプリケーションは、少なくとも 1 つのルール グループに関連付ける必要があります。 トークン要求がルール グループのない証明書利用者アプリケーションと一致する場合、ACS は Web アプリケーションまたはサービスにトークンを発行しません。

ACS ポータルの [ルール グループ] セクションで構成されているすべての ルール グループ が、ルール グループの一覧に表示されます。 一覧にルール グループを追加するには、「ルール グループ」をクリックします。

ACS 管理ポータルで新しい証明書利用者アプリケーションを追加すると、既定で [ 新しい規則グループの作成 ] オプションが選択されます。 新しい証明書利用者アプリケーションには新しいルール グループを作成することを強くお勧めします。 ただし、証明書利用者アプリケーションを既存のルール グループに関連付けることはできます。 これを行うには、「新しいルール グループの作成」オプションをオフにして、必要なルール グループを選択します。

証明書利用者アプリケーションは複数のルール グループに関連付けることができます (さらに、ルール グループを複数の証明書利用者アプリケーションに関連付けることができます)。 証明書利用者アプリケーションが複数のルール グループに関連付けられている場合、ACS はすべてのルール グループのルールを、1 つのルール グループ内のルールであるかのように再帰的に評価します。

ルールとルール グループの詳細については、「ルール グループとルール」を参照してください。

トークンの署名

トークン署名設定プロパティは、ACS が発行するセキュリティ トークンの署名方法を指定します。 ACS によって発行されたすべてのトークンに署名する必要があります。

使用できるトークンの署名オプションは、証明書利用者アプリケーションのトークン形式によって異なります。 (トークン形式の詳細については、「トークンの形式」を参照してください)。

  • SAML トークン: X.509 証明書を使用してトークンに署名します。

  • SWT トークン: 対称キーを使用してトークンに署名します。

  • JWT トークン: X.509 証明書または対称キーを使用してトークンに署名します。

X.509 証明書のオプション。 次のオプションは X.509 証明書で署名されたトークンで使用できます。

  • サービス名前空間証明書 (標準) を使用する- このオプションを選択すると、ACS はAccess Control名前空間の証明書を使用して、証明書利用者アプリケーションの SAML 1.1 トークンと SAML 2.0 トークンに署名します。 WS-Federation メタデータを使用して Web アプリケーションまたはサービスの構成を自動化する場合は、Access Control名前空間のWS-Federationメタデータに名前空間公開キーが発行されるため、このオプションを使用します。 WS-Federation メタデータ ドキュメントの URL は、ACS 管理ポータルの [アプリケーション統合 ] ページに表示されます。

  • 専用証明書の使用 - このオプションを選択すると、ACS はアプリケーション固有の証明書を使用して、証明書利用者アプリケーションの SAML 1.1 トークンと SAML 2.0 トークンに署名します。 この証明書は他の証明書利用者アプリケーションには使用されません。 このオプションを選択したら、秘密キーを含む X.509 証明書 (.pfx ファイル) を参照してから、.pfx ファイルのパスワードを入力します。

注意

JWT トークン。 証明書利用者アプリケーションを構成し、証明書利用者アプリケーションの JWT トークンに署名するためにAccess Control名前空間の X.509 証明書を使用するように構成すると、ACS 管理ポータルの証明書利用者アプリケーションのページに、Access Control名前空間証明書とAccess Control名前空間キーへのリンクが表示されます。 ただし、ACS では名前空間証明書のみを使用して、証明書利用者アプリケーションのトークンに署名します。

管理対象名前空間。 証明書利用者アプリケーションを管理対象の名前空間 (Service Bus 名前空間など) に追加する際に、アプリケーション固有の (専用の) 証明書やキーは入力しないでください。 代わりに、管理対象名前空間内のすべてのアプリケーション用に構成されている証明書とキーを使用するように ACS に指示するオプションを選択します。 詳細については、「マネージド名前空間」を参照してください。

共有証明書と専用の証明書とキーの詳細については、「 証明書とキー」を参照してください。

対称キーのオプション

セキュリティのベスト プラクティスとして、対称キーを使用する場合は、Access Control名前空間に共有対称キーを使用するのではなく、証明書利用者アプリケーションごとに専用キーを作成します。 専用キーを入力または生成する場合、ACS は専用キーを使用して、専用キーが有効である限り、証明書利用者アプリケーションのトークンに署名します。 ただし、専用キーの有効期限が切れ、置き換えられない場合、ACS は共有名前空間キーを使用して証明書利用者アプリケーションのトークンに署名します。

共有対称キーを使用することにした場合は、「証明書とキー」ページからサービス名前空間キーの値をコピーして、「証明書利用者アプリケーション」ページの「トークンの署名」セクションにあるフィールドに貼り付けます。

次のオプションは対称キーで署名されたトークンに使用できます。

  • トークン署名キー—256 ビットの対称キーを入力するか、「生成」をクリックして 256 ビットの対称キーを生成します。

  • 有効日—対称キーが有効である日付範囲の開始日を指定します。 この日付から、ACS は対称キーを使用して証明書利用者アプリケーションのトークンに署名します。 ACS の既定値は現在の日付です。

  • 有効期限—対称キーが有効である日付範囲の終了日を指定します。 この日付から、ACS は証明書利用者アプリケーションのトークンに署名するために対称キーを使用しません。 既定値はありません。 セキュリティのベスト プラクティスとして、アプリケーションの要件に応じて、対称キーを毎年または 2 年ごとに置き換える必要があります。

トークンの暗号化

トークンの暗号化証明書オプションは、証明書利用者アプリケーションのトークンを暗号化するために使用される X.509 証明書 (.cer ファイル) を指定します。 ACS では、SAML 2.0 トークンまたは SAML 1.1 トークンのみを暗号化できます。 ACS では、SWT または JWT トークンの暗号化はサポートされていません。

トークン暗号化の証明書は、ACS ポータルの [証明書とキー ] セクションで指定します。 「証明書利用者アプリケーション」ページの「トークンの暗号化ポリシー」セクションにある「ここをクリックしてください」リンクをクリックすると、証明書とキーの「トークン暗号化証明書の追加」ページが開きます。 このページを使用して、証明書ファイルを指定します。

詳細については、「トークン暗号化ポリシー」を参照してください。 暗号化証明書の取得と追加の詳細については、「証明書 とキー」を参照してください。

参照

概念

ACS 2.0 コンポーネント