HttpWebRequest.PreAuthenticate Propriedade

Definição

Recebe ou define um valor que indica se deve enviar um cabeçalho de Autorização com o pedido.

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 Propriedade

true para enviar um cabeçalho de Autorização HTTP com pedidos após a autenticação ter sido realizada; caso contrário, false. A predefinição é false.

Observações

Atenção

WebRequest, HttpWebRequest, ServicePoint, e WebClient são obsoletos, e não deves usá-los para novos desenvolvimentos. Utilize HttpClient em substituição.

Depois de um pedido de cliente a um específico Uri ser autenticado com sucesso, se PreAuthenticate forem true fornecidas as credenciais e as credenciais, o cabeçalho de Autorização é enviado com cada pedido para qualquer Uri um que corresponda ao específico Uri até à última barra adicional. Portanto, se o pedido do cliente for autenticado com sucesso a um específico Uri que contém o seguinte:

http://www.contoso.com/firstpath/

Depois, o cabeçalho Authorization para pré-autenticação é enviado com cada pedido para qualquer uma das seguintes Uri instâncias:

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

No entanto, o cabeçalho Authorization não é enviado com pedidos para nenhuma das seguintes Uri instâncias:

http://www.contoso.com/

http://www.contoso.com/firstpath

http://www.contoso.com/secondpath/

http://www.contoso.com/firstpath/thirdpath/

Se o pedido do cliente a um específico Uri não for autenticado com sucesso, o pedido utiliza procedimentos padrão de autenticação.

Com exceção do primeiro pedido, a PreAuthenticate propriedade indica se deve enviar informação de autenticação com pedidos subsequentes para um Uri que corresponda ao específico Uri até à última barra, sem esperar ser contestado pelo servidor.

O diálogo seguinte entre cliente e servidor ilustra o efeito desta propriedade. O diálogo assume que a autenticação básica está em uso.

PreAuthenticate é false:

Cliente: GET someUrl

Servidor: 401 WWW-Authenticate Básico

Cliente: GET com cabeçalhos de autorização

Servidor: 200 OK

Cliente: GET someUrl

Servidor: 401 WWW-Authenticate Básico

Cliente: GET com cabeçalhos de autorização

Servidor: 200 OK

PreAuthenticate é true:

Cliente: GET someUrl

Servidor: 401 WWW-Authenticate Básico

Cliente: GET com cabeçalhos de autorização

Servidor: 200 OK

Cliente: GET someUrl com cabeçalhos de autorização

Se o esquema de autenticação não suportar pré-autenticação, o valor desta propriedade é ignorado.

Aplica-se a