Freigeben über


FormsAuthenticationEventArgs.User Eigenschaft

Definition

Dient zum Abrufen oder Festlegen des IPrincipal Objekts, das der aktuellen Anforderung zugeordnet werden soll.

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 der aktuellen Anforderung zugeordnet werden soll.

Beispiele

Im folgenden Beispiel wird das FormsAuthentication_OnAuthenticate-Ereignis verwendet, um die User Eigenschaft des aktuellen HttpContext Objekts auf ein GenericPrincipal Objekt mit einer benutzerdefinierten IdentityEigenschaft festzulegen.

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

Mit der User Eigenschaft können Sie die User Eigenschaft des aktuellen HttpContext Objekts auf ein benutzerdefiniertes IPrincipal Objekt festlegen.

Wenn Sie während des FormsAuthentication_OnAuthenticate-Ereignisses keinen Wert für die User Eigenschaft angeben, wird die vom Formularauthentifizierungsticket im Cookie oder der URL angegebene Identität verwendet.

Gilt für:

Weitere Informationen