다음을 통해 공유


HttpWebRequest.UnsafeAuthenticatedConnectionSharing 속성

정의

고속 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

속성 값

인증된 연결을 열어 두는 true. 그렇지 않으면 false.

설명

주의

WebRequest, HttpWebRequest, ServicePointWebClient 사용되지 않으므로 새 개발에 사용하면 안 됩니다. 대신 HttpClient 사용합니다.

이 속성의 기본값은 false요청이 완료된 후 현재 연결을 닫습니다. 애플리케이션은 새 요청을 발급할 때마다 인증 순서를 거쳐야 합니다.

이 속성이 true설정되면 인증이 수행된 후에도 응답을 검색하는 데 사용되는 연결이 열린 상태로 유지됩니다. 이 경우 이 속성이 true 설정된 다른 요청은 다시 인증하지 않고 연결을 사용할 수 있습니다. 즉, 사용자 A에 대한 연결이 인증된 경우 사용자 B는 A의 연결을 다시 사용할 수 있습니다. 사용자 B의 요청은 사용자 A의 자격 증명에 따라 처리됩니다.

주의

애플리케이션이 인증되지 않고 연결을 사용할 수 있으므로 이 속성을 true설정할 때 시스템에 관리 취약성이 없는지 확인해야 합니다. 애플리케이션이 여러 사용자에 대한 요청을 보내고(여러 사용자 계정을 가장) 리소스를 보호하기 위해 인증에 의존하는 경우 아래 설명된 대로 연결 그룹을 사용하지 않는 한 이 속성을 true 설정하지 마세요.

성능 문제가 있고 애플리케이션이 Windows 통합 인증을 사용하여 웹 서버에서 실행되는 경우 이 메커니즘을 사용하도록 설정하는 것이 좋습니다.

이 설정을 사용하도록 설정하면 시스템이 보안 위험에 노출됩니다. UnsafeAuthenticatedConnectionSharing 속성을 true 설정하면 다음 주의 사항을 수행해야 합니다.

  • ConnectionGroupName 속성을 사용하여 다른 사용자에 대한 연결을 관리합니다. 이렇게 하면 인증되지 않은 애플리케이션에서 연결을 사용할 수 없습니다. 예를 들어 사용자 A에는 사용자 B와 다른 고유한 연결 그룹 이름이 있어야 합니다. 이렇게 하면 각 사용자 계정에 대한 격리 계층이 제공됩니다.

  • 보호된 환경에서 애플리케이션을 실행하여 가능한 연결 악용을 방지합니다.

백 엔드 서버를 제어하는 경우 대신 인증 지속성을 해제하는 것이 좋습니다. 이렇게 하면 성능이 더 낮아지지만 더 안전합니다. 자세한 내용은 AuthPersistence참조하세요.

메모

PreAuthenticateUnsafeAuthenticatedConnectionSharing 모두 true설정되면 각 요청은 안전하지 않은 풀의 연결을 사용하지만 권한 부여 헤더를 사용하여 전송됩니다.

적용 대상