HttpWebRequest.UnsafeAuthenticatedConnectionSharing Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy zezwalać na szybkie udostępnianie połączeń uwierzytelnionych przy użyciu protokołu NTLM.

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

Wartość właściwości

true aby zachować otwarte uwierzytelnione połączenie; w przeciwnym razie , false.

Uwagi

Wartość domyślna dla tej właściwości to false, co powoduje zamknięcie bieżącego połączenia po zakończeniu żądania. Aplikacja musi przechodzić przez sekwencję uwierzytelniania za każdym razem, gdy wysyła nowe żądanie.

Jeśli ta właściwość jest ustawiona na truewartość , połączenie używane do pobierania odpowiedzi pozostaje otwarte po wykonaniu uwierzytelniania. W takim przypadku inne żądania z tą właściwością mogą używać true połączenia bez ponownego uwierzytelniania. Innymi słowy, jeśli połączenie zostało uwierzytelnione dla użytkownika A, użytkownik B może ponownie użyć połączenia A; żądanie użytkownika B jest realizowane na podstawie poświadczeń użytkownika A.

Przestroga

Ponieważ aplikacja może korzystać z połączenia bez uwierzytelniania, należy upewnić się, że w systemie nie ma żadnych luk w zabezpieczeniach administracyjnych w systemie podczas ustawiania tej właściwości na true. Jeśli aplikacja wysyła żądania dla wielu użytkowników (personifikuje wiele kont użytkowników) i korzysta z uwierzytelniania w celu ochrony zasobów, nie należy ustawiać tej właściwości na true wartość , chyba że używasz grup połączeń zgodnie z poniższym opisem.

Warto rozważyć włączenie tego mechanizmu, jeśli występują problemy z wydajnością, a aplikacja działa na serwerze sieci Web ze zintegrowanym uwierzytelnianiem systemu Windows.

Włączenie tego ustawienia powoduje otwarcie systemu na zagrożenia bezpieczeństwa. W przypadku ustawienia UnsafeAuthenticatedConnectionSharing właściwości true należy podjąć następujące środki ostrożności:

  • ConnectionGroupName Użyj właściwości , aby zarządzać połączeniami dla różnych użytkowników. Pozwala to uniknąć potencjalnego użycia połączenia przez aplikacje nieuwierzytelnione. Na przykład użytkownik A powinien mieć unikatową nazwę grupy połączeń inną niż użytkownik B. Zapewnia to warstwę izolacji dla każdego konta użytkownika.

  • Uruchom aplikację w chronionym środowisku, aby uniknąć możliwych luk w zabezpieczeniach połączeń.

Jeśli kontrolujesz serwer zaplecza, możesz rozważyć wyłączenie trwałości uwierzytelniania. Zwiększa to wydajność w mniejszym stopniu, ale jest bezpieczniejsza. Aby uzyskać więcej informacji, zobacz AuthPersistence.

Uwaga

Jeśli obie PreAuthenticate wartości i UnsafeAuthenticatedConnectionSharing są ustawione na truewartość , każde żądanie jest wysyłane przy użyciu połączenia z niebezpiecznej puli, ale z nagłówkiem autoryzacji.

Dotyczy