SessionAuthenticationModule.SessionSecurityTokenReceived Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Ocorre quando um token de segurança de sessão foi lido de um cookie.
public:
event EventHandler<System::IdentityModel::Services::SessionSecurityTokenReceivedEventArgs ^> ^ SessionSecurityTokenReceived;
public event EventHandler<System.IdentityModel.Services.SessionSecurityTokenReceivedEventArgs> SessionSecurityTokenReceived;
member this.SessionSecurityTokenReceived : EventHandler<System.IdentityModel.Services.SessionSecurityTokenReceivedEventArgs>
Public Custom Event SessionSecurityTokenReceived As EventHandler(Of SessionSecurityTokenReceivedEventArgs)
Public Event SessionSecurityTokenReceived As EventHandler(Of SessionSecurityTokenReceivedEventArgs)
Tipo de evento
Exemplos
O código a seguir mostra um manipulador para o SessionSecurityTokenReceived evento implementado no arquivo global.asax.cs de um aplicativo Web ASP.NET. Você também deve adicionar o manipulador ao evento. Um exemplo mais completo é mostrado no SessionAuthenticationModule tópico de visão geral.
void SessionAuthenticationModule_SessionSecurityTokenReceived(object sender, SessionSecurityTokenReceivedEventArgs e)
{
System.Diagnostics.Trace.WriteLine("Handling SessionSecurityTokenReceived event");
}
Comentários
O SessionSecurityTokenReceived evento é gerado de dentro do OnAuthenticateRequest método depois que um token de sessão (SessionSecurityToken) foi lido com êxito do cookie de sessão.
Você pode usar esse evento para modificar as propriedades do token de sessão antes que ele seja passado mais adiante ao longo do pipeline e seja usado para autenticar a entidade que está fazendo a solicitação (usuário). Um dos cenários mais comuns envolve a modificação do tempo de expiração da sessão (acessível por meio da SessionSecurityToken.ValidTo propriedade) para substituir o tempo de expiração da sessão definido na configuração por meio do lifetime atributo do <elemento sessionTokenRequirement> . Ao modificar essa propriedade em cada solicitação, você pode implementar uma sessão deslizante; ou seja, uma sessão na qual o tempo de vida é estendido sempre que o usuário acessa o site.
Em um manipulador de eventos, você pode acessar o token por meio da SessionSecurityTokenReceivedEventArgs.SessionToken propriedade. Depois de modificar o token, você pode garantir que ele seja gravado de volta no cookie definindo como SessionSecurityTokenReceivedEventArgs.ReissueCookietrue. Por fim, o SessionSecurityTokenReceived evento é um evento cancelável e você pode definir a Cancel propriedade da SessionSecurityTokenReceivedEventArgs solicitação para anular o processamento adicional da solicitação.