Mono Class Library: System.Net NamespaceSystem.Net.IAuthenticationModule |
See Also: IAuthenticationModule Members
|
The System.Net.IAuthenticationModule interface defines the properties and methods that types are required to implement to handle client authentication. Types that implement this interface are called authentication modules. In addition to implementing this interface, an authentication module implements an authentication protocol, such as the Kerberos protocol. The IAuthenticationModule.AuthenticationType property value is a case-insensitive string that typically indicates the protocol implemented by the module. Each authentication module registered with the authentication manager is required to have a unique IAuthenticationModule.AuthenticationType . The following string values are reserved for use by modules implementing the indicated protocols:
AuthenticationType Protocol "basic" Basic as defined by IETF RFC 2617 "digest" Digest access as defined by IETF RFC 2617 "kerberos" Kerberos as defined by IETF RFC 1510 Note:[Edit]Authentication modules are registered with the authentication manager (System.Net.AuthenticationManager ) by calling the AuthenticationManager.Register(IAuthenticationModule) method. When the authentication manager receives an authentication request, registered authentication modules are given the opportunity to handle the authentication in their IAuthenticationModule.Authenticate(string, WebRequest, ICredentials) method. Similarly, when a client wishes to avoid waiting for the server to request authentication, it can request preauthentication information to send with a request. If the IAuthenticationModule.CanPreAuthenticate property of a registered module returns true, it is among the modules that are given the opportunity to provide the preauthentication information via the IAuthenticationModule.PreAuthenticate(WebRequest, ICredentials) method.
Not all modules receive all authentication and preauthentication requests. The authentication manager searches for an authentication module by invoking the IAuthenticationModule.Authenticate(string, WebRequest, ICredentials) or IAuthenticationModule.PreAuthenticate(WebRequest, ICredentials) method of each registered module in the order in which it was registered. Once a module returns a System.Net.Authorization instance, indicating that it handles the authentication, the authentication manager terminates the search.
Namespace: System.Net
Assembly: System (in System.dll)
Assembly Versions: 1.0.x.x, 1.0.5000.0, 2.0.0.0