SmtpClient.Credentials Proprietà

Definizione

Ottiene o imposta le credenziali utilizzate per autenticare il mittente.

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

Valore della proprietà

Interfaccia ICredentialsByHost che rappresenta le credenziali da utilizzare per l'autenticazione oppure null se non è stata specificata alcuna credenziale.

Eccezioni

Non è possibile modificare il valore di questa proprietà mentre viene inviato un messaggio di posta elettronica.

Esempio

Nell'esempio di codice seguente viene illustrata l'impostazione delle credenziali usate per inviare un messaggio di posta elettronica.

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);
}

Commenti

Alcuni server SMTP richiedono che il client venga autenticato prima che il server invii un messaggio di posta elettronica per suo conto. Per usare le credenziali di rete predefinite, è possibile impostare su UseDefaultCredentialstrue anziché impostare questa proprietà. Se la UseDefaultCredentials proprietà è impostata su false, , il valore impostato nella Credentials proprietà verrà usato per le credenziali durante la connessione al server. Se la proprietà è impostata su false e la UseDefaultCredentialsCredentials proprietà non è stata impostata, la posta viene inviata al server in modo anonimo.

Le informazioni delle credenziali possono essere specificate anche utilizzando i file di configurazione dell'applicazione e del computer. Per altre informazioni, vedere <elemento mailSettings> (Impostazioni di rete). Se le informazioni vengono specificate usando la proprietà, queste informazioni eseguono l'override Credentials delle impostazioni del file di configurazione.

Attenzione

Se si specificano le credenziali per l'autenticazione di base, queste vengono inviate al server in formato testo non crittografato. Questo può presentare un problema di sicurezza perché le credenziali possono essere visualizzate e quindi usate da altri utenti.

Si applica a