Partager via


HttpWebRequest.UnsafeAuthenticatedConnectionSharing Propriété

Définition

Obtient ou définit une valeur qui indique s’il faut autoriser le partage de connexion authentifiée NTLM à haut débit.

public:
 property bool UnsafeAuthenticatedConnectionSharing { bool get(); void set(bool value); };
public bool UnsafeAuthenticatedConnectionSharing { get; set; }
member this.UnsafeAuthenticatedConnectionSharing : bool with get, set
Public Property UnsafeAuthenticatedConnectionSharing As Boolean

Valeur de propriété

true pour maintenir la connexion authentifiée ouverte ; sinon, false.

Remarques

Prudence

WebRequest, HttpWebRequest, ServicePointet WebClient sont obsolètes et vous ne devez pas les utiliser pour le nouveau développement. Utilisez HttpClient à la place.

La valeur par défaut de cette propriété est false, ce qui entraîne la fermeture de la connexion actuelle une fois qu’une demande est terminée. Votre application doit passer par la séquence d’authentification chaque fois qu’elle émet une nouvelle demande.

Si cette propriété est définie sur true, la connexion utilisée pour récupérer la réponse reste ouverte une fois l’authentification effectuée. Dans ce cas, d’autres requêtes dont cette propriété a la valeur true peuvent utiliser la connexion sans réauthentification. En d’autres termes, si une connexion a été authentifiée pour l’utilisateur A, l’utilisateur B peut réutiliser la connexion d’A ; La demande de l’utilisateur B est remplie en fonction des informations d’identification de l’utilisateur A.

Prudence

Étant donné qu’il est possible pour une application d’utiliser la connexion sans être authentifiée, vous devez vous assurer qu’il n’existe aucune vulnérabilité administrative dans votre système lors de la définition de cette propriété sur true. Si votre application envoie des demandes pour plusieurs utilisateurs (emprunte l’identité de plusieurs comptes d’utilisateur) et s’appuie sur l’authentification pour protéger les ressources, ne définissez pas cette propriété sur true, sauf si vous utilisez des groupes de connexions comme décrit ci-dessous.

Vous pouvez envisager d’activer ce mécanisme si vous rencontrez des problèmes de performances et que votre application s’exécute sur un serveur web avec l’authentification Windows intégrée.

L’activation de ce paramètre ouvre le système aux risques de sécurité. Si vous définissez la propriété UnsafeAuthenticatedConnectionSharing sur true veillez à prendre les précautions suivantes :

  • Utilisez la propriété ConnectionGroupName pour gérer les connexions pour différents utilisateurs. Cela évite l’utilisation potentielle de la connexion par des applications non authentifiées. Par exemple, l’utilisateur A doit avoir un nom de groupe de connexions unique différent de l’utilisateur B. Cela fournit une couche d’isolation pour chaque compte d’utilisateur.

  • Exécutez votre application dans un environnement protégé pour éviter les attaques de connexion possibles.

Si vous contrôlez le serveur principal, vous pouvez également envisager de désactiver la persistance de l’authentification. Cela augmente les performances à un degré inférieur, mais il est plus sûr. Pour plus d’informations, consultez AuthPersistence.

Note

Si PreAuthenticate et UnsafeAuthenticatedConnectionSharing sont définis sur true, chaque requête est envoyée à l’aide d’une connexion à partir du pool non sécurisé, mais avec un en-tête d’autorisation.

S’applique à