AuthenticationLevel Enumeration

Definition

Gibt Clientanforderungen für Authentifizierung und Identitätswechsel bei der Verwendung der WebRequest-Klasse und der abgeleiteten Klassen zum Anfordern einer Ressource an.Specifies client requirements for authentication and impersonation when using the WebRequest class and derived classes to request a resource.

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

Felder

MutualAuthRequested 1

Der Client und der Server müssen authentifiziert sein.The client and server should be authenticated. Die Anforderung schlägt nicht fehl, wenn der Server nicht authentifiziert ist.The request does not fail if the server is not authenticated. Um zu bestimmen, ob eine gegenseitige Authentifizierung erfolgt ist, überprüfen Sie den Wert der IsMutuallyAuthenticated-Eigenschaft.To determine whether mutual authentication occurred, check the value of the IsMutuallyAuthenticated property.

MutualAuthRequired 2

Der Client und der Server müssen authentifiziert sein.The client and server should be authenticated. Wenn der Server nicht authentifiziert ist, empfängt die Anwendung eine IOException mit der inneren ProtocolViolationException-Ausnahme, die angibt, dass die gegenseitige Authentifizierung fehlgeschlagen ist.If the server is not authenticated, your application will receive an IOException with a ProtocolViolationException inner exception that indicates that mutual authentication failed.

None 0

Für Client und Server ist keine Authentifizierung erforderlich.No authentication is required for the client and server.

Beispiele

Im folgenden Codebeispiel wird das Festlegen der Authentifizierungsflags für eine Anforderung veranschaulicht.The following code example demonstrates setting the authentication flags for a request.

// 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();
}

Hinweise

Die Werte dieser Enumeration werden verwendet, um die AuthenticationLevel-Eigenschaft festzulegen.The values of this enumeration are used to set the AuthenticationLevel property.

Hinweis

Die Werte MutualAuthRequired und mutualauthrequot sind für die Kerberos-Authentifizierung relevant.The MutualAuthRequired and MutualAuthRequested values are relevant for Kerberos authentication. Kerberos-Authentifizierung kann direkt unterstützt oder verwendet werden, wenn das tatsächliche Sicherheitsprotokoll mithilfe des Negotiate-Sicherheitsprotokolls ausgewählt wird.Kerberos authentication can be supported directly, or can be used if the Negotiate security protocol is used to select the actual security protocol. Weitere Informationen zu Authentifizierungs Protokollen finden Sie unter Internet Authentifizierung.For more information about authentication protocols, see Internet Authentication.

Gilt für: