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 ověřování systému Windows. |
Negotiate | 2 | Vyjedná s klientem o určení schématu ověřování. Pokud klient i server podporují Protokol Kerberos, používá se; jinak se použije protokol NTLM. |
None | 0 | Není povoleno žádné ověřování. Klient, který HttpListener požaduje objekt s tímto příznakem nastaveným, vždy obdrží stav 403 Zakázáno. Tento příznak použijte v případě, že by se prostředek nikdy neměl obsluhovat klientovi. |
Ntlm | 4 | Určuje ověřování protokolem NTLM. |
Příklady
Následující příklad kódu ukazuje použití negotiate výčtu hodnotu určit, ž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 byste se měli vyhnout, s výjimkou zabezpečených, šifrovaných připojení.
Další informace o základním ověřování a ověřování hodnotou hash najdete v tématu RFC2617 – Ověřování HTTP: Základní ověřování a ověřování hodnotou hash. Tento dokument je k dispozici na adrese https://www.rfc-editor.org.