다음을 통해 공유


<네트워크> 요소 (네트워크 설정)

외부 SMTP(Simple Mail Transport Protocol) 서버에 대한 네트워크 옵션을 구성합니다.

<configuration>
  <system.net>
    <mailSettings>
      <smtp>
        <network>

구문

<network  
  clientDomain="string"
  defaultCredentials="true|false"  
  enableSsl="true|false"  
  host="string"
  password="string"  
  port="integer"
  targetName="string"  
  userName="string"  
/>  

특성 및 요소

다음 섹션에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 Description
clientDomain SMTP 메일 서버에 연결하기 위한 초기 SMTP 프로토콜 요청에 사용할 클라이언트 도메인 이름을 지정합니다. 기본값은 요청을 보내는 로컬 컴퓨터의 localhost 이름입니다.
defaultCredentials SMTP 트랜잭션을 위해 SMTP 메일 서버에 액세스하는 데 기본 사용자 자격 증명을 사용해야 하는지 여부를 지정합니다. 기본값은 false입니다.
enableSsl SMTP 메일 서버에 액세스하는 데 SSL을 사용할지 여부를 지정합니다. 기본값은 false입니다.
host SMTP 트랜잭션에 사용할 SMTP 메일 서버의 호스트 이름을 지정합니다. 이 특성에는 기본값이 없습니다.
password SMTP 메일 서버 인증에 사용할 암호를 지정합니다. 이 특성에는 기본값이 없습니다.
port SMTP 메일 서버에 연결하는 데 사용할 포트 번호를 지정합니다. 기본값은 25입니다.
targetName SMTP 트랜잭션에 대한 확장 보호를 사용하는 경우 인증에 사용할 SPN(서비스 공급자 이름)을 지정합니다. 이 특성에는 기본값이 없습니다.
userName SMTP 메일 서버 인증에 사용할 사용자 이름을 지정합니다. 이 특성에는 기본값이 없습니다.

자식 요소

없음

부모 요소

요소 Description
<smtp> 요소(네트워크 설정) SMTP(Simple Mail Transport Protocol) 메일 보내기 옵션을 구성합니다.

설명

일부 SMTP 서버에서는 사용하기 전에 서버에 사용자 본인을 인증해야 합니다. 호스트의 기본 네트워크 자격 증명을 사용하여 자신을 인증하려면 defaultCredentials 속성을 true로 설정합니다. SmtpNetworkElement.DefaultCredentials 속성은 적용 가능한 구성 파일에서 defaultCredentials 특성의 현재 값을 가져오는 데 사용할 수 있습니다.

기본 인증(사용자 이름 및 암호)을 사용하여 SMTP 서버에 자신을 인증할 수도 있습니다. 이 옵션을 사용하려면 지정된 SMTP 서버의 유효한 사용자 이름 및 암호를 지정해야 합니다.

참고

기본 인증은 userNamepassword 값을 암호화되지 않은 상태로 서버에 보냅니다. 네트워크 트래픽을 모니터링하는 사람은 누구나 자격 증명을 보고 이를 사용하여 서버에 연결할 수 있습니다. Kerberos 또는 NTLM(NT LAN Manager)과 같은 더욱 안전한 인증 메커니즘을 사용하는 것이 좋습니다. defaultCredentialstrue이면 서버가 이러한 프로토콜을 지원하는 경우 Kerberos 또는 NTLM이 사용됩니다.

기본 인증 및 기본 네트워크 자격 증명 옵션은 상호 배타적입니다. defaultCredentialstrue로 설정하고 사용자 이름과 암호를 지정하면 기본 네트워크 자격 증명이 사용되며 기본 인증 데이터는 무시됩니다.

기본 인증의 경우 userName을 지정하는 경우 메일 서버에 자신을 인증하기 위해 password도 지정해야 합니다.

SmtpNetworkElement.UserName 속성은 적용 가능한 구성 파일에서 userName 특성의 현재 값을 가져오는 데 사용할 수 있습니다. SmtpNetworkElement.Password 속성은 적용 가능한 구성 파일에서 password 특성의 현재 값을 가져오는 데 사용할 수 있습니다. password 속성은 일반적으로 보안상의 이유로 구성 파일에 입력되지 않습니다.

clientDomain 속성은 초기 SMTP 프로토콜 요청에 사용되는 클라이언트 도메인 이름을 SMTP 서버로 변경합니다. clientDomain 속성은 기본적으로 사용되는 localhost 이름이 아닌 로컬 시스템의 정규화된 도메인 이름으로 설정할 수 있습니다. 이 큰 SMTP 프로토콜 표준 준수를 제공합니다. 기본값은 요청을 보내는 로컬 컴퓨터의 localhost 이름입니다. SmtpNetworkElement.ClientDomain 속성은 적용 가능한 구성 파일에서 clientDomain 특성의 현재 값을 가져오는 데 사용할 수 있습니다.

targetName 특성은 확장된 보호를 사용할 때 인증에 사용됩니다. 기본 값은 "SMTPSVC/<host>" 형식입니다. 여기서 <host>는 SMTP 메일 서버의 호스트 이름입니다. SmtpNetworkElement.TargetName 속성은 적용 가능한 구성 파일에서 targetName 특성의 현재 값을 가져오는 데 사용할 수 있습니다.

enableSsl 특성은 SMTP 메일 서버에 액세스하는 데 SSL을 사용할지 여부를 지정합니다. System.Net.Mail.SmtpClient 클래스 SMTP 서비스 확장에 대해만 지원 SMTP 보안 전송 계층 보안을 통해 3207 RFC에에서 정의 된 대로 합니다. 이 모드에서는 SMTP 세션이 시작 된 암호화 되지 않은 채널에 다음 STARTTLS 명령을 실행 하는 SSL을 사용 하 여 보안 통신을 전환 하려면 서버에 클라이언트에서 발생 합니다. RFC 3207 게시 하 여는 Task Force IETF (Internet Engineering)에 대 한 자세한 내용은 참조 하세요.

대체 연결 메서드 명령을 보내는 모든 프로토콜 하기 전에 SSL 세션을 선불 하 게 설정 하는 경우 이 연결 방법을 SMTPS 라고 하 고 기본적으로 포트 465를 사용 합니다. 이 대체 연결 방법은 SSL을 사용 하 여 현재 지원 되지 않습니다.

SmtpNetworkElement.EnableSsl 속성은 적용 가능한 구성 파일에서 enableSsl 특성의 현재 값을 가져오는 데 사용할 수 있습니다.

예제

다음 예에서는 기본 네트워크 자격 증명을 사용하여 이메일을 보내기 위한 적절한 SMTP 매개 변수를 지정합니다.

<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>  

참고 항목