ICredentialPolicy Interface
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Define a política de credencial a ser usada para pedidos de recursos feitos usando WebRequest e as suas classes derivadas.
public interface class ICredentialPolicy
public interface ICredentialPolicy
type ICredentialPolicy = interface
Public Interface ICredentialPolicy
- Derivado
Exemplos
O exemplo de código seguinte mostra uma implementação desta interface que permite enviar credenciais apenas para pedidos que visem hosts específicos.
public class SelectedHostsCredentialPolicy: ICredentialPolicy
{
public SelectedHostsCredentialPolicy()
{
}
public virtual bool ShouldSendCredential(Uri challengeUri,
WebRequest request,
NetworkCredential credential,
IAuthenticationModule authModule)
{
Console.WriteLine("Checking custom credential policy.");
if (request.RequestUri.Host == "www.contoso.com" ||
challengeUri.IsLoopback)
return true;
return false;
}
}
Observações
A política de credenciais determina se deve enviar credenciais ao enviar um WebRequest recurso de rede, como o conteúdo de uma página Web. Se as credenciais forem enviadas, os servidores que requerem autenticação do cliente podem tentar autenticar o cliente quando o pedido é recebido, em vez de enviar uma resposta que indique que as credenciais do cliente são necessárias. Embora isto poupe uma viagem de ida e volta ao servidor, este ganho de desempenho deve ser equilibrado com o risco de segurança inerente ao envio de credenciais através da rede. Quando o servidor de destino não requer autenticação do cliente, é melhor não enviar credenciais.
Note
ICredentialPolicy As políticas só são invocadas se o WebRequest ou WebProxy que está associado ao pedido tiver credenciais que não nullsão . Definir esta política não tem efeito em pedidos que não especificam credenciais.
Use a AuthenticationManager.CredentialPolicy propriedade para definir uma ICredentialPolicy apólice. O IAuthenticationModule responsável pela autenticação do pedido irá invocar o ShouldSendCredential método antes de realizar a autenticação. Se o método devolver false, a autenticação não é realizada.
Uma política afeta ICredentialPolicy todas as instâncias de WebRequest com credenciais não nulas no domínio de aplicação atual. A política não pode ser anulada por pedidos individuais.
Métodos
| Name | Description |
|---|---|
| ShouldSendCredential(Uri, WebRequest, NetworkCredential, IAuthenticationModule) |
Retorna a Boolean que indica se as credenciais do cliente são enviadas com um pedido de recurso feito usando uma instância da WebRequest classe. |