DefaultAuthenticationEventArgs(HttpContext) Konstruktor

Definition

Initierar en ny instans av DefaultAuthenticationEventArgs klassen.

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)

Parametrar

context
HttpContext

Kontexten för händelsen.

Exempel

I följande kodexempel används händelsen DefaultAuthentication_OnAuthenticate för att testa om User egenskapen för den aktuella HttpContext är null. Om egenskapen är nullanger User exemplet egenskapen för den aktuella HttpContext egenskapen till ett GenericPrincipal objekt där Identity egenskapen GenericPrincipal för objektet är ett GenericIdentity objekt med Name egenskapsvärdet "default".

Note

Händelsen DefaultAuthentication_OnAuthenticate utlöses före händelsen AuthorizeRequest . Om du anger User egenskapen för den aktuella HttpContext till en anpassad identitet kan det därför påverka programmets beteende. Om du till exempel använder FormsAuthentication klassen och ser till att endast autentiserade användare har åtkomst till din webbplats, genom att använda authorization avsnittet och ange <deny users="?" />, kommer elementet deny i det här exemplet att ignoreras, eftersom användaren har ett namn som är "standard". I stället anger <deny users="default" /> du för att se till att endast autentiserade användare kan komma åt din webbplats.

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

Kommentarer

Objektet DefaultAuthenticationModule konstruerar ett DefaultAuthenticationEventArgs objekt med hjälp av den aktuella HttpContext och skickar det till händelsen DefaultAuthentication_OnAuthenticate .

Du kan använda Context egenskapen för det DefaultAuthenticationEventArgs objekt som anges till händelsen DefaultAuthentication_OnAuthenticate för att ange User egenskapen för den aktuella HttpContext till ett anpassat IPrincipal objekt. Om du inte anger ett värde för egenskapen för User egenskapen som refereras av HttpContext egenskapen anger ContextDefaultAuthenticationModule egenskapen för till User ett HttpContext objekt som inte innehåller någon användarinformationGenericPrincipal.

Händelsen DefaultAuthentication_OnAuthenticate utlöses efter AuthenticateRequest händelsen och före händelsen AuthorizeRequest . Om du har ett authorization avsnitt som är beroende av användarnamnet för att neka eller tillåta åtkomst till ditt program kan det påverka programmets beteende om du ändrar User egenskapen för den aktuella HttpContext . Se till att användarnamnet som du angav under DefaultAuthentication_OnAuthenticate-händelsen beaktas när du anger authorization avsnittet i konfigurationen.

Gäller för

Se även