DefaultAuthenticationEventHandler Delegato
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta il metodo che consente di gestire l'evento DefaultAuthentication_OnAuthenticate di una classe DefaultAuthenticationModule.
public delegate void DefaultAuthenticationEventHandler(System::Object ^ sender, DefaultAuthenticationEventArgs ^ e);
public delegate void DefaultAuthenticationEventHandler(object sender, DefaultAuthenticationEventArgs e);
type DefaultAuthenticationEventHandler = delegate of obj * DefaultAuthenticationEventArgs -> unit
Public Delegate Sub DefaultAuthenticationEventHandler(sender As Object, e As DefaultAuthenticationEventArgs)
Parametri
- sender
- Object
Origine dell'evento.
Oggetto DefaultAuthenticationEventArgs che contiene i dati dell'evento.
Esempio
Nell'esempio di codice seguente viene usato l'evento DefaultAuthentication_OnAuthenticate per verificare se la User proprietà dell'oggetto corrente HttpContext è null
. Se la proprietà è null
, l'esempio imposta la User proprietà dell'oggetto corrente HttpContext su un GenericPrincipal oggetto, in cui l'oggetto IdentityGenericPrincipal è un GenericIdentity con valore Name "default".
Nota
L'evento DefaultAuthentication_OnAuthenticate viene generato prima dell'evento AuthorizeRequest . Di conseguenza, se si imposta la User proprietà dell'oggetto corrente HttpContext su un'identità personalizzata, può influire sul comportamento dell'applicazione. Ad esempio, se si usa la FormsAuthentication classe e si garantisce che solo gli utenti autenticati abbiano accesso al sito, usando la authorization
sezione e specificando <deny users="?" />
, questo esempio causerà che l'elemento deny
venga ignorato, poiché l'utente avrà un nome, ovvero "default". È invece necessario specificare <deny users="default" />
per assicurarsi che solo gli utenti autenticati possano accedere al sito.
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
Commenti
Il DefaultAuthenticationEventHandler delegato è definito per l'evento Authenticate della DefaultAuthenticationModule classe. È possibile accedere all'evento Authenticate della DefaultAuthenticationModule classe specificando una subroutine denominata DefaultAuthentication_OnAuthenticate nel file Global.asax per l'applicazione ASP.NET. L'evento Authenticate viene generato dopo l'evento e viene usato per assicurarsi che la User proprietà dell'oggetto AuthenticateRequest corrente HttpContext venga popolata con un IPrincipal oggetto.
È possibile utilizzare la Context proprietà dell'oggetto fornito all'evento DefaultAuthenticationEventArgsDefaultAuthentication_OnAuthenticate per impostare la User proprietà dell'oggetto corrente HttpContext su un oggetto personalizzato IPrincipal . Se non si specifica un valore per la proprietà dell'oggetto HttpContext fornito durante l'evento UserDefaultAuthentication_OnAuthenticate, la DefaultAuthenticationModuleUser proprietà dell'oggetto HttpContext viene impostata su un GenericPrincipal oggetto che non contiene informazioni utente.
L'evento DefaultAuthentication_OnAuthenticate viene generato dopo l'evento e prima dell'evento AuthenticateRequestAuthorizeRequest . Se si dispone di una authorization
sezione che dipende dal nome utente da negare o consentire l'accesso all'applicazione, la modifica User della proprietà dell'oggetto corrente HttpContext può influire sul comportamento dell'applicazione. Assicurarsi che il nome utente impostato durante l'evento DefaultAuthentication_OnAuthenticate venga considerato quando si specifica la authorization
sezione nella configurazione.
Metodi di estensione
GetMethodInfo(Delegate) |
Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato. |