AuthenticationSchemes Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje protokoly pro ověřování.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
public enum class AuthenticationSchemes
[System.Flags]
public enum AuthenticationSchemes
[<System.Flags>]
type AuthenticationSchemes =
Public Enum AuthenticationSchemes
- Dědičnost
- Atributy
Pole
Anonymous | 32768 | Určuje anonymní ověřování. |
Basic | 8 | Určuje základní ověřování. |
Digest | 1 | Určuje ověřování hodnotou hash. |
IntegratedWindowsAuthentication | 6 | Určuje Windows ověřování. |
Negotiate | 2 | Vyjedná s klientem za účelem určení schématu ověřování. Pokud klient i server podporují Protokol Kerberos, použije se; v opačném případě se používá protokol NTLM. |
None | 0 | Není povoleno žádné ověřování. Klient, který HttpListener požaduje objekt s touto sadou příznaků, bude vždy dostávat stav 403 Zakázáno. Tento příznak použijte, pokud by se prostředek nikdy neměl obsluhovat klientovi. |
Ntlm | 4 | Určuje ověřování NTLM. |
Příklady
Následující příklad kódu ukazuje použití hodnoty Výčtu Negotiate k určení, že klienti jsou ověřeni pomocí protokolu zabezpečení Negotiate.
Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count);
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
Console.WriteLine("Received a request.");
// This server requires a valid client certificate
// for requests that are not sent from the local computer.
// Did the client omit the certificate or send an invalid certificate?
if (request.IsAuthenticated &&
request.GetClientCertificate() == null ||
request.ClientCertificateError != 0)
{
// Send a 403 response.
HttpListenerResponse badCertificateResponse = context.Response ;
SendBadCertificateResponse(badCertificateResponse);
Console.WriteLine("Client has invalid certificate.");
continue;
}
Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count)
Dim context As HttpListenerContext = listener.GetContext()
Dim request As HttpListenerRequest = context.Request
Console.WriteLine("Received a request.")
' This server requires a valid client certificate
' for requests that are not sent from the local computer.
' Did the client omit the certificate or send an invalid certificate?
If request.IsAuthenticated AndAlso request.GetClientCertificate() Is Nothing OrElse request.ClientCertificateError <> 0 Then
' Send a 403 response.
Dim badCertificateResponse As HttpListenerResponse = context.Response
SendBadCertificateResponse(badCertificateResponse)
Console.WriteLine("Client has invalid certificate.")
Continue Do
End If
Poznámky
Tento výčet slouží k určení metody používané k ověřování požadavků klientů zpracovávaných HttpListener objekty.
Důležité
Základní ověřování vyžaduje výměnu hesla a proto by se mělo vyhnout s výjimkou zabezpečeného šifrovaného připojení.
Další informace o základním ověřování a ověřování digest najdete v tématu RFC2617 – Ověřování HTTP: Základní ověřování a ověřování digest. Tento dokument je k dispozici na adrese https://www.rfc-editor.org.