HttpWebRequest.UnsafeAuthenticatedConnectionSharing Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si se va a permitir el uso compartido de conexiones autenticado con NTLM de alta velocidad.
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
Valor de propiedad
true
mantener abierta la conexión autenticada; de lo contrario, false
.
Comentarios
Cautela
WebRequest
, HttpWebRequest
, ServicePoint
y WebClient
están obsoletos y no debe usarlos para el nuevo desarrollo. Use HttpClient en su lugar.
El valor predeterminado de esta propiedad es false
, lo que hace que la conexión actual se cierre una vez completada una solicitud. La aplicación debe pasar por la secuencia de autenticación cada vez que emite una nueva solicitud.
Si esta propiedad se establece en true
, la conexión utilizada para recuperar la respuesta permanece abierta después de realizar la autenticación. En este caso, otras solicitudes que tienen esta propiedad establecida en true
pueden usar la conexión sin volver a autenticarse. Es decir, si se ha autenticado una conexión para el usuario A, el usuario B puede reutilizar la conexión de A; La solicitud del usuario B se cumple en función de las credenciales del usuario A.
Cautela
Dado que es posible que una aplicación use la conexión sin autenticarse, debe asegurarse de que no hay ninguna vulnerabilidad administrativa en el sistema al establecer esta propiedad en true
. Si la aplicación envía solicitudes para varios usuarios (suplanta varias cuentas de usuario) y se basa en la autenticación para proteger los recursos, no establezca esta propiedad en true
a menos que use grupos de conexiones como se describe a continuación.
Es posible que quiera considerar la posibilidad de habilitar este mecanismo si tiene problemas de rendimiento y la aplicación se ejecuta en un servidor web con autenticación integrada de Windows.
Al habilitar esta configuración, se abre el sistema para riesgos de seguridad. Si establece la propiedad UnsafeAuthenticatedConnectionSharing en true
asegúrese de tomar las siguientes precauciones:
Use la propiedad ConnectionGroupName para administrar conexiones para distintos usuarios. Esto evita el posible uso de la conexión mediante aplicaciones no autenticadas. Por ejemplo, el usuario A debe tener un nombre de grupo de conexiones único diferente del usuario B. Esto proporciona una capa de aislamiento para cada cuenta de usuario.
Ejecute la aplicación en un entorno protegido para ayudar a evitar posibles vulnerabilidades de seguridad de conexión.
Si controla el servidor back-end, como alternativa, podría considerar la posibilidad de desactivar la persistencia de autenticación. Esto aumenta el rendimiento en un menor grado, pero es más seguro. Para obtener más información, consulte AuthPersistence.
Nota
Si tanto PreAuthenticate como UnsafeAuthenticatedConnectionSharing se establecen en true
, cada solicitud se envía mediante una conexión del grupo no seguro, pero con un encabezado Authorization.