CredentialCache.Add Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Voegt een NetworkCredential exemplaar toe aan de referentiecache.
Overloads
| Name | Description |
|---|---|
| Add(Uri, String, NetworkCredential) |
Voegt een NetworkCredential exemplaar toe aan de referentiecache voor gebruik met andere protocollen dan SMTP en koppelt het aan een URI-voorvoegsel (Uniform Resource Identifier) en verificatieprotocol. |
| Add(String, Int32, String, NetworkCredential) |
Voegt een NetworkCredential exemplaar voor gebruik met SMTP toe aan de referentiecache en koppelt deze aan een hostcomputer, poort en verificatieprotocol. Referenties die zijn toegevoegd met deze methode zijn alleen geldig voor SMTP. Deze methode werkt niet voor HTTP- of FTP-aanvragen. |
Add(Uri, String, NetworkCredential)
Voegt een NetworkCredential exemplaar toe aan de referentiecache voor gebruik met andere protocollen dan SMTP en koppelt het aan een URI-voorvoegsel (Uniform Resource Identifier) en verificatieprotocol.
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)
Parameters
- uriPrefix
- Uri
Een Uri die het URI-voorvoegsel aangeeft van de resources waartoe de referentie toegang verleent.
- authType
- String
Het verificatieschema dat wordt gebruikt door de resource met de naam in uriPrefix.
- cred
- NetworkCredential
De NetworkCredential te toevoegen aan de referentiecache.
Uitzonderingen
Dezelfde referenties worden meerdere keren toegevoegd.
Voorbeelden
In het volgende codevoorbeeld wordt een CredentialCache met meerdere beveiligingsreferenties geïnitialiseerd en worden deze referenties gebruikt met een 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
Opmerkingen
De Add methode plaatst een NetworkCredential exemplaar voor gebruik met andere protocollen dan SMTP in de CredentialCache. In de cache worden referenties opgeslagen in de volgorde waarin ze eraan worden toegevoegd. Wanneer de GetCredential(Uri, String) methode wordt aangeroepen, wordt het juiste overeenkomende NetworkCredential exemplaar geretourneerd.
Van toepassing op
Add(String, Int32, String, NetworkCredential)
Voegt een NetworkCredential exemplaar voor gebruik met SMTP toe aan de referentiecache en koppelt deze aan een hostcomputer, poort en verificatieprotocol. Referenties die zijn toegevoegd met deze methode zijn alleen geldig voor SMTP. Deze methode werkt niet voor HTTP- of FTP-aanvragen.
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)
Parameters
- authenticationType
- String
Een String die het verificatieschema identificeert dat wordt gebruikt bij het maken van verbinding met host het gebruik.credential
- credential
- NetworkCredential
De NetworkCredential te toevoegen aan de referentiecache.
Uitzonderingen
authenticationType geen geaccepteerde waarde.
port is kleiner dan nul.
Voorbeelden
In het volgende codevoorbeeld wordt een CredentialCache met meerdere beveiligingsreferenties geïnitialiseerd voor gebruik met SMTP en wordt een van deze referenties gebruikt met een 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
Opmerkingen
Met deze methode wordt een NetworkCredential exemplaar voor gebruik met SMTP in de CredentialCache. In de cache worden referenties opgeslagen in de volgorde waarin ze eraan worden toegevoegd. Wanneer de GetCredential(String, Int32, String) methode wordt aangeroepen, wordt een NetworkCredential exemplaar geretourneerd dat is geselecteerd door de host, porten authenticationType. De vergelijking wordt niet hoofdlettergevoelig uitgevoerd.
De ondersteunde waarden zijn authenticationType 'NTLM', 'Digest', 'Kerberos' en 'Negotiate'.
Referenties die met deze methode zijn toegevoegd, zijn alleen geldig voor gebruik met SMTP. Deze methode werkt niet voor HTTP- of FTP-protocollen.