DefaultAuthenticationModule Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Garantiza que un objeto de autenticación está presente en el contexto. Esta clase no puede heredarse.
public ref class DefaultAuthenticationModule sealed : System::Web::IHttpModule
public sealed class DefaultAuthenticationModule : System.Web.IHttpModule
type DefaultAuthenticationModule = class
interface IHttpModule
Public NotInheritable Class DefaultAuthenticationModule
Implements IHttpModule
- Herencia
-
DefaultAuthenticationModule
- Implementaciones
Ejemplos
En el ejemplo siguiente se usa el evento DefaultAuthentication_OnAuthenticate para comprobar si la User propiedad de la instancia actual HttpContext es null
. Si la User propiedad es null
, el ejemplo establece la User propiedad de la instancia actual HttpContext en un GenericPrincipal objeto donde el GenericPrincipalIdentity del objeto es un GenericIdentity con un Name valor de "default".
Nota
El evento DefaultAuthentication_OnAuthenticate se genera antes del AuthorizeRequest evento . Como resultado, si establece la User propiedad de la instancia actual HttpContext en una identidad personalizada, puede afectar al comportamiento de la aplicación. Por ejemplo, si usa la FormsAuthentication clase y especifica <deny users="?" />
en la sección de configuración de autorización para asegurarse de que solo los usuarios autenticados tienen acceso al sitio, este ejemplo hará que se omita el elemento deny , ya que el usuario tendrá un nombre, que es "predeterminado". En su lugar, debe especificar <deny users="default" />
para asegurarse de que solo los usuarios autenticados puedan acceder al sitio.
public void DefaultAuthentication_OnAuthenticate(object sender,
DefaultAuthenticationEventArgs args)
{
if (args.Context.User == null)
args.Context.User =
new System.Security.Principal.GenericPrincipal(
new System.Security.Principal.GenericIdentity("default"),
new String[0]);
}
Public Sub DefaultAuthentication_OnAuthenticate(sender As Object, _
args As DefaultAuthenticationEventArgs)
If args.Context.User Is Nothing Then
args.Context.User = _
new System.Security.Principal.GenericPrincipal( _
new System.Security.Principal.GenericIdentity("default"), _
new String(0) {})
End If
End Sub
Comentarios
DefaultAuthenticationModule garantiza que la User propiedad de la instancia actual HttpContext se establece en un IPrincipal objeto para cada solicitud.
DefaultAuthenticationModule examina la User propiedad después del AuthenticateRequest evento y antes del AuthorizeRequest evento . Si la User propiedad es null
, establece DefaultAuthenticationModule la User propiedad en un GenericPrincipal objeto que no contiene información de usuario.
Si el módulo de autenticación establece la StatusCode propiedad en 401, representará DefaultAuthenticationModule una página de error de acceso denegado. Si el valor de la StatusCode propiedad se establece en un valor mayor que 200, el DefaultAuthenticationModule objeto finalizará la solicitud. En ese caso, solo se llama a los módulos HTTP que se suscriben al EndRequest evento antes de completar la solicitud actual.
DefaultAuthenticationModule expone un Authenticate evento . Puede usar este evento para proporcionar un objeto personalizado IPrincipal para la User propiedad de la instancia actual HttpContext . Para Authenticate acceder al evento, se especifica un evento denominado DefaultAuthentication_OnAuthenticate en el archivo Global.asax de la aplicación.
Constructores
DefaultAuthenticationModule() |
Inicializa una nueva instancia de la clase DefaultAuthenticationModule. |
Métodos
Dispose() |
Libera todos los recursos usados por DefaultAuthenticationModule, excepto la memoria. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
Init(HttpApplication) |
Inicializa el objeto DefaultAuthenticationModule. |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Eventos
Authenticate |
Aparece después de que se ha autenticado la solicitud. |