WindowsAuthenticationModule Class
Collapse the table of content
Expand the table of content

WindowsAuthenticationModule Class


Sets the identity of the user for an ASP.NET application when Windows authentication is enabled. This class cannot be inherited.

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


public sealed class WindowsAuthenticationModule : IHttpModule


Creates an instance of the WindowsAuthenticationModule class.


Releases all resources, other than memory, used by the WindowsAuthenticationModule.


Determines whether the specified object is equal to the current object.(Inherited from Object.)


Serves as the default hash function. (Inherited from Object.)


Gets the Type of the current instance.(Inherited from Object.)


Initializes the WindowsAuthenticationModule object.


Returns a string that represents the current object.(Inherited from Object.)


Occurs when the application authenticates the current request.

When the authentication Mode is set to Windows, the WindowsAuthenticationModule sets the User property of the current HttpContext to an IPrincipal object that represents the Windows identity supplied by IIS for the current request. If IIS uses anonymous authentication, then the WindowsAuthenticationModule uses the identity returned by the GetAnonymous method.

The WindowsAuthenticationModule exposes an Authenticate event that enables you to provide a custom IPrincipal object for the User property of the current HttpContext. The Authenticate event is accessed by specifying a subroutine named WindowsAuthentication_OnAuthenticate in the Global.asax file for your ASP.NET application.


In IIS 7.0, using the WindowsAuthenticationModule class with the FormsAuthenticationModule class is not supported. For more information about compatibility issues in Integrated mode, 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.

.NET Framework
Available since 1.1

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
© 2015 Microsoft