ICredentialPolicy Rozhraní

Definice

Definuje zásadu přihlašovacích údajů, která se má použít pro žádosti o prostředky, které se provádějí pomocí WebRequest a jejich odvozené třídy.

public interface class ICredentialPolicy
public interface ICredentialPolicy
type ICredentialPolicy = interface
Public Interface ICredentialPolicy
Odvozené

Příklady

Následující příklad kódu ukazuje implementaci tohoto rozhraní, která umožňuje odesílat přihlašovací údaje pouze pro požadavky, které cílí na konkrétní hostitele.

public ref class SelectedHostsCredentialPolicy: public ICredentialPolicy
{
public:
   SelectedHostsCredentialPolicy(){}

   virtual bool ShouldSendCredential( Uri^ challengeUri, WebRequest^ request, NetworkCredential^ /*credential*/, IAuthenticationModule^ /*authModule*/ )
   {
      Console::WriteLine( L"Checking custom credential policy." );
      if ( request->RequestUri->Host->Equals( L"www.contoso.com" ) || challengeUri->IsLoopback == true )
            return true;

      return false;
   }
};
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 == true)
            return true;

        return false;
    }
}

Poznámky

Zásada přihlašovacích údajů určuje, jestli se mají odesílat přihlašovací údaje při odesílání WebRequest síťového prostředku, například obsah webové stránky. Pokud se odešlou přihlašovací údaje, servery, které vyžadují ověření klienta, se můžou po přijetí požadavku pokusit ověřit klienta místo odeslání odpovědi, která značí, že jsou požadovány přihlašovací údaje klienta. I když se tím ušetří doba odezvy na server, tento nárůst výkonu musí být vyvážen proti riziku zabezpečení, které je součástí odesílání přihlašovacích údajů v síti. Pokud cílový server nevyžaduje ověřování klientů, není nejlepší posílat přihlašovací údaje.

Poznámka

ICredentialPolicy zásady jsou vyvolány pouze v případě, že WebRequest WebProxy nebo ta, která je přidružena k žádosti, má přihlašovací údaje, které nejsou null. Nastavení této zásady nemá žádný vliv na požadavky, které nezadávají přihlašovací údaje.

AuthenticationManager.CredentialPolicy Pomocí vlastnosti nastavte zásaduICredentialPolicy. Tím IAuthenticationModule , že zpracovává ověřování požadavku, vyvolá metodu ShouldSendCredential před provedením ověřování. Pokud metoda vrátí false, ověřování se neprovádí.

Zásada ICredentialPolicy ovlivňuje všechny instance s nenulovými přihlašovacími údaji WebRequest v aktuální doméně aplikace. Zásady nelze přepsat u jednotlivých požadavků.

Metody

ShouldSendCredential(Uri, WebRequest, NetworkCredential, IAuthenticationModule)

Boolean Vrátí hodnotu, která označuje, jestli se přihlašovací údaje klienta odesílají s požadavkem na prostředek vytvořeným pomocí instance WebRequest třídy.

Platí pro