Share via


CreatingCookieEventArgs.CustomCredential Proprietà

Definizione

Ottiene valori di autenticazione aggiuntivi forniti dall'utente.

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

Valore della proprietà

Valori personalizzati necessari per l'autenticazione, diversi da nome utente e password.

Esempio

Nell'esempio seguente viene illustrato un gestore eventi per l'evento CreatingCookie . Il gestore recupera i valori utente dall'oggetto CreatingCookieEventArgs per personalizzare il cookie di autenticazione. Il valore passato nella CustomCredential proprietà viene archiviato nella UserData proprietà del ticket di autenticazione basata su form.

Nota

Archiviare la CustomCredential proprietà in un cookie solo quando si sa che i dati nella proprietà non sono sensibili. Gli utenti malintenzionati possono accedere ai valori nel cookie.

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

Commenti

Usare la CustomCredential proprietà per recuperare i valori personalizzati nel ticket di autenticazione. La CustomCredential proprietà contiene il valore passato al Login metodo . In genere, questa proprietà viene usata per passare valori personalizzati che devono essere convalidati con il nome utente e la password, ad esempio un numero di identificazione. Se nella proprietà vengono archiviati più valori, è necessario analizzare la CustomCredential proprietà per recuperare i valori.

Si applica a