SmtpClient.UseDefaultCredentials Propiedad
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í.
Obtiene o establece un valor Boolean que controla si se envían DefaultCredentials con las solicitudes.
public:
property bool UseDefaultCredentials { bool get(); void set(bool value); };
public bool UseDefaultCredentials { get; set; }
member this.UseDefaultCredentials : bool with get, set
Public Property UseDefaultCredentials As Boolean
Valor de propiedad
Es true
si se utilizan las credenciales predeterminadas; en caso contrario, es false
. El valor predeterminado es false
.
Excepciones
No se puede cambiar el valor de esta propiedad cuando se está enviando un mensaje de correo electrónico.
Ejemplos
En el ejemplo de código siguiente se muestra el uso de esta propiedad.
static void CreateTestMessage2( String^ server )
{
String^ to = L"jane@contoso.com";
String^ from = L"ben@contoso.com";
MailMessage^ message = gcnew MailMessage( from,to );
message->Subject = L"Using the new SMTP client.";
message->Body = L"Using this new feature, you can send an email message from an application very easily.";
SmtpClient^ client = gcnew SmtpClient( server );
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client->UseDefaultCredentials = true;
client->Send( message );
client->~SmtpClient();
}
public static void CreateTestMessage2(string server)
{
string to = "jane@contoso.com";
string from = "ben@contoso.com";
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the new SMTP client.";
message.Body = @"Using this new feature, you can send an email message from an application very easily.";
SmtpClient client = new SmtpClient(server);
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client.UseDefaultCredentials = true;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
ex.ToString());
}
}
Comentarios
Algunos servidores SMTP requieren que el cliente se autentique antes de que el servidor envíe correo electrónico en su nombre. Establezca esta propiedad true
en cuando este SmtpClient objeto debe, si lo solicita el servidor, autenticarse con las credenciales predeterminadas del usuario que ha iniciado sesión actualmente. En el caso de las aplicaciones cliente, este es el comportamiento deseado en la mayoría de los escenarios.
La información de credenciales también puede especificarse utilizando los archivos de configuración de máquina y la aplicación. Para obtener más información, vea <elemento mailSettings> (Configuración de red) .
Si la UseDefaultCredentials propiedad se establece false,
en , el valor establecido en la Credentials propiedad se usará para las credenciales al conectarse al servidor. Si la UseDefaultCredentials propiedad está establecida false
en y la propiedad no se ha establecido, el Credentials correo se envía al servidor de forma anónima.
Precaución
Si proporciona credenciales para la autenticación básica, se envían al servidor en texto claro. Esto puede presentar un problema de seguridad porque otras personas pueden ver las credenciales y, a continuación, usarlas.