Bagikan melalui


FormsAuthenticationModule.Authenticate Kejadian

Definisi

Terjadi ketika aplikasi mengautentikasi permintaan saat ini.

public:
 event System::Web::Security::FormsAuthenticationEventHandler ^ Authenticate;
public event System.Web.Security.FormsAuthenticationEventHandler Authenticate;
member this.Authenticate : System.Web.Security.FormsAuthenticationEventHandler 
Public Custom Event Authenticate As FormsAuthenticationEventHandler 

Jenis Acara

Contoh

Contoh kode berikut menggunakan peristiwa FormsAuthentication_OnAuthenticate untuk mengatur User properti saat ini HttpContext ke GenericPrincipal objek yang memiliki kustom Identity.

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

Keterangan

Acara Authenticate dinaikkan selama AuthenticateRequest acara.

Anda dapat menangani Authenticate peristiwa FormsAuthenticationModule kelas dengan menentukan subroutine bernama FormsAuthentication_OnAuthenticate dalam file Global.asax untuk aplikasi ASP.NET Anda.

Anda dapat menggunakan properti yang FormsAuthenticationEventArgsUser disediakan ke peristiwa FormsAuthentication_OnAuthenticate untuk mengatur User properti saat ini HttpContext ke objek kustom IPrincipal . Jika Anda tidak menentukan nilai untuk User properti selama peristiwa FormsAuthentication_OnAuthenticate , identitas yang disediakan oleh tiket autentikasi formulir di cookie atau URL akan digunakan.

Peristiwa FormsAuthentication_OnAuthenticate hanya dinaikkan ketika mode autentikasi diatur ke Forms dalam elemen Elemen autentikasi (Skema Pengaturan ASP.NET) dari file konfigurasi aplikasi dan FormsAuthenticationModule merupakan modul HTTP aktif untuk aplikasi.

Berlaku untuk

Lihat juga