Share via


CreatingCookieEventArgs.CustomCredential Eigenschaft

Definition

Ruft zusätzliche, vom Benutzer bereitgestellte Authentifizierungswerte ab.

public:
 property System::String ^ CustomCredential { System::String ^ get(); };
public string CustomCredential { get; }
member this.CustomCredential : string
Public ReadOnly Property CustomCredential As String

Eigenschaftswert

Die benutzerdefinierten, für die Authentifizierung erforderlichen Werte, außer Benutzername und Kennwort.

Beispiele

Das folgende Beispiel zeigt einen Ereignishandler für das CreatingCookie Ereignis. Der Handler ruft Benutzerwerte aus dem CreatingCookieEventArgs -Objekt ab, um das Authentifizierungscookies anzupassen. Der in der CustomCredential -Eigenschaft übergebene Wert wird in der UserData -Eigenschaft des Formularauthentifizierungstickets gespeichert.

Hinweis

Speichern Sie die CustomCredential Eigenschaft nur in einem Cookie, wenn Sie wissen, dass die Daten in der Eigenschaft nicht vertraulich sind. Böswillige Benutzer können auf die Werte im Cookie zugreifen.

void AuthenticationService_CreatingCookie(object sender, 
    System.Web.ApplicationServices.CreatingCookieEventArgs e)
{
    FormsAuthenticationTicket ticket = new
          FormsAuthenticationTicket
            (1,
             e.UserName,
             DateTime.Now,
             DateTime.Now.AddMinutes(30),
             e.IsPersistent,
             e.CustomCredential,
             FormsAuthentication.FormsCookiePath);

    string encryptedTicket =
         FormsAuthentication.Encrypt(ticket);

    HttpCookie cookie = new HttpCookie
         (FormsAuthentication.FormsCookieName,
          encryptedTicket);
    cookie.Expires = DateTime.Now.AddMinutes(30);

    HttpContext.Current.Response.Cookies.Add(cookie);
    e.CookieIsSet = true;
}
Sub AuthenticationService_CreatingCookie(ByVal sender As Object, _
                 ByVal e As System.Web.ApplicationServices.CreatingCookieEventArgs)
    Dim ticket As FormsAuthenticationTicket = New _
       FormsAuthenticationTicket _
        (1, _
         e.Username, _
         DateTime.Now, _
         DateTime.Now.AddMinutes(30), _
         e.IsPersistent, _
         e.CustomCredential, _
         FormsAuthentication.FormsCookiePath)
        
    Dim encryptedTicket As String = FormsAuthentication.Encrypt(ticket)
    
    Dim cookie As HttpCookie = New _
        HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket)
    cookie.Expires = DateTime.Now.AddMinutes(30)
    
    HttpContext.Current.Response.Cookies.Add(cookie)
    e.CookieIsSet = True
End Sub

Hinweise

Sie verwenden die CustomCredential -Eigenschaft, um benutzerdefinierte Werte im Authentifizierungsticket abzurufen. Die CustomCredential -Eigenschaft enthält den An die Login -Methode übergebenen Wert. In der Regel wird diese Eigenschaft verwendet, um benutzerdefinierte Werte zu übergeben, die mit dem Benutzernamen und kennwort überprüft werden müssen, z. B. einer Identifikationsnummer. Wenn mehr als ein Wert in der -Eigenschaft gespeichert ist, müssen Sie die CustomCredential -Eigenschaft analysieren, um Werte abzurufen.

Gilt für: