SmtpClient.Credentials Propriedade

Definição

Obtém ou define as credenciais usadas para autenticar o remetente.

public System.Net.ICredentialsByHost? Credentials { get; set; }
public System.Net.ICredentialsByHost Credentials { get; set; }

Valor da propriedade

Um ICredentialsByHost que representa as credenciais a serem usadas para autenticação; ou null se nenhuma credencial tiver sido especificada.

Exceções

Não será possível alterar o valor dessa propriedade quando um email estiver sendo enviado.

Exemplos

O exemplo de código a seguir demonstra como definir as credenciais usadas para enviar um email.

public static void CreateTestMessage1(string server, int port)
{
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    string subject = "Using the new SMTP client.";
    string body = @"Using this new feature, you can send an email message from an application very easily.";
    MailMessage message = new MailMessage(from, to, subject, body);
    SmtpClient client = new SmtpClient(server, port);
    // Credentials are necessary if the server requires the client
    // to authenticate before it will send email on the client's behalf.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;
    client.Send(message);
}

Comentários

Alguns servidores SMTP exigem que o cliente seja autenticado antes que o servidor envie emails em seu nome. Para usar suas credenciais de rede padrão, você pode definir como UseDefaultCredentialstrue em vez de definir essa propriedade. Se a UseDefaultCredentials propriedade for definida como false, , o valor definido na Credentials propriedade será usado para as credenciais ao se conectar ao servidor. Se a UseDefaultCredentials propriedade estiver definida false como e a Credentials propriedade não tiver sido definida, o email será enviado ao servidor anonimamente.

As informações de credenciais também podem ser especificadas usando os arquivos de configuração do computador e do aplicativo. Para obter mais informações, consulte <Elemento mailSettings> (Configurações de Rede). Se as informações forem especificadas usando a Credentials propriedade , essas informações substituirão as configurações do arquivo de configuração.

Atenção

Se forem fornecidas credenciais para autenticação básica, elas são enviadas para o servidor em texto não criptografado. Isso pode apresentar um problema de segurança porque suas credenciais podem ser vistas e usadas por outras pessoas.

Aplica-se a

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1