CredentialCache.Add Metoda

Definice

NetworkCredential Přidá instanci do mezipaměti přihlašovacích údajů.

Přetížení

Name Description
Add(Uri, String, NetworkCredential)

NetworkCredential Přidá instanci do mezipaměti přihlašovacích údajů pro použití s jinými protokoly než SMTP a přidruží ji k předponě URI (Uniform Resource Identifier) a ověřovacímu protokolu.

Add(String, Int32, String, NetworkCredential)

NetworkCredential Přidá instanci pro použití s protokolem SMTP do mezipaměti přihlašovacích údajů a přidruží ji k hostitelskému počítači, portu a ověřovacímu protokolu. Přihlašovací údaje přidané pomocí této metody jsou platné pouze pro protokol SMTP. Tato metoda nefunguje pro požadavky HTTP nebo FTP.

Add(Uri, String, NetworkCredential)

Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs

NetworkCredential Přidá instanci do mezipaměti přihlašovacích údajů pro použití s jinými protokoly než SMTP a přidruží ji k předponě URI (Uniform Resource Identifier) a ověřovacímu protokolu.

public:
 void Add(Uri ^ uriPrefix, System::String ^ authType, System::Net::NetworkCredential ^ cred);
public void Add(Uri uriPrefix, string authType, System.Net.NetworkCredential cred);
member this.Add : Uri * string * System.Net.NetworkCredential -> unit
Public Sub Add (uriPrefix As Uri, authType As String, cred As NetworkCredential)

Parametry

uriPrefix
Uri

Určuje Uri předponu identifikátoru URI prostředků, ke kterým přihlašovací údaje uděluje přístup.

authType
String

Schéma ověřování používané prostředkem pojmenovaným v uriPrefix.

cred
NetworkCredential

Přidání NetworkCredential do mezipaměti přihlašovacích údajů.

Výjimky

uriPrefix je null.

nebo

authType je null.

Stejné přihlašovací údaje se přidají více než jednou.

Příklady

Následující příklad kódu inicializuje CredentialCache s více bezpečnostními přihlašovacími údaji a používá tyto přihlašovací údaje s .WebRequest

CredentialCache myCache = new CredentialCache();

myCache.Add(new Uri("http://www.contoso.com/"),"Basic",new NetworkCredential(UserName,SecurelyStoredPassword));
myCache.Add(new Uri("http://www.contoso.com/"),"Digest", new NetworkCredential(UserName,SecurelyStoredPassword,Domain));

wReq.Credentials = myCache;
Dim myCache As New CredentialCache()

myCache.Add(New Uri("http://www.contoso.com/"), "Basic", New NetworkCredential(UserName, SecurelyStoredPassword))
myCache.Add(New Uri("http://www.contoso.com/"), "Digest", New NetworkCredential(UserName, SecurelyStoredPassword, Domain))

wReq.Credentials = myCache

Poznámky

Metoda Add umístí NetworkCredential instanci pro použití s jinými protokoly než SMTP do CredentialCache. Mezipaměť ukládá přihlašovací údaje v pořadí, ve kterém jsou do ní přidány. GetCredential(Uri, String) Při zavolání metody vrátí správnou odpovídající NetworkCredential instanci.

Platí pro

Add(String, Int32, String, NetworkCredential)

Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs
Zdroj:
CredentialCache.cs

NetworkCredential Přidá instanci pro použití s protokolem SMTP do mezipaměti přihlašovacích údajů a přidruží ji k hostitelskému počítači, portu a ověřovacímu protokolu. Přihlašovací údaje přidané pomocí této metody jsou platné pouze pro protokol SMTP. Tato metoda nefunguje pro požadavky HTTP nebo FTP.

public:
 void Add(System::String ^ host, int port, System::String ^ authenticationType, System::Net::NetworkCredential ^ credential);
public void Add(string host, int port, string authenticationType, System.Net.NetworkCredential credential);
member this.Add : string * int * string * System.Net.NetworkCredential -> unit
Public Sub Add (host As String, port As Integer, authenticationType As String, credential As NetworkCredential)

Parametry

host
String

A String , který identifikuje hostitelský počítač.

port
Int32

A Int32 , který určuje port, ke hostkterému se má připojit .

authenticationType
String

A String , který identifikuje schéma ověřování použité při připojování k host použití credential.

credential
NetworkCredential

Přidání NetworkCredential do mezipaměti přihlašovacích údajů.

Výjimky

host je null.

nebo

authenticationType je null.

authenticationType nepřijmutou hodnotu.

Hodnota port je menší než nula.

Příklady

Následující příklad kódu inicializuje CredentialCache s více bezpečnostními přihlašovacími údaji pro použití s SMTP a používá jeden z těchto přihlašovacích údajů s .SmtpClient

SmtpClient client = new SmtpClient("ContosoMail", 45);
MailAddress from = new MailAddress("sender@SenderMailServerName.com", "Sender Name");
MailAddress to = new MailAddress("recepient@RecepientMailServerName.com", "Recepient Name");
MailMessage message = new MailMessage(from, to);

message.Body = "This is a test email message sent by an application. ";
message.Subject = "Test Email using Credentials";

NetworkCredential myCreds = new NetworkCredential("username", "password", "domain");
CredentialCache myCredentialCache = new CredentialCache();
try
{
    myCredentialCache.Add("ContoscoMail", 35, "Basic", myCreds);
    myCredentialCache.Add("ContoscoMail", 45, "NTLM", myCreds);

    client.Credentials = myCredentialCache.GetCredential("ContosoMail", 45, "NTLM");
    client.Send(message);
    Console.WriteLine("Goodbye.");
}
    catch(Exception e)
    {
          Console.WriteLine("Exception is raised. ");
          Console.WriteLine("Message: {0} ",e.Message);
    }
Dim client As New SmtpClient("ContosoMail", 45)
Dim from As New MailAddress("sender@SenderMailServerName.com", "Sender Name")
Dim sendTo As New MailAddress("recepient@RecepientMailServerName.com", "Recepient Name")
Dim message As New MailMessage(from, sendTo)

message.Body = "This is a test email message sent by an application. "
message.Subject = "Test Email using Credentials"

Dim myCreds As New NetworkCredential("username", "password", "domain")
DIm myCredentialCache As New CredentialCache()

Try 
    myCredentialCache.Add("ContoscoMail", 35, "Basic", myCreds)
    myCredentialCache.Add("ContoscoMail", 45, "NTLM", myCreds)

    client.Credentials = myCredentialCache.GetCredential("ContosoMail", 45, "NTLM")
    client.Send(message)
    Console.WriteLine("Goodbye.")
Catch e As Exception
    Console.WriteLine("Exception is raised. ")
    Console.WriteLine($"Message: {e.Message} ")
End Try

Poznámky

Tato metoda umístí NetworkCredential instanci pro použití s protokolem SMTP do CredentialCachesložky . Mezipaměť ukládá přihlašovací údaje v pořadí, ve kterém jsou do ní přidány. GetCredential(String, Int32, String) Při zavolání metody vrátí NetworkCredential instanci, která je vybrána shodou host, porta authenticationType. Porovnání se provádí bez rozlišování velkých a malých písmen.

Podporované hodnoty authenticationType jsou NTLM, Digest, Kerberos a Negotiate.

Přihlašovací údaje přidané touto metodou jsou platné pouze pro použití s protokolem SMTP. Tato metoda nefunguje pro protokoly HTTP nebo FTP.

Platí pro