SessionAuthenticationModule.SessionSecurityTokenReceived 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
已經從 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)
事件類型
範例
下列程式代碼顯示 ASP.NET Web 應用程式global.asax.cs檔案中實作之 事件的處理程式 SessionSecurityTokenReceived 。 您也必須將處理程式新增至 事件。 概觀主題會顯示 SessionAuthenticationModule 更完整的範例。
void SessionAuthenticationModule_SessionSecurityTokenReceived(object sender, SessionSecurityTokenReceivedEventArgs e)
{
System.Diagnostics.Trace.WriteLine("Handling SessionSecurityTokenReceived event");
}
備註
在SessionSecurityTokenReceived會話令牌 () SessionSecurityToken 已成功從會話 Cookie 讀取之後,從方法內OnAuthenticateRequest引發事件。
您可以使用這個事件來修改會話令牌的屬性,再透過管線進一步傳遞,並用來驗證發出要求 (使用者) 的實體。 最常見的案例之一是修改會話到期時間 (可透過 SessionSecurityToken.ValidTo 屬性存取) ,以透過 lifetime
sessionTokenRequirement> 元素的 屬性覆寫組態中所設定的<會話到期時間。 藉由在每個要求上修改此屬性,您可以實作滑動會話;也就是說,每次使用者存取網站時,都會延長存留期的會話。
在事件處理程式中,您可以透過 SessionSecurityTokenReceivedEventArgs.SessionToken 屬性存取令牌。 修改令牌之後,您可以將 設定SessionSecurityTokenReceivedEventArgs.ReissueCookietrue
回 Cookie,以確保它會寫回 Cookie。 最後,SessionSecurityTokenReceived事件是可取消的事件,您可以將 的 SessionSecurityTokenReceivedEventArgs 屬性設定Cancel為中止進一步處理要求。