SmtpClient.Credentials Propriedade

Definição

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

public:
 property System::Net::ICredentialsByHost ^ Credentials { System::Net::ICredentialsByHost ^ get(); void set(System::Net::ICredentialsByHost ^ value); };
public System.Net.ICredentialsByHost? Credentials { get; set; }
public System.Net.ICredentialsByHost Credentials { get; set; }
member this.Credentials : System.Net.ICredentialsByHost with get, set
Public Property Credentials As ICredentialsByHost

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.

static void CreateTestMessage1( String^ server, int port )
{
   String^ to = L"jane@contoso.com";
   String^ from = L"ben@contoso.com";
   String^ subject = L"Using the new SMTP client.";
   String^ body = L"Using this new feature, you can send an email message from an application very easily.";
   MailMessage^ message = gcnew MailMessage( from,to,subject,body );
   SmtpClient^ client = gcnew 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 );
   client->~SmtpClient();
}
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.

Cuidado

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