FormsAuthenticationEventArgs.User Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das IPrincipal-Objekt ab, das der aktuellen Anforderung zugeordnet werden soll, oder legt dieses fest.
public:
property System::Security::Principal::IPrincipal ^ User { System::Security::Principal::IPrincipal ^ get(); void set(System::Security::Principal::IPrincipal ^ value); };
public System.Security.Principal.IPrincipal User { get; set; }
member this.User : System.Security.Principal.IPrincipal with get, set
Public Property User As IPrincipal
Eigenschaftswert
Das IPrincipal-Objekt, das mit der aktuellen Anforderung verknüpft werden soll.
Beispiele
Im folgenden Beispiel wird das FormsAuthentication_OnAuthenticate-Ereignis verwendet, um die User Eigenschaft des current HttpContext auf ein GenericPrincipal Objekt mit einem benutzerdefinierten Identityfestzulegen.
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
Hinweise
Sie können die User -Eigenschaft verwenden, um die User Eigenschaft des aktuellen HttpContext auf ein benutzerdefiniertes IPrincipal Objekt festzulegen.
Wenn Sie während des FormsAuthentication_OnAuthenticate-Ereignisses keinen Wert für die User Eigenschaft angeben, wird die Identität verwendet, die vom Formularauthentifizierungsticket im Cookie oder der URL angegeben wird.