AuthenticationSchemes Enum
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan protokol untuk autentikasi.
Enumerasi ini mendukung kombinasi bitwise dari nilai yang termasuk di dalamnya.
public enum class AuthenticationSchemes
[System.Flags]
public enum AuthenticationSchemes
[<System.Flags>]
type AuthenticationSchemes =
Public Enum AuthenticationSchemes
- Warisan
- Atribut
Bidang
Anonymous | 32768 | Menentukan autentikasi anonim. |
Basic | 8 | Menentukan autentikasi dasar. |
Digest | 1 | Menentukan autentikasi digest. |
IntegratedWindowsAuthentication | 6 | Menentukan autentikasi Windows. |
Negotiate | 2 | Bernegosiasi dengan klien untuk menentukan skema autentikasi. Jika klien dan server mendukung Kerberos, Kerberos digunakan; jika tidak, NTLM digunakan. |
None | 0 | Tidak ada autentikasi yang diperbolehkan. Klien yang HttpListener meminta objek dengan set bendera ini akan selalu menerima status Terlarang 403. Gunakan bendera ini ketika sumber daya tidak boleh dilayani kepada klien. |
Ntlm | 4 | Menentukan autentikasi NTLM. |
Contoh
Contoh kode berikut menunjukkan menggunakan nilai Enumerasi Negosiasi untuk menentukan bahwa klien diautentikasi menggunakan protokol keamanan Negosiasi.
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
Keterangan
Enumerasi ini digunakan untuk menentukan metode yang digunakan untuk mengautentikasi permintaan klien yang diproses oleh HttpListener objek.
Penting
Autentikasi dasar memerlukan pertukaran kata sandi dan oleh karena itu harus dihindari kecuali dalam kasus koneksi terenkripsi yang aman.
Untuk informasi tambahan tentang autentikasi dasar dan hash, lihat RFC2617 - Autentikasi HTTP: Autentikasi Dasar dan Hash. Dokumen ini tersedia di https://www.rfc-editor.org.