DefaultAuthenticationEventArgs(HttpContext) Constructor

Definitie

Initialiseert een nieuw exemplaar van de DefaultAuthenticationEventArgs klasse.

public:
 DefaultAuthenticationEventArgs(System::Web::HttpContext ^ context);
public DefaultAuthenticationEventArgs(System.Web.HttpContext context);
new System.Web.Security.DefaultAuthenticationEventArgs : System.Web.HttpContext -> System.Web.Security.DefaultAuthenticationEventArgs
Public Sub New (context As HttpContext)

Parameters

context
HttpContext

De context voor de gebeurtenis.

Voorbeelden

In het volgende codevoorbeeld wordt de DefaultAuthentication_OnAuthenticate gebeurtenis gebruikt om te testen of de User eigenschap van de huidige HttpContext is null. Als de eigenschap is null, stelt het voorbeeld de User eigenschap van de huidige HttpContext in op een GenericPrincipal object waarbij de Identity eigenschap van het GenericPrincipal object een GenericIdentity object is met een Name eigenschapswaarde van 'standaard'.

Note

De DefaultAuthentication_OnAuthenticate gebeurtenis wordt gegenereerd vóór de AuthorizeRequest gebeurtenis. Als u de eigenschap van de User huidige HttpContext instelt op een aangepaste identiteit, kan dit van invloed zijn op het gedrag van uw toepassing. Als u bijvoorbeeld de FormsAuthentication klasse gebruikt en ervoor zorgt dat alleen geverifieerde gebruikers toegang hebben tot uw site door de authorization sectie te gebruiken en op te geven <deny users="?" />, zorgt u ervoor dat het deny element in dit voorbeeld wordt genegeerd, omdat de gebruiker een naam heeft, wat 'standaard' is. In plaats daarvan geeft u op <deny users="default" /> dat alleen geverifieerde gebruikers toegang hebben tot uw site.

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

Opmerkingen

Het DefaultAuthenticationModule object maakt een DefaultAuthenticationEventArgs object met behulp van de huidige HttpContext en geeft dit door aan de gebeurtenis DefaultAuthentication_OnAuthenticate .

U kunt de Context eigenschap van het DefaultAuthenticationEventArgs object dat is opgegeven aan de DefaultAuthentication_OnAuthenticate gebeurtenis gebruiken om de User eigenschap van de huidige HttpContext in te stellen op een aangepast IPrincipal object. Als u geen waarde opgeeft voor de User eigenschap waarnaar HttpContext wordt verwezen door de Context eigenschap, wordt de DefaultAuthenticationModuleUser eigenschap van het HttpContext object ingesteld op een GenericPrincipal object dat geen gebruikersgegevens bevat.

De DefaultAuthentication_OnAuthenticate gebeurtenis wordt gegenereerd na de AuthenticateRequest gebeurtenis en vóór de AuthorizeRequest gebeurtenis. Als u een authorization sectie hebt die afhankelijk is van de gebruikersnaam om toegang tot uw toepassing te weigeren of toe te staan, kan het wijzigen van de User eigenschap van de huidige HttpContext invloed hebben op het gedrag van uw toepassing. Zorg ervoor dat de gebruikersnaam die u tijdens de DefaultAuthentication_OnAuthenticate gebeurtenis instelt, wordt overwogen wanneer u de authorization sectie in uw configuratie opgeeft.

Van toepassing op

Zie ook