Passport 認証プロバイダ

パスポート認証は Microsoft が提供する集中化された認証サービスで、メンバのサイトに対して単一のログオン サービスおよび主要なプロファイル サービスを提供します。Passport を使用すると、ユーザーはアクセスが制限されたリソースやサイトに新たにログオンする必要がなくなります。サイトに Passport 認証および承認との互換性を持たせるには、このプロバイダを使用します。このトピックでは、Microsoft .NET Passport と ASP.NET でのそのサポートについて、基本的な内容を説明します。詳細については、「.NET Passport の Web サイト」を参照してください。このドキュメントにアクセスするには、Passport を取得して登録する必要があります。

Passport とは、Cookie ベースの認証サービスです。Passport 認証を使用するトランザクションのやり取りの例を次に示します。

  1. クライアントが、https://www.contoso.com/default.aspx などの保護されているリソースに対する HTTP GET 要求を発信します。

  2. クライアントの Cookie で既存の Passport 認証チケットが調べられます。サイトが有効な資格情報を見つけると、サイトはクライアントを認証します。要求に有効な認証チケットが含まれていない場合は、サーバーはステータス コード 302 を返し、クライアントを Passport ログオン サービスへリダイレクトします。応答には、URL がクエリ文字列に含まれています。この URL は、クライアントを元のサイトに戻すために Passport ログオン サービスに送られます。

  3. クライアントはリダイレクトされ、Passport ログオン サーバーに HTTP GET 要求を発信し、元のサイトからのクエリ文字列情報を転送します。

  4. Passport ログオン サーバーがクライアントに対してログオン フォームを表示します。

  5. クライアントはフォームに必要事項を入力し、SSL (Secure Sockets Layer) を使用して、ログオン サーバーにポスト バックします。

  6. ログオン サーバーはユーザーを認証し、クライアントを元の URL (https://www.contoso.com/default.aspx) にリダイレクトします。応答には、暗号化された Passport Cookie を持つクエリ文字列が含まれています。

  7. クライアントはリダイレクトされ、今回は Passport Cookie を使用して、最初に要求した保護されているリソースを再び要求します。

  8. 要求元のサーバーで、PassportAuthenticationModule は Passport Cookie を検出し、認証をテストします。成功した場合は、要求が認証されます。

このサイトのアクセスが制限されたリソースへのその後の要求は、提供されるチケットを使用して認証されます。Passport は、チケットの有効期限切れや、他のメンバ サイトでのチケットの再利用についても対応します。

Passport は、Triple DES 暗号化スキームを使用しています。メンバ サイトが Passport に登録すると、そのサイトには固有のキーが与えられます。Passport ログオン サーバーは、このキーを使用して、サイト間で受け渡しされるクエリ文字列を暗号化および復号化します。

メモ :

Passport 認証を使用するには、事前にサイトを Passport サービスに登録し、使用許諾契約に同意し、.NET Passport SDK をインストールしておく必要があります。Passport 認証を使用するように ASP.NET アプリケーションを設定する方法の詳細については、「.NET Passport Service Guide Kit Web site」を参照してください。

参照

概念

ASP.NET Web アプリケーションのセキュリティ

ASP.NET の認証

方法 : ASP.NET アプリケーションに Passport 認証を実装する

参照

IIdentity

PassportAuthenticationModule

PassportIdentity