WSFederationAuthenticationModule.OnAuthenticateRequest Método

Definição

Gere o evento AuthenticateRequest do pipeline de 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)

Parâmetros

sender
Object

A fonte do evento. Isto será um HttpApplication objeto.

args
EventArgs

Os dados do evento.

Observações

O OnAuthenticateRequest método implementa o pipeline de processamento de pedidos WS-Federation. É adicionado ao evento HttpApplication.AuthenticateRequest no pipeline de ASP.NET pelo método InitializeModule.

O método realiza o seguinte:

  1. Chama o CanReadSignInResponse(HttpRequestBase) método para determinar se foi recebida uma mensagem de resposta WS-Federation de início de sessão ("wsignin1.0"). Se a resposta for um pedido de limpeza de WS-Federation de encerramento ("wsignoutcleanup1.0"), CanReadSignInResponse(HttpRequestBase) processa a mensagem, termina o pedido e redireciona o cliente de acordo com os parâmetros de WS-Federation do pedido. Se a mensagem não for uma resposta de início de sessão ou um pedido de limpeza de desligamento, o módulo simplesmente devolve; caso contrário, executa os seguintes passos para processar a resposta de entrada.

  2. Chama o GetSecurityToken(HttpRequestBase) método para desserializar um SecurityToken objeto a partir do pedido.

  3. Eleva o SecurityTokenReceived evento. Pode cancelar processamento adicional ou modificar o token de segurança recebido num handler para este evento. Um handler é tipicamente usado para modificar as SecurityToken.ValidFrom propriedades de ou.SecurityToken.ValidTo

  4. Valida o token de segurança e cria um ClaimsPrincipal objeto a partir das reivindicações no token de segurança.

  5. Eleva o SecurityTokenValidated evento. Pode cancelar o processamento adicional ou modificar o principal dos sinistros num gestor para este evento.

  6. Utiliza o módulo de autenticação de sessão configurado (SAM) para criar um SessionSecurityToken objeto. (O SAM configurado é o SessionAuthenticationModule objeto devolvido pela FederatedAuthentication.SessionAuthenticationModule propriedade.) O token de sessão é criado usando o principal de reivindicações devolvido no passo 5. As SessionSecurityToken.ValidFrom propriedades e SessionSecurityToken.ValidTo são definidas usando as ValidFrom propriedades e ValidTo dos SecurityToken devolvidos no passo 3 e são validadas contra o tempo atual e a vida útil do token especificados por ou DefaultTokenLifetime pela TokenLifetime propriedade do SessionSecurityTokenHandler objeto na coleção de manipuladores de tokens usada pela WSFAM. A vida útil do token no handler de sessão pode ser especificada em configuração através do <elemento sessionTokenRequirement> . Nota: A PersistentSessionLifetime propriedade no handler de cookies configurada para o SAM não é utilizada.

  7. Chama o SetPrincipalAndWriteSessionToken método com o token de sessão para escrever o cookie da sessão. O SetPrincipalAndWriteSessionToken método levanta primeiro o SessionSecurityTokenCreated evento. Pode alterar as propriedades do token de sessão ou alterar se o cookie deve ser mantido num handler para este evento. Depois de o evento ser levantado, o método escreve o cookie usando o SAM.

    Note

    O SessionSecurityTokenHandler conjunto em configuração não é usado para escrever o cookie.

  8. Chama o OnSignedIn método para elevar o SignedIn evento.

  9. Chama o GetReturnUrlFromResponse método para obter a página RP para a qual redirecionar o cliente. Por defeito, este método lê o URL de retorno do parâmetro wctx na resposta de início de sessão. Para mais informações sobre como o WSFAM armazena o URL de retorno, consulte o CreateSignInRequest método.

Aplica-se a