AuthenticationSchemes Enum

Definisi

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
AuthenticationSchemes
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.

Berlaku untuk