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
| Name | Hodnota | Description |
|---|---|---|
| None | 0 | Není povoleno žádné ověřování. Klient, který HttpListener požaduje objekt s touto sadou příznaků, vždy obdrží stav 403 Zakázáno. Tento příznak použijte, pokud by prostředek neměl být nikdy obsluhována klientovi. |
| Digest | 1 | Určuje ověřování pomocí digestu. |
| 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žije protokol NTLM. |
| Ntlm | 4 | Určuje ověřování NTLM. |
| IntegratedWindowsAuthentication | 6 | Určuje ověřování systému Windows. |
| Basic | 8 | Určuje základní ověřování. |
| Anonymous | 32768 | Určuje anonymní ověřování. |
Příklady
Následující příklad kódu ukazuje použití vyčíslení hodnotu 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 se používá k určení metody používané k ověřování požadavků klientů zpracovávaných HttpListener objekty.
Important
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í 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.