CredentialCache.Add Méthode

Définition

Ajoute une NetworkCredential instance au cache d’informations d’identification.

Surcharges

Nom Description
Add(Uri, String, NetworkCredential)

Ajoute une NetworkCredential instance au cache d’informations d’identification à utiliser avec des protocoles autres que SMTP et l’associe à un préfixe URI (Uniform Resource Identifier) et un protocole d’authentification.

Add(String, Int32, String, NetworkCredential)

Ajoute une NetworkCredential instance à utiliser avec SMTP au cache d’informations d’identification et l’associe à un ordinateur hôte, un port et un protocole d’authentification. Les informations d’identification ajoutées à l’aide de cette méthode sont valides uniquement pour SMTP. Cette méthode ne fonctionne pas pour les requêtes HTTP ou FTP.

Add(Uri, String, NetworkCredential)

Ajoute une NetworkCredential instance au cache d’informations d’identification à utiliser avec des protocoles autres que SMTP et l’associe à un préfixe URI (Uniform Resource Identifier) et un protocole d’authentification.

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)

Paramètres

uriPrefix
Uri

Qui Uri spécifie le préfixe d’URI des ressources auxquelles les informations d’identification accordent l’accès.

authType
String

Schéma d’authentification utilisé par la ressource nommée dans uriPrefix.

cred
NetworkCredential

À NetworkCredential ajouter au cache d’informations d’identification.

Exceptions

uriPrefix a la valeur null.

-ou-

authType a la valeur null.

Les mêmes informations d’identification sont ajoutées plusieurs fois.

Exemples

L’exemple de code suivant initialise une CredentialCache avec plusieurs informations d’identification de sécurité et utilise ces informations d’identification avec un 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

Remarques

La Add méthode place une NetworkCredential instance à utiliser avec des protocoles autres que SMTP dans le CredentialCache. Le cache stocke les informations d’identification dans l’ordre dans lequel ils sont ajoutés. Lorsque la GetCredential(Uri, String) méthode est appelée, elle retourne l’instance correspondante NetworkCredential appropriée.

S’applique à

Add(String, Int32, String, NetworkCredential)

Ajoute une NetworkCredential instance à utiliser avec SMTP au cache d’informations d’identification et l’associe à un ordinateur hôte, un port et un protocole d’authentification. Les informations d’identification ajoutées à l’aide de cette méthode sont valides uniquement pour SMTP. Cette méthode ne fonctionne pas pour les requêtes HTTP ou 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)

Paramètres

host
String

Qui String identifie l’ordinateur hôte.

port
Int32

Qui Int32 spécifie le port auquel se connecter .host

authenticationType
String

Qui String identifie le schéma d’authentification utilisé lors de la connexion à l’utilisation hostcredential.

credential
NetworkCredential

À NetworkCredential ajouter au cache d’informations d’identification.

Exceptions

host a la valeur null.

-ou-

authenticationType a la valeur null.

authenticationType n’est pas une valeur acceptée.

port est inférieur à zéro.

Exemples

L’exemple de code suivant initialise un CredentialCache avec plusieurs informations d’identification de sécurité à utiliser avec SMTP et utilise l’une de ces informations d’identification avec un 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

Remarques

Cette méthode place une NetworkCredential instance à utiliser avec SMTP dans le CredentialCache. Le cache stocke les informations d’identification dans l’ordre dans lequel ils sont ajoutés. Lorsque la GetCredential(String, Int32, String) méthode est appelée, elle retourne une NetworkCredential instance sélectionnée en correspondant au host, portet authenticationType. La comparaison est effectuée sans respect de la casse.

Les valeurs authenticationType prises en charge sont « NTLM », « Digest », « Kerberos » et « Negotiate ».

Les informations d’identification ajoutées avec cette méthode sont valides uniquement pour une utilisation avec SMTP. Cette méthode ne fonctionne pas pour les protocoles HTTP ou FTP.

S’applique à