SmtpClient.Credentials Właściwość

Definicja

Pobiera lub ustawia poświadczenia używane do uwierzytelniania nadawcy.

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

Wartość właściwości

Element ICredentialsByHost reprezentujący poświadczenia używane do uwierzytelniania lub null jeśli nie określono poświadczeń.

Wyjątki

Nie można zmienić wartości tej właściwości podczas wysyłania wiadomości e-mail.

Przykłady

Poniższy przykład kodu przedstawia ustawienie poświadczeń używanych do wysyłania wiadomości e-mail.

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

Uwagi

Niektóre serwery SMTP wymagają uwierzytelnienia klienta, zanim serwer wyśle wiadomość e-mail w jego imieniu. Aby użyć domyślnych poświadczeń sieciowych, możesz ustawić wartość na UseDefaultCredentialstrue zamiast ustawiać tę właściwość. UseDefaultCredentials Jeśli właściwość jest ustawiona na false, wartość , wartość ustawiona we Credentials właściwości będzie używana dla poświadczeń podczas nawiązywania połączenia z serwerem. UseDefaultCredentials Jeśli właściwość jest ustawiona na false , a Credentials właściwość nie została ustawiona, poczta jest wysyłana anonimowo do serwera.

Informacje o poświadczeniach można również określić przy użyciu plików konfiguracji aplikacji i maszyny. Aby uzyskać więcej informacji, zobacz <mailSettings> , element (ustawienia sieciowe). Jeśli informacje są określone przy użyciu Credentials właściwości, te informacje zastępują ustawienia pliku konfiguracji.

Przestroga

Jeśli podasz poświadczenia do uwierzytelniania podstawowego, zostaną one wysłane do serwera w postaci zwykłego tekstu. Może to stanowić problem z zabezpieczeniami, ponieważ poświadczenia mogą być widoczne, a następnie używane przez inne osoby.

Dotyczy