AuthenticationSchemeSelector Délégué
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Sélectionne le schéma d’authentification d’une instance de HttpListener.
public delegate System::Net::AuthenticationSchemes AuthenticationSchemeSelector(HttpListenerRequest ^ httpRequest);
public delegate System.Net.AuthenticationSchemes AuthenticationSchemeSelector(HttpListenerRequest httpRequest);
type AuthenticationSchemeSelector = delegate of HttpListenerRequest -> AuthenticationSchemes
Public Delegate Function AuthenticationSchemeSelector(httpRequest As HttpListenerRequest) As AuthenticationSchemes
Paramètres
- httpRequest
- HttpListenerRequest
Instance de HttpListenerRequest pour laquelle un schéma d’authentification doit être sélectionné.
Valeur renvoyée
Une des valeurs AuthenticationSchemes qui indique la méthode d’authentification à utiliser pour la demande du client spécifiée.
Exemples
L’exemple suivant utilise une instance de ce type pour définir la AuthenticationSchemeSelectorDelegate propriété .
// Set up a listener.
HttpListener listener = new HttpListener();
HttpListenerPrefixCollection prefixes = listener.Prefixes;
prefixes.Add(@"http://localhost:8080/");
prefixes.Add(@"http://contoso.com:8080/");
// Specify the authentication delegate.
listener.AuthenticationSchemeSelectorDelegate =
new AuthenticationSchemeSelector (AuthenticationSchemeForClient);
// Start listening for requests and process them
// synchronously.
listener.Start();
' Set up a listener.
Dim listener As New HttpListener()
Dim prefixes As HttpListenerPrefixCollection = listener.Prefixes
prefixes.Add("http://localhost:8080/")
prefixes.Add("http://contoso.com:8080/")
' Specify the authentication delegate.
listener.AuthenticationSchemeSelectorDelegate = New AuthenticationSchemeSelector(AddressOf AuthenticationSchemeForClient)
' Start listening for requests and process them
' synchronously.
listener.Start()
L’exemple suivant montre l’implémentation de la méthode appelée par le AuthenticationSchemeSelector délégué dans l’exemple précédent.
static AuthenticationSchemes AuthenticationSchemeForClient(HttpListenerRequest request)
{
Console.WriteLine("Client authentication protocol selection in progress...");
// Do not authenticate local machine requests.
if (request.RemoteEndPoint.Address.Equals (IPAddress.Loopback))
{
return AuthenticationSchemes.None;
}
else
{
return AuthenticationSchemes.IntegratedWindowsAuthentication;
}
}
Private Shared Function AuthenticationSchemeForClient(ByVal request As HttpListenerRequest) As AuthenticationSchemes
Console.WriteLine("Client authentication protocol selection in progress...")
' Do not authenticate local machine requests.
If request.RemoteEndPoint.Address.Equals(IPAddress.Loopback) Then
Return AuthenticationSchemes.None
Else
Return AuthenticationSchemes.IntegratedWindowsAuthentication
End If
End Function
Remarques
Les délégués de ce type sont utilisés par HttpListener les instances pour sélectionner un schéma d’authentification en fonction des caractéristiques d’une demande.
Un AuthenticationSchemeSelector délégué se voit transmettre un HttpListenerRequest objet pour chaque requête entrante qui n’a pas fourni d’informations d’authentification. La méthode appelée par le délégué utilise l’objet HttpListenerRequest et toute autre information disponible pour déterminer le schéma d’authentification à exiger. Le délégué est spécifié à l’aide de la AuthenticationSchemeSelectorDelegate propriété .
Méthodes d’extension
GetMethodInfo(Delegate) |
Obtient un objet qui représente la méthode représentée par le délégué spécifié. |