FormsAuthenticationEventHandler Delegera
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar den metod som hanterar den FormsAuthentication_OnAuthenticate händelsen för en FormsAuthenticationModule.
public delegate void FormsAuthenticationEventHandler(System::Object ^ sender, FormsAuthenticationEventArgs ^ e);
public delegate void FormsAuthenticationEventHandler(object sender, FormsAuthenticationEventArgs e);
type FormsAuthenticationEventHandler = delegate of obj * FormsAuthenticationEventArgs -> unit
Public Delegate Sub FormsAuthenticationEventHandler(sender As Object, e As FormsAuthenticationEventArgs)
Parametrar
- sender
- Object
Källan till händelsen.
En FormsAuthenticationEventArgs som innehåller händelsedata.
Exempel
I följande kodexempel används händelsen FormsAuthentication_OnAuthenticate för att ange User egenskapen för den aktuella HttpContext till ett GenericPrincipal objekt med en anpassad Identity.
public void FormsAuthentication_OnAuthenticate(object sender, FormsAuthenticationEventArgs args)
{
if (FormsAuthentication.CookiesSupported)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
try
{
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(
Request.Cookies[FormsAuthentication.FormsCookieName].Value);
args.User = new System.Security.Principal.GenericPrincipal(
new Samples.AspNet.Security.MyFormsIdentity(ticket),
new string[0]);
}
catch (Exception e)
{
// Decrypt method failed.
}
}
}
else
{
throw new HttpException("Cookieless Forms Authentication is not " +
"supported for this application.");
}
}
Public Sub FormsAuthentication_OnAuthenticate(sender As Object, _
args As FormsAuthenticationEventArgs)
If FormsAuthentication.CookiesSupported Then
If Not Request.Cookies(FormsAuthentication.FormsCookieName) Is Nothing Then
Try
Dim ticket As FormsAuthenticationTicket = FormsAuthentication.Decrypt( _
Request.Cookies(FormsAuthentication.FormsCookieName).Value)
args.User = New System.Security.Principal.GenericPrincipal( _
New Samples.AspNet.Security.MyFormsIdentity(ticket), _
New String(0) {})
Catch e As HttpException
' Decrypt method failed.
End Try
End If
Else
Throw New Exception("Cookieless Forms Authentication is not " & _
"supported for this application.")
End If
End Sub
Kommentarer
Ombudet FormsAuthenticationEventHandler definieras för Authenticate händelsen för FormsAuthenticationModule klassen. Du kan komma åt händelsen Authenticate för klassen FormsAuthenticationModule genom att ange en underrutin med namnet FormsAuthentication_OnAuthenticate i filen Global.asax för ditt ASP.NET-program. Händelsen Authenticate utlöses under AuthenticateRequest händelsen.
FormsAuthenticationModule Konstruerar ett FormsAuthenticationEventArgs objekt med hjälp av den aktuella HttpContext och skickar det till händelsen FormsAuthentication_OnAuthenticate.
Du kan använda User egenskapen för det FormsAuthenticationEventArgs objekt som anges till händelsen FormsAuthentication_OnAuthenticate för att ange User egenskapen för den aktuella HttpContext till ett anpassat IPrincipal objekt. Om du inte anger något värde för User egenskapen under händelsen FormsAuthentication_OnAuthenticate används identiteten som tillhandahålls av formulärautentiseringsbiljetten i cookien eller URL:en.
Händelsen FormsAuthentication_OnAuthenticate utlöses endast när autentiseringen Mode är inställd på Forms och FormsAuthenticationModule är en aktiv HTTP-modul för programmet.
Tilläggsmetoder
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
Hämtar ett objekt som representerar den metod som representeras av det angivna ombudet. |