AuthenticationSchemeSelector Gedelegeerde
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Selecteert het verificatieschema voor een HttpListener exemplaar.
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
Parameters
- httpRequest
- HttpListenerRequest
Het HttpListenerRequest exemplaar waarvoor u een verificatieschema wilt selecteren.
Retourwaarde
Een van de AuthenticationSchemes waarden die de verificatiemethode aangeeft die moet worden gebruikt voor de opgegeven clientaanvraag.
Voorbeelden
In het volgende voorbeeld wordt een exemplaar van dit type gebruikt om de AuthenticationSchemeSelectorDelegate eigenschap in te stellen.
// 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()
In het volgende voorbeeld ziet u de implementatie van de methode die in het vorige voorbeeld door de AuthenticationSchemeSelector gemachtigde is aangeroepen.
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
Opmerkingen
Gemachtigden van dit type worden door HttpListener instanties gebruikt om een verificatieschema te selecteren op basis van de kenmerken van een aanvraag.
Een AuthenticationSchemeSelector gemachtigde wordt een HttpListenerRequest object doorgegeven voor elke binnenkomende aanvraag die geen verificatiegegevens heeft opgegeven. De methode die door de gemachtigde wordt aangeroepen, gebruikt het HttpListenerRequest object en eventuele andere beschikbare informatie om te bepalen welk verificatieschema moet worden vereist. De gemachtigde wordt opgegeven met behulp van de AuthenticationSchemeSelectorDelegate eigenschap.
Extensiemethoden
| Name | Description |
|---|---|
| GetMethodInfo(Delegate) |
Hiermee haalt u een object op dat de methode vertegenwoordigt die wordt vertegenwoordigd door de opgegeven gemachtigde. |