WindowsAuthenticationModule.Authenticate Event

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Occurs when the application authenticates the current request.

Namespace:   System.Web.Security
Assembly:  System.Web (in System.Web.dll)

public event WindowsAuthenticationEventHandler Authenticate

The Authenticate event is raised during the AuthenticateRequest event.

You can access the Authenticate event of the WindowsAuthenticationModule class by specifying a subroutine named WindowsAuthentication_OnAuthenticate in the Global.asax file for your ASP.NET application.

You can use the User property of the WindowsAuthenticationEventArgs object supplied to the WindowsAuthentication_OnAuthenticate event to set the User property of the current HttpContext to a custom IPrincipal object. If you do not specify a value for the User property during the WindowsAuthentication_OnAuthenticate event, the Windows identity supplied by IIS is used as the identity for the current request. If IIS uses anonymous authentication, then the Identity property is set to the identity returned by the GetAnonymous method.

The WindowsAuthentication_OnAuthenticate event is raised only when the authentication Mode is set to Windows and the WindowsAuthenticationModule is an active HTTP module for the application.

System_CAPS_noteNote

In IIS 7.0 running in Integrated Mode, the Authenticate event of the WindowsAuthenticationModule is not raised when both the ASP.NET WindowsAuthenticationModule and the IIS AnonymousAuthenticationModule modules are enabled. In this scenario, to receive authentication notification, subscribe to the AuthenticateRequest event of the HttpApplication instance. For more information about compatibility issues in Integrated modes, see Moving an ASP.NET Application from IIS 6.0 to IIS 7.0.

The following code example uses the WindowsAuthentication_OnAuthenticate event to set the User property of the current HttpContext to a custom IPrincipal object.

public void WindowsAuthentication_OnAuthenticate(object sender, WindowsAuthenticationEventArgs args)
{
  if (!args.Identity.IsAnonymous)
  {
    args.User = new Samples.AspNet.Security.MyPrincipal(args.Identity);
  }
}

.NET Framework
Available since 1.1
Return to top
Show: