HttpWebRequest.PreAuthenticate 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 enviar un encabezado authorization con la solicitud.
public:
virtual property bool PreAuthenticate { bool get(); void set(bool value); };
public override bool PreAuthenticate { get; set; }
member this.PreAuthenticate : bool with get, set
Public Overrides Property PreAuthenticate As Boolean
Valor de propiedad
true
enviar un encabezado de autorización HTTP con solicitudes después de que se haya realizado la autenticación; de lo contrario, false
. El valor predeterminado es false
.
Comentarios
Cautela
WebRequest
, HttpWebRequest
, ServicePoint
y WebClient
están obsoletos y no debe usarlos para el nuevo desarrollo. Use HttpClient en su lugar.
Después de que se autentique correctamente una solicitud de cliente a un Uri específico, si PreAuthenticate se true
y se proporcionan credenciales, el encabezado Authorization se envía con cada solicitud a cualquier Uri que coincida con el Uri específico hasta la última barra diagonal. Por lo tanto, si la solicitud de cliente se ha autenticado correctamente en un Uri específico que contiene lo siguiente:
http://www.contoso.com/firstpath/
A continuación, el encabezado authorization para la autenticación previa se envía con cada solicitud a cualquiera de las siguientes instancias de Uri:
http://www.contoso.com/firstpath/
http://www.contoso.com/firstpath/default
http://www.contoso.com/firstpath/default.html
http://www.contoso.com/firstpath/sample.html
Sin embargo, el encabezado Authorization no se envía con solicitudes a ninguna de las siguientes instancias de Uri:
http://www.contoso.com/
http://www.contoso.com/firstpath
http://www.contoso.com/secondpath/
http://www.contoso.com/firstpath/thirdpath/
Si la solicitud de cliente a un Uri específico no se autentica correctamente, la solicitud usa procedimientos de autenticación estándar.
Con la excepción de la primera solicitud, la propiedad PreAuthenticate indica si se debe enviar información de autenticación con solicitudes posteriores a un Uri que coincida con el Uri específico hasta la última barra diagonal sin esperar a que el servidor pueda impugnar.
En el cuadro de diálogo siguiente entre el cliente y el servidor se muestra el efecto de esta propiedad. En el cuadro de diálogo se supone que la autenticación básica está en uso.
PreAuthenticate es false
:
Cliente: GET someUrl
Servidor: 401 WWW-Authenticate Básico
Cliente: GET con encabezados de autorización
Servidor: 200 Correcto
Cliente: GET someUrl
Servidor: 401 WWW-Authenticate Básico
Cliente: GET con encabezados de autorización
Servidor: 200 Correcto
PreAuthenticate es true
:
Cliente: GET someUrl
Servidor: 401 WWW-Authenticate Básico
Cliente: GET con encabezados de autorización
Servidor: 200 Correcto
Cliente: GET someUrl con encabezados de autorización
Si el esquema de autenticación no admite la autenticación previa, se omite el valor de esta propiedad.