Exporter (0) Imprimer
Développer tout

HttpListener.AuthenticationSchemes, propriété

Remarque : cette propriété est nouvelle dans le .NET Framework version 2.0.

Obtient ou définit le schéma utilisé pour authentifier les clients.

Espace de noms : System.Net
Assembly : System (dans system.dll)

public AuthenticationSchemes AuthenticationSchemes { get; set; }
/** @property */
public AuthenticationSchemes get_AuthenticationSchemes ()

/** @property */
public void set_AuthenticationSchemes (AuthenticationSchemes value)

public function get AuthenticationSchemes () : AuthenticationSchemes

public function set AuthenticationSchemes (value : AuthenticationSchemes)

Valeur de la propriété

Combinaison d'opérations de bits de valeurs d'énumération AuthenticationSchemes qui indiquent la manière dont les clients doivent être authentifiés. La valeur par défaut est Anonymous.

Type d'exceptionCondition

ObjectDisposedException

Cet objet a été fermé.

HttpListener utilise le schéma spécifié pour authentifier toutes les demandes entrantes. Les méthodes GetContext et EndGetContext ne retournent une demande du client entrante que si HttpListener authentifie correctement la demande.

Vous pouvez interroger l'identité d'un client correctement authentifié à l'aide de la propriété HttpListenerContext.User.

Si vous souhaitez qu'un objet HttpListener utilise des mécanismes d'authentification différents selon les caractéristiques des demandes reçues (par exemple, selon la propriété Url ou UserHostName de la demande), vous devez implémenter une méthode qui choisit le schéma d'authentification. Pour obtenir des instructions relatives à l'exécution de cette opération, consultez la documentation de la propriété AuthenticationSchemeSelectorDelegate.

RemarqueRemarque

La définition de cette propriété pour activer Digest, NTLM ou Negotiate nécessite SecurityPermission, ControlPrincipal.

L'exemple de code suivant illustre l'utilisation de la propriété AuthenticationSchemes pour spécifier un schéma d'authentification.

public static void SimpleListenerWithUnsafeAuthentication(string[] prefixes)
{
    // URI prefixes are required,
    // for example "http://contoso.com:8080/index/".
    if (prefixes == null || prefixes.Length == 0)
      throw new ArgumentException("prefixes");
    // Set up a listener.
    HttpListener listener = new HttpListener();
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    // Specify Negotiate as the authentication scheme.
    listener.AuthenticationSchemes = AuthenticationSchemes.Negotiate;
    // If NTLM is used, we will allow multiple requests on the same
    // connection to use the authentication information of first request.
    // This improves performance but does reduce the security of your 
    // application. 
    listener.UnsafeConnectionNtlmAuthentication = true;
    // This listener does not want to receive exceptions 
    // that occur when sending the response to the client.
    listener.IgnoreWriteExceptions = true;
    Console.WriteLine("Listening...");
    // ... process requests here.

    listener.Close();
}

Windows 98, Windows Server 2003, Windows XP Édition Media Center, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft