<network, element (ustawienia sieci> )
Konfiguruje opcje sieciowe zewnętrznego serwera protokołu SMTP (Simple Mail Transport Protocol).
<Konfiguracji>
<system.net>
<mailSettings>
<Smtp>
<Sieci>
Składnia
<network
clientDomain="string"
defaultCredentials="true|false"
enableSsl="true|false"
host="string"
password="string"
port="integer"
targetName="string"
userName="string"
/>
Atrybuty i elementy
W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.
Atrybuty
Atrybut | Opis |
---|---|
clientDomain |
Określa nazwę domeny klienta, która ma być używana w początkowym żądaniu protokołu SMTP w celu nawiązania połączenia z serwerem poczty SMTP. Wartość domyślna to nazwa localhost komputera lokalnego wysyłającego żądanie. |
defaultCredentials |
Określa, czy domyślne poświadczenia użytkownika powinny być używane do uzyskiwania dostępu do serwera poczty SMTP dla transakcji SMTP. Wartość domyślna to false . |
enableSsl |
Określa, czy protokół SSL jest używany do uzyskiwania dostępu do serwera poczty SMTP. Wartość domyślna to false . |
host |
Określa nazwę hosta serwera poczty SMTP do użycia na potrzeby transakcji SMTP. Ten atrybut nie ma wartości domyślnej. |
password |
Określa hasło używane do uwierzytelniania na serwerze poczty SMTP. Ten atrybut nie ma wartości domyślnej. |
port |
Określa numer portu, który ma być używany do nawiązywania połączenia z serwerem poczty SMTP. Wartość domyślna to 25. |
targetName |
Określa nazwę dostawcy usług (SPN), która ma być używana do uwierzytelniania w przypadku korzystania z rozszerzonej ochrony transakcji SMTP. Ten atrybut nie ma wartości domyślnej. |
userName |
Określa nazwę użytkownika do użycia do uwierzytelniania na serwerze poczty SMTP. Ten atrybut nie ma wartości domyślnej. |
Elementy podrzędne
Brak.
Elementy nadrzędne
Element | Opis |
---|---|
<smtp> , element (ustawienia sieci) | Konfiguruje opcje wysyłania wiadomości e-mail protokołu Simple Mail Transport Protocol (SMTP). |
Uwagi
Niektóre serwery SMTP wymagają uwierzytelnienia się na serwerze przed użyciem. Jeśli chcesz uwierzytelnić się samodzielnie przy użyciu domyślnych poświadczeń sieciowych na hoście, ustaw defaultCredentials
atrybut na true
. Właściwość SmtpNetworkElement.DefaultCredentials może służyć do pobierania bieżącej wartości atrybutu defaultCredentials
z odpowiednich plików konfiguracji.
Możesz również użyć uwierzytelniania podstawowego (nazwy użytkownika i hasła), aby uwierzytelnić się na serwerze SMTP. Aby użyć tej opcji, należy określić prawidłową nazwę użytkownika i hasło dla określonego serwera SMTP.
Uwaga
Uwierzytelnianie podstawowe wysyła wartości i password
do serwera niezaszyfrowanegouserName
. Każda osoba monitorująca ruch sieciowy może wyświetlać poświadczenia i używać ich do nawiązywania połączenia z serwerem. Należy rozważyć użycie bardziej bezpiecznego mechanizmu uwierzytelniania, takiego jak Kerberos lub NT LAN Manager (NTLM). Jeśli defaultCredentials
jest to true
, protokół Kerberos lub NTLM będzie używany, jeśli serwer obsługuje te protokoły.
Opcje uwierzytelniania podstawowego i domyślnych poświadczeń sieciowych wykluczają się wzajemnie; Jeśli ustawisz defaultCredentials
true
wartość i określisz nazwę użytkownika i hasło, zostanie użyte domyślne poświadczenie sieciowe, a podstawowe dane uwierzytelniania zostaną zignorowane.
W przypadku uwierzytelniania podstawowego, jeśli określisz userName
wartość , należy również określić wartość , aby password
uwierzytelnić się na serwerze poczty.
Właściwość SmtpNetworkElement.UserName może służyć do pobierania bieżącej wartości atrybutu userName
z odpowiednich plików konfiguracji. Właściwość SmtpNetworkElement.Password może służyć do pobierania bieżącej wartości atrybutu password
z odpowiednich plików konfiguracji. Atrybut password
nie byłby zwykle wprowadzany w plikach konfiguracji ze względów bezpieczeństwa.
Atrybut clientDomain
zmienia nazwę domeny klienta używaną w początkowym żądaniu protokołu SMTP na serwer SMTP. Atrybut clientDomain
można ustawić na w pełni kwalifikowaną nazwę domeny komputera lokalnego, a nie nazwę hosta lokalnego, która jest używana domyślnie. Zapewnia to większą zgodność ze standardami protokołu SMTP. Wartość domyślna to nazwa localhost komputera lokalnego wysyłającego żądanie. Właściwość SmtpNetworkElement.ClientDomain może służyć do pobierania bieżącej wartości atrybutu clientDomain
z odpowiednich plików konfiguracji.
Atrybut targetName
jest używany do uwierzytelniania w przypadku korzystania z rozszerzonej ochrony. Wartość domyślna to formularz "SMTPSVC/<host", w którym <host jest nazwą hosta>> serwera poczty SMTP. Właściwość SmtpNetworkElement.TargetName może służyć do pobierania bieżącej wartości atrybutu targetName
z odpowiednich plików konfiguracji.
Atrybut enableSsl
określa, czy protokół SSL jest używany do uzyskiwania dostępu do serwera poczty SMTP. Klasa System.Net.Mail.SmtpClient obsługuje tylko rozszerzenie usługi SMTP dla protokołu Secure SMTP over Transport Layer Security zgodnie z definicją w dokumencie RFC 3207. W tym trybie sesja SMTP rozpoczyna się w niezaszyfrowanym kanale, a następnie polecenie STARTTLS jest wydawane przez klienta do serwera, aby przełączyć się na bezpieczną komunikację przy użyciu protokołu SSL. Aby uzyskać więcej informacji, zobacz RFC 3207 opublikowane przez Internet Engineering Task Force (IETF).
Alternatywna metoda połączenia polega na tym, że sesja SSL jest ustanawiana z góry przed wysłaniem jakichkolwiek poleceń protokołu. Ta metoda połączenia jest czasami nazywana SMTPS i domyślnie używa portu 465. Ta alternatywna metoda połączenia przy użyciu protokołu SSL nie jest obecnie obsługiwana.
Właściwość SmtpNetworkElement.EnableSsl może służyć do pobierania bieżącej wartości atrybutu enableSsl
z odpowiednich plików konfiguracji.
Przykład
Poniższy przykład określa odpowiednie parametry SMTP do wysyłania wiadomości e-mail przy użyciu domyślnych poświadczeń sieciowych.
<configuration>
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network
clientDomain="www.contoso.com"
defaultCredentials="true"
enableSsl="false"
host="mail.contoso.com"
port="25"
/>
</smtp>
</mailSettings>
</system.net>
</configuration>