Partager via


AuthenticationLevel Énumération

Définition

Spécifie les exigences du client en matière d'authentification et d'emprunt d'identité lors de l'utilisation de la classe WebRequest et des classes dérivées pour demander une ressource.

public enum class AuthenticationLevel
public enum AuthenticationLevel
type AuthenticationLevel = 
Public Enum AuthenticationLevel
Héritage
AuthenticationLevel

Champs

MutualAuthRequested 1

Le client et le serveur doivent être authentifiés. La demande n'échoue pas si le serveur n'est pas authentifié. Pour déterminer si l'authentification mutuelle s'est produite, vérifiez la valeur de la propriété IsMutuallyAuthenticated.

MutualAuthRequired 2

Le client et le serveur doivent être authentifiés. Si le serveur n’est pas authentifié, votre application reçoit IOException avec une exception interne ProtocolViolationException qui indique que l’authentification mutuelle a échoué.

None 0

Aucune authentification n'est requise pour le client et le serveur.

Exemples

L’exemple de code suivant montre comment définir les indicateurs d’authentification pour une demande.

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

Remarques

Les valeurs de cette énumération sont utilisées pour définir la AuthenticationLevel propriété .

Notes

Les valeurs MutualAuthRequired et MutualAuthRequested sont pertinentes pour l’authentification Kerberos. L'authentification Kerberos peut être prise en charge directement ou être employée si le protocole Négocier la sécurité est utilisé afin de sélectionner le protocole de sécurité réel. Pour plus d’informations sur les protocoles d’authentification, consultez Authentification Internet.

S’applique à