Bagikan melalui


CreatingCookieEventArgs.CustomCredential Properti

Definisi

Mendapatkan nilai autentikasi tambahan yang disediakan oleh pengguna.

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

Nilai Properti

Nilai kustom yang diperlukan untuk autentikasi, selain nama pengguna dan kata sandi.

Contoh

Contoh berikut menunjukkan penanganan aktivitas untuk peristiwa tersebut CreatingCookie . Handler mengambil nilai pengguna dari CreatingCookieEventArgs objek untuk menyesuaikan cookie autentikasi. Nilai yang CustomCredential diteruskan dalam properti disimpan di UserData properti tiket autentikasi formulir.

Catatan

CustomCredential Simpan properti dalam cookie hanya ketika Anda tahu bahwa data di properti tidak sensitif. Pengguna berbahaya dapat mengakses nilai dalam 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

Keterangan

Anda menggunakan CustomCredential properti untuk mengambil nilai kustom dalam tiket autentikasi. Properti CustomCredential berisi nilai yang diteruskan ke Login metode . Biasanya, properti ini digunakan untuk meneruskan nilai kustom yang harus divalidasi dengan nama pengguna dan kata sandi, seperti nomor identifikasi. Jika lebih dari satu nilai disimpan dalam properti , Anda harus mengurai CustomCredential properti untuk mengambil nilai.

Berlaku untuk