다음을 통해 공유


SessionAuthenticationModule.SessionSecurityTokenReceived 이벤트

정의

쿠키에서 세션 보안 토큰을 읽을 때 발생합니다.

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) 

이벤트 유형

예제

다음 코드는 ASP.NET 웹 애플리케이션의 SessionSecurityTokenReceived global.asax.cs 파일에 구현된 이벤트에 대한 처리기를 보여줍니다. 또한 이벤트에 처리기를 추가해야 합니다. 개요 항목에 보다 완전한 예제가 SessionAuthenticationModule 나와 있습니다.

void SessionAuthenticationModule_SessionSecurityTokenReceived(object sender, SessionSecurityTokenReceivedEventArgs e)
{
    System.Diagnostics.Trace.WriteLine("Handling SessionSecurityTokenReceived event");
}

설명

세션 SessionSecurityTokenReceived 토큰(SessionSecurityToken)이 세션 쿠키에서 성공적으로 읽은 후 메서드 내에서 OnAuthenticateRequest 이벤트가 발생합니다.

이 이벤트를 사용하여 파이프라인을 따라 추가로 전달되고 요청(사용자)을 만드는 엔터티를 인증하는 데 사용되기 전에 세션 토큰의 속성을 수정할 수 있습니다. 가장 일반적인 시나리오 중 하나는 sessionTokenRequirement> 요소의 특성을 통해 구성에서 설정된 세션 만료 시간을 재정의<하도록 세션 만료 시간(속성을 통해 SessionSecurityToken.ValidTolifetime 액세스할 수 있음)을 수정하는 것입니다. 각 요청에서 이 속성을 수정하여 슬라이딩 세션을 구현할 수 있습니다. 즉, 사용자가 사이트에 액세스할 때마다 수명이 연장되는 세션입니다.

이벤트 처리기에서 속성을 통해 SessionSecurityTokenReceivedEventArgs.SessionToken 토큰에 액세스할 수 있습니다. 토큰을 수정한 후에는 토큰을 다음으로 설정 SessionSecurityTokenReceivedEventArgs.ReissueCookietrue하여 쿠키에 다시 기록되도록 할 수 있습니다. 마지막으로, SessionSecurityTokenReceived 이벤트는 취소 가능한 이벤트이며 요청의 SessionSecurityTokenReceivedEventArgs 추가 처리를 중단하도록 해당 속성을 설정할 Cancel 수 있습니다.

적용 대상