WSFederationAuthenticationModule.OnAuthenticateRequest メソッド

定義

AuthenticateRequest ASP.NET パイプラインからイベントを処理します。

protected:
 virtual void OnAuthenticateRequest(System::Object ^ sender, EventArgs ^ args);
protected virtual void OnAuthenticateRequest (object sender, EventArgs args);
abstract member OnAuthenticateRequest : obj * EventArgs -> unit
override this.OnAuthenticateRequest : obj * EventArgs -> unit
Protected Overridable Sub OnAuthenticateRequest (sender As Object, args As EventArgs)

パラメーター

sender
Object

イベントのソース。 これは HttpApplication オブジェクトです。

args
EventArgs

イベントのデータ。

注釈

メソッドは OnAuthenticateRequest 、WS-Federation 要求処理パイプラインを実装します。 メソッドによって、ASP.NET パイプラインの イベントにInitializeModule追加されますHttpApplication.AuthenticateRequest

メソッドは次を実行します。

  1. メソッドを CanReadSignInResponse(HttpRequestBase) 呼び出して、WS-Federation サインイン応答メッセージ ("wsignin1.0") を受信したかどうかを確認します。 応答が WS-Federation サインアウト クリーン要求 ("wsignoutcleanup1.0") CanReadSignInResponse(HttpRequestBase) である場合は、メッセージを処理し、要求を終了し、要求の WS-Federation パラメーターに従ってクライアントをリダイレクトします。 メッセージがサインイン応答またはサインアウト クリーン要求でない場合、モジュールは単にを返します。それ以外の場合は、次の手順を実行してサインイン応答を処理します。

  2. メソッドを GetSecurityToken(HttpRequestBase) 呼び出して、要求からオブジェクトを SecurityToken 逆シリアル化します。

  3. SecurityTokenReceived イベントを発生させます。 このイベントのハンドラーで、さらに処理を取り消したり、受信したセキュリティ トークンを変更したりできます。 ハンドラーは、通常、 または SecurityToken.ValidTo プロパティを変更SecurityToken.ValidFromするために使用されます。

  4. セキュリティ トークンを検証し、セキュリティ トークンの要求から オブジェクトを作成 ClaimsPrincipal します。

  5. SecurityTokenValidated イベントを発生させます。 このイベントのハンドラーで、さらに処理を取り消したり、要求プリンシパルを変更したりできます。

  6. 構成されたセッション認証モジュール (SAM) を使用してオブジェクトを SessionSecurityToken 作成します。 (構成済みの SAM は SessionAuthenticationModule 、 プロパティによって FederatedAuthentication.SessionAuthenticationModule 返されるオブジェクトです)。セッション トークンは、手順 5 で返されたクレーム プリンシパルを使用して作成されます。 SessionSecurityToken.ValidFromプロパティと SessionSecurityToken.ValidTo プロパティは、手順 3 で返された の SecurityToken プロパティと ValidTo プロパティを使用してValidFrom設定され、WSFAM で使用されているトークン ハンドラー コレクション内の オブジェクトの または TokenLifetime プロパティによってDefaultTokenLifetime指定された現在の時刻とトークンのSessionSecurityTokenHandler有効期間に対して検証されます。 セッション トークン ハンドラーのトークンの有効期間は、sessionTokenRequirement> 要素を<使用して構成で指定できます。 注: PersistentSessionLifetime SAM 用に構成された Cookie ハンドラーの プロパティは使用されません。

  7. セッション トークンを SetPrincipalAndWriteSessionToken 使用して メソッドを呼び出して、セッション Cookie を書き込みます。 メソッドは SetPrincipalAndWriteSessionToken 最初に イベントを SessionSecurityTokenCreated 発生させます。 セッション トークンのプロパティを変更したり、このイベントのハンドラーで Cookie を保持するかどうかを変更したりできます。 イベントが発生した後、 メソッドは SAM を使用して Cookie を書き込みます。

    注意

    SessionSecurityTokenHandler構成のセットは、Cookie の書き込みに使用されません。

  8. メソッドを OnSignedIn 呼び出して イベントを SignedIn 発生させます。

  9. メソッドを GetReturnUrlFromResponse 呼び出して、クライアントをリダイレクトする RP ページを取得します。 既定では、このメソッドはサインイン応答の wctx パラメーターから戻り URL を読み取ります。 WSFAM が戻り URL を格納する方法の詳細については、 メソッドを CreateSignInRequest 参照してください。

適用対象