HttpWebRequest.UnsafeAuthenticatedConnectionSharing Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die NTLM-authentifizierte Verbindungsfreigabe mit hoher Geschwindigkeit zugelassen werden soll.
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
Eigenschaftswert
true
, die authentifizierte Verbindung offen zu halten; andernfalls false
.
Hinweise
Vorsicht
WebRequest
, HttpWebRequest
, ServicePoint
und WebClient
sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.
Der Standardwert für diese Eigenschaft ist false
, wodurch die aktuelle Verbindung nach Abschluss einer Anforderung geschlossen wird. Ihre Anwendung muss jedes Mal, wenn sie eine neue Anforderung ausgibt, die Authentifizierungssequenz durchlaufen.
Wenn diese Eigenschaft auf true
festgelegt ist, bleibt die Verbindung zum Abrufen der Antwort geöffnet, nachdem die Authentifizierung ausgeführt wurde. In diesem Fall können andere Anforderungen, für die diese Eigenschaft auf true
festgelegt ist, die Verbindung ohne erneute Authentifizierung verwenden. Anders ausgedrückt: Wenn eine Verbindung für Benutzer A authentifiziert wurde, kann Der Benutzer B die Verbindung von A wiederverwenden; Die Anforderung von Benutzer B wird basierend auf den Anmeldeinformationen des Benutzers A erfüllt.
Vorsicht
Da es für eine Anwendung möglich ist, die Verbindung zu verwenden, ohne authentifiziert zu werden, müssen Sie sicherstellen, dass in Ihrem System keine Administrative Sicherheitsanfälligkeit besteht, wenn diese Eigenschaft auf true
festgelegt wird. Wenn Ihre Anwendung Anforderungen für mehrere Benutzer sendet (identitätswechselt mehrere Benutzerkonten) und die Authentifizierung zum Schutz von Ressourcen verwendet, legen Sie diese Eigenschaft nicht auf true
fest, es sei denn, Sie verwenden Verbindungsgruppen wie unten beschrieben.
Sie können erwägen, diesen Mechanismus zu aktivieren, wenn Ihre Anwendung Leistungsprobleme aufweist und ihre Anwendung auf einem Webserver mit integrierter Windows-Authentifizierung ausgeführt wird.
Durch Aktivieren dieser Einstellung wird das System für Sicherheitsrisiken geöffnet. Wenn Sie die eigenschaft UnsafeAuthenticatedConnectionSharing auf true
festlegen, achten Sie darauf, die folgenden Vorsichtsmaßnahmen zu treffen:
Verwenden Sie die eigenschaft ConnectionGroupName, um Verbindungen für unterschiedliche Benutzer zu verwalten. Dadurch wird die potenzielle Verwendung der Verbindung durch nicht authentifizierte Anwendungen vermieden. Benutzer A sollte z. B. über einen eindeutigen Verbindungsgruppennamen verfügen, der sich von Benutzer B unterscheidet. Dadurch wird eine Isolationsebene für jedes Benutzerkonto bereitgestellt.
Führen Sie Ihre Anwendung in einer geschützten Umgebung aus, um mögliche Verbindungs exploits zu vermeiden.
Wenn Sie den Back-End-Server steuern, können Sie als Alternative das Deaktivieren der Authentifizierungspersistenz in Betracht ziehen. Dies erhöht die Leistung auf ein geringeres Maß, aber es ist sicherer. Weitere Informationen finden Sie unter AuthPersistence-.
Anmerkung
Wenn sowohl PreAuthenticate als auch UnsafeAuthenticatedConnectionSharing auf true
festgelegt sind, wird jede Anforderung mit einer Verbindung aus dem unsicheren Pool, aber mit einem Autorisierungsheader gesendet.