CredentialCache.Add Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Agrega una instancia de NetworkCredential a la caché de credenciales.
Sobrecargas
Add(Uri, String, NetworkCredential) |
Agrega una instancia de NetworkCredential a la caché de credenciales para utilizar con protocolos distintos de SMTP y la asocia a un prefijo de identificador uniforme de recursos (URI) y un protocolo de autenticación. |
Add(String, Int32, String, NetworkCredential) |
Agrega una instancia de NetworkCredential para utilizar con SMPT a la caché de credenciales y la asocia a un equipo host, puerto y protocolo de autenticación. Las credenciales agregadas mediante este método son únicamente válidas para SMTP. Este método no funciona para las solicitudes de HTTP y FTP. |
Add(Uri, String, NetworkCredential)
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
Agrega una instancia de NetworkCredential a la caché de credenciales para utilizar con protocolos distintos de SMTP y la asocia a un prefijo de identificador uniforme de recursos (URI) y un protocolo de autenticación.
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)
Parámetros
- uriPrefix
- Uri
Uri que especifica el prefijo URI de los recursos a los que la credencial concede acceso.
- authType
- String
Esquema de autenticación utilizado por el recurso especificado en uriPrefix
.
- cred
- NetworkCredential
NetworkCredential que se agregará a la caché de credenciales.
Excepciones
Se han agregado las mismas credenciales más de una vez.
Ejemplos
En el ejemplo de código siguiente se inicializa con CredentialCache varias credenciales de seguridad y se usan esas credenciales con .WebRequest
CredentialCache^ myCache = gcnew CredentialCache;
myCache->Add( gcnew Uri( "http://www.contoso.com/" ), "Basic", gcnew NetworkCredential( UserName,SecurelyStoredPassword ) );
myCache->Add( gcnew Uri( "http://www.contoso.com/" ), "Digest", gcnew NetworkCredential( UserName,SecurelyStoredPassword,Domain ) );
wReq->Credentials = myCache;
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
Comentarios
El Add método coloca una NetworkCredential instancia para su uso con protocolos distintos de SMTP en .CredentialCache La memoria caché almacena las credenciales en el orden en que se agregan a ella. Cuando se llama al GetCredential(Uri, String) método , devuelve la instancia coincidente NetworkCredential adecuada.
Se aplica a
Add(String, Int32, String, NetworkCredential)
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
- Source:
- CredentialCache.cs
Agrega una instancia de NetworkCredential para utilizar con SMPT a la caché de credenciales y la asocia a un equipo host, puerto y protocolo de autenticación. Las credenciales agregadas mediante este método son únicamente válidas para SMTP. Este método no funciona para las solicitudes de HTTP y 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)
Parámetros
- authenticationType
- String
Un valor String que identifica el esquema de autenticación utilizado para conectarse a host
utilizando cred
.
- credential
- NetworkCredential
NetworkCredential que se agregará a la caché de credenciales.
Excepciones
authType
no tiene un valor aceptado.
port
es menor que cero.
Ejemplos
En el ejemplo de código siguiente se inicializa con CredentialCache varias credenciales de seguridad para su uso con SMTP y se usa una de esas credenciales con .SmtpClient
SmtpClient^ client = gcnew SmtpClient("ContosoMail", 45);
MailAddress^ from = gcnew MailAddress("sender@SenderMailServerName.com", "Sender Name");
MailAddress^ to = gcnew MailAddress("recepient@RecepientMailServerName.com", "Recepient Name");
MailMessage^ message = gcnew MailMessage(from, to);
message->Body = "This is a test email message sent by an application. ";
message->Subject = "Test Email using Credentials";
NetworkCredential^ myCreds = gcnew NetworkCredential("username", "password", "domain");
CredentialCache^ myCredentialCache = gcnew 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);
}
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
Comentarios
Este método coloca una NetworkCredential instancia para su uso con SMTP en .CredentialCache La memoria caché almacena las credenciales en el orden en que se agregan a ella. Cuando se llama al GetCredential(String, Int32, String) método , devuelve una NetworkCredential instancia seleccionada mediante la host
coincidencia de , port
y authType
. La comparación se realiza sin distinción entre mayúsculas y minúsculas.
Los valores admitidos para authType
son "NTLM", "Digest", "Kerberos" y "Negotiate".
Las credenciales agregadas con este método solo son válidas para su uso con SMTP. Este método no funciona para protocolos HTTP o FTP.