CredentialCache.Add Methode

Definition

Fügt dem Anmeldeinformationscache eine NetworkCredential Instanz hinzu.

Überlädt

Name Beschreibung
Add(Uri, String, NetworkCredential)

Fügt dem Anmeldeinformationscache eine NetworkCredential Instanz für die Verwendung mit anderen Protokollen als SMTP hinzu und ordnet sie einem URI-Präfix (Uniform Resource Identifier) und einem Authentifizierungsprotokoll zu.

Add(String, Int32, String, NetworkCredential)

Fügt eine NetworkCredential Instanz für die Verwendung mit SMTP zum Anmeldeinformationscache hinzu und ordnet sie einem Hostcomputer, Port und Authentifizierungsprotokoll zu. Die mit dieser Methode hinzugefügten Anmeldeinformationen sind nur für SMTP gültig. Diese Methode funktioniert nicht für HTTP- oder FTP-Anforderungen.

Add(Uri, String, NetworkCredential)

Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs

Fügt dem Anmeldeinformationscache eine NetworkCredential Instanz für die Verwendung mit anderen Protokollen als SMTP hinzu und ordnet sie einem URI-Präfix (Uniform Resource Identifier) und einem Authentifizierungsprotokoll zu.

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)

Parameter

uriPrefix
Uri

A Uri that specifies the URI prefix of the resources that the credential grant access to.

authType
String

Das Authentifizierungsschema, das von der ressource verwendet wird, die in uriPrefix.

cred
NetworkCredential

Der NetworkCredential zum Cache für Anmeldeinformationen hinzuzufügende Datei.

Ausnahmen

uriPrefix ist null.

-oder-

authType ist null.

Die gleichen Anmeldeinformationen werden mehrmals hinzugefügt.

Beispiele

Im folgenden Codebeispiel wird eine CredentialCache mit mehreren Sicherheitsanmeldeinformationen initialisiert und diese Anmeldeinformationen mit einer 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

Hinweise

Die Add Methode platziert eine NetworkCredential Instanz für die Verwendung mit anderen Protokollen als SMTP in der CredentialCache. Der Cache speichert Anmeldeinformationen in der Reihenfolge, in der sie hinzugefügt werden. Wenn die GetCredential(Uri, String) Methode aufgerufen wird, wird die richtige übereinstimmende NetworkCredential Instanz zurückgegeben.

Gilt für:

Add(String, Int32, String, NetworkCredential)

Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs
Quelle:
CredentialCache.cs

Fügt eine NetworkCredential Instanz für die Verwendung mit SMTP zum Anmeldeinformationscache hinzu und ordnet sie einem Hostcomputer, Port und Authentifizierungsprotokoll zu. Die mit dieser Methode hinzugefügten Anmeldeinformationen sind nur für SMTP gültig. Diese Methode funktioniert nicht für HTTP- oder FTP-Anforderungen.

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)

Parameter

host
String

Ein String Objekt, das den Hostcomputer identifiziert.

port
Int32

Ein Int32 Wert, der den Port angibt, mit hostdem eine Verbindung hergestellt werden soll.

authenticationType
String

Eine String , die das Authentifizierungsschema identifiziert, das beim Herstellen einer Verbindung mit host der Verwendung credentialverwendet wird.

credential
NetworkCredential

Der NetworkCredential zum Cache für Anmeldeinformationen hinzuzufügende Datei.

Ausnahmen

host ist null.

-oder-

authenticationType ist null.

authenticationType kein akzeptierter Wert.

port ist kleiner als 0 (null).

Beispiele

Im folgenden Codebeispiel wird eine CredentialCache mit mehreren Sicherheitsanmeldeinformationen für die Verwendung mit SMTP initialisiert und eine dieser Anmeldeinformationen mit einer 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

Hinweise

Diese Methode platziert eine NetworkCredential Instanz für die Verwendung mit SMTP in der CredentialCache. Der Cache speichert Anmeldeinformationen in der Reihenfolge, in der sie hinzugefügt werden. Wenn die Methode aufgerufen wird, wird eine Instanz zurückgegeben, die GetCredential(String, Int32, String) ausgewählt wird, indem sie mit dem NetworkCredential, host, und port.authenticationType Der Vergleich erfolgt ohne Groß-/Kleinschreibung.

Die unterstützten Werte authenticationType sind "NTLM", "Digest", "Kerberos" und "Negotiate".

Die mit dieser Methode hinzugefügten Anmeldeinformationen sind nur für die Verwendung mit SMTP gültig. Diese Methode funktioniert nicht für HTTP- oder FTP-Protokolle.

Gilt für: