Compartilhar via


CreatingCookieEventArgs.CustomCredential Propriedade

Definição

Obtém valores de autenticação adicionais que são fornecidos pelo usuário.

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

Valor da propriedade

Os valores personalizados necessários para autenticação, exceto nome de usuário e senha.

Exemplos

O exemplo a seguir mostra um manipulador de eventos para o CreatingCookie evento. O manipulador recupera valores de usuário do CreatingCookieEventArgs objeto para personalizar o cookie de autenticação. O valor passado na CustomCredential propriedade é armazenado na UserData propriedade do tíquete de autenticação de formulários.

Observação

Armazene a CustomCredential propriedade em um cookie somente quando souber que os dados na propriedade não são confidenciais. Usuários mal-intencionados podem acessar os valores no 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

Comentários

Você usa a CustomCredential propriedade para recuperar valores personalizados no tíquete de autenticação. A CustomCredential propriedade contém o valor passado para o Login método . Normalmente, essa propriedade é usada para passar valores personalizados que devem ser validados com o nome de usuário e a senha, como um número de identificação. Se mais de um valor for armazenado na propriedade , você deverá analisar a CustomCredential propriedade para recuperar valores.

Aplica-se a