Bagikan melalui


AuthenticationLevel Enum

Definisi

Menentukan persyaratan klien untuk autentikasi dan peniruan identitas saat menggunakan WebRequest kelas dan kelas turunan untuk meminta sumber daya.

public enum class AuthenticationLevel
public enum AuthenticationLevel
type AuthenticationLevel = 
Public Enum AuthenticationLevel
Warisan
AuthenticationLevel

Bidang

MutualAuthRequested 1

Klien dan server harus diautentikasi. Permintaan tidak gagal jika server tidak diautentikasi. Untuk menentukan apakah autentikasi timbul, periksa nilai IsMutuallyAuthenticated properti.

MutualAuthRequired 2

Klien dan server harus diautentikasi. Jika server tidak diautentikasi, aplikasi Anda akan menerima IOException dengan ProtocolViolationException pengecualian dalam yang menunjukkan bahwa autentikasi bersama gagal.

None 0

Tidak diperlukan autentikasi untuk klien dan server.

Contoh

Contoh kode berikut menunjukkan pengaturan bendera autentikasi untuk permintaan.

// The following example uses the System, System.Net, 
// and System.IO namespaces.
static void RequestMutualAuth( Uri^ resource )
{
   // Create a new HttpWebRequest object for the specified resource.
   WebRequest^ request = dynamic_cast<WebRequest^>(WebRequest::Create( resource ));

   // Request mutual authentication.
   request->AuthenticationLevel = AuthenticationLevel::MutualAuthRequested;

   // Supply client credentials.
   request->Credentials = CredentialCache::DefaultCredentials;
   HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());

   // Determine whether mutual authentication was used.
   Console::WriteLine( L"Is mutually authenticated? {0}", response->IsMutuallyAuthenticated );

   // Read and display the response.
   Stream^ streamResponse = response->GetResponseStream();
   StreamReader^ streamRead = gcnew StreamReader( streamResponse );
   String^ responseString = streamRead->ReadToEnd();
   Console::WriteLine( responseString );

   // Close the stream objects.
   streamResponse->Close();
   streamRead->Close();

   // Release the HttpWebResponse.
   response->Close();
}

// The following example uses the System, System.Net,
// and System.IO namespaces.

public static void RequestMutualAuth(Uri resource)
{
    // Create a new HttpWebRequest object for the specified resource.
    WebRequest request=(WebRequest) WebRequest.Create(resource);
    // Request mutual authentication.
   request.AuthenticationLevel = AuthenticationLevel.MutualAuthRequested;
    // Supply client credentials.
    request.Credentials = CredentialCache.DefaultCredentials;
    HttpWebResponse response = (HttpWebResponse) request.GetResponse();
    // Determine whether mutual authentication was used.
    Console.WriteLine("Is mutually authenticated? {0}", response.IsMutuallyAuthenticated);
    // Read and display the response.
    Stream streamResponse = response.GetResponseStream();
    StreamReader streamRead = new StreamReader(streamResponse);
    string responseString = streamRead.ReadToEnd();
   Console.WriteLine(responseString);
    // Close the stream objects.
    streamResponse.Close();
    streamRead.Close();
    // Release the HttpWebResponse.
    response.Close();
}

Keterangan

Nilai enumerasi ini digunakan untuk mengatur AuthenticationLevel properti .

Catatan

Nilai MutualAuthRequired dan MutualAuthRequested relevan untuk autentikasi Kerberos. Autentikasi Kerberos dapat didukung secara langsung, atau dapat digunakan jika protokol keamanan Negosiasi digunakan untuk memilih protokol keamanan yang sebenarnya. Untuk informasi selengkapnya tentang protokol autentikasi, lihat Autentikasi Internet.

Berlaku untuk