WSFederationAuthenticationModule.OnAuthenticateRequest Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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:
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.
Chama o GetSecurityToken(HttpRequestBase) método para desserializar um SecurityToken objeto a partir do pedido.
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
Valida o token de segurança e cria um ClaimsPrincipal objeto a partir das reivindicações no token de segurança.
Eleva o SecurityTokenValidated evento. Pode cancelar o processamento adicional ou modificar o principal dos sinistros num gestor para este evento.
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.
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.
Chama o OnSignedIn método para elevar o SignedIn evento.
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.