다음을 통해 공유


Reporting Services 기본 모드의 이메일 설정(보고서 서버 구성 관리자)

SQL Server Reporting Services에는 이메일을 통해 보고서를 배포할 수 있도록 이메일 배달 확장 프로그램이 포함되어 있습니다. 이메일 구독을 정의하는 방법에 따라 배달은 알림, 링크, 첨부 파일 또는 포함된 보고서로 구성될 수 있습니다. 이메일 배달 확장 프로그램은 기존 메일 서버 기술과 함께 작동합니다. 메일 서버는 SMTP 서버 또는 전달자여야 합니다. 보고서 서버는 운영 체제에서 제공하는 CDO(Collaboration Data Objects) 라이브러리(cdosys.dll)를 통해 SMTP 서버에 연결합니다.

보고서 서버 이메일 배달 확장 프로그램은 기본적으로 구성되어 있지 않습니다. 따라서 보고서 서버 구성 관리자를 사용하여 확장 프로그램을 최소한으로 구성해야 합니다. 고급 속성을 설정하려면 RSReportServer.config 파일을 편집해야 합니다. 이 확장을 사용하도록 보고서 서버를 구성할 수 없는 경우 대신 공유 폴더에 보고서를 배달할 수 있습니다. 자세한 내용은 File Share Delivery in Reporting Services을 참조하세요.

구성 요구 사항

  • 보고서 서버 이메일 배달은 CDO(Collaboration Data Objects)에서 구현되며 로컬 또는 원격 SMTP(Simple Mail Transfer Protocol) 서버 또는 SMTP 전달자가 필요합니다. SMTP가 모든 Windows 운영 체제에서 지원되는 것은 아닙니다. Itanium 기반 버전의 Windows Server 2008을 사용하는 경우 SMTP가 지원되지 않습니다. CDO를 통해 제공되는 구성 옵션에 대한 자세한 내용은 구성 CoClass를 참조하세요.

구성된 인증 계정은 메일을 보내려면 SMTP 서버에 대한 권한이 있어야 합니다.

  • 이메일 배달 확장 프로그램은 이메일 첨부 파일에 UTF-8 인코딩을 사용합니다. 인코딩을 수정할 수 없으며 HTML 렌더링 확장 프로그램은 UTF-8만 지원합니다.

참고 항목

기본 이메일 배달 확장 프로그램은 디지털 서명 또는 발신 메일 메시지 암호화를 지원하지 않습니다.

이메일 배달을 위한 구성 옵션 설정

보고서 서버 이메일 배달을 사용하려면 먼저 사용할 SMTP 서버에 대한 정보를 제공하는 구성 값을 설정해야 합니다.

이메일 배달을 위한 보고서 서버를 구성하려면 다음을 수행합니다.

  • SMTP 서버와 이메일을 보낼 수 있는 권한이 있는 사용자 계정만 지정하는 경우 보고서 서버 구성 관리자를 사용합니다. 이 설정은 보고서 서버 이메일 배달 확장 프로그램을 구성하는 데 필요한 최소한의 설정입니다.

  • (선택 사항) 텍스트 편집기를 사용하여 RSreportserver.config 파일에서 다른 설정을 지정합니다. 이 파일에는 보고서 서버 이메일 배달에 대한 모든 구성 설정이 포함되어 있습니다. 로컬 SMTP 서버를 사용하거나 이메일 배달을 특정 호스트로 제한하는 경우 이러한 파일에 추가 설정을 지정해야 합니다. 구성 파일을 찾아서 수정하는 방법에 대한 자세한 내용은 Reporting Services 구성 파일(RSreportserver.config) 수정을 참조하세요.

참고 항목

보고서 서버 이메일 설정은 CDO를 기반으로 합니다. 특정 설정에 대한 자세한 내용은 CDO 프로덕션 설명서를 참조하세요.

보고서 서버 구성 관리자를 사용하여 보고서 서버 이메일 구성

  1. 보고서 서버 구성 관리자를 시작한 후 보고서 서버 인스턴스에 연결합니다.

  2. 보낸 사람 주소에 생성된 이메일의 보낸 사람: 필드에 사용할 이메일 주소를 입력합니다.

    SMTP 서버에서 메일을 보낼 수 있는 권한이 있는 사용자 계정을 지정해야 합니다. 보낸 사람 주소에 입력한 값은 rsreportserver.config 파일의 <From> 필드에 저장됩니다.

  3. SMTP 서버에 사용할 SMTP 서버 또는 게이트웨이를 지정합니다.

    이 값은 IP 주소, 회사 인트라넷에 있는 컴퓨터의 NetBIOS 이름 또는 정규화된 도메인 이름일 수 있습니다. SMTP 서버에 입력한 값은 rsreportserver.config 파일의 <SMTPServer> 필드에 저장됩니다.

  4. 인증 드롭다운을 사용하여 SMTP 서버에 인증하는 방법을 지정합니다.

    • 인증 없음은 지정된 메일 서버에 익명으로 연결한다는 의미입니다.

      이 옵션을 선택하면 rsreportserver.config에서 <SendUsing>의 값이 2로 설정되고 <SMTPAuthenticate>의 값이 0으로 설정됩니다.

    • 사용자 이름 및 암호(기본)를 사용하면 메일 서버에 연결할 사용자 이름과 암호를 지정할 수 있습니다. 보안 연결 사용을 선택하여 이 인증이 메일 서버에 암호화된 연결을 통해 이루어지도록 할 수도 있습니다.

      이 옵션을 선택하면 rsreportserver.config에서 <SendUsing>의 값이 2로 설정되고 <SMTPAuthenticate>의 값이 1로 설정됩니다. 보안 연결 사용을 선택하면 SMTPUseSSLTrue로 설정됩니다. 사용자 이름<SendUserName>에 암호화된 값으로 설정됩니다. 암호<SendPassword>에 암호화된 값으로 설정됩니다.

    • 보고서 서버 서비스 계정(NTLM)은 보고서 서버에 지정한 서비스 계정을 사용합니다. 인증에 보고서 서버 서비스 계정을 사용하는 경우 서비스 계정에 SMTP 서버에 대해 다른 이름으로 보내기 권한이 있는지 확인합니다.

      이 옵션을 선택하면 rsreportserver.config에서 <SendUsing>의 값이 2로 설정되고 <SMTPAuthenticate>의 값이 2로 설정됩니다.

  5. 적용을 선택합니다.

  6. 필요에 따라 rsreportserver.config 내에서 이메일 구성에 대한 다른 필드를 조정할 수 있습니다.

보고서 서버 이메일 구성 예제

다음 예제에서는 원격 SMTP 서버에 대한 RSreportserver.config 파일의 설정을 보여 줍니다. 설정 설명 및 유효한 값에 대해 알아보려면 RsReportServer.config 구성 파일을 참조하세요.

<RSEmailDPConfiguration>
     <SMTPServer>mySMTPServer.Adventure-Works.com</SMTPServer>
     <SMTPServerPort></SMTPServerPort>
     <SMTPAccountName></SMTPAccountName>
     <SMTPConnectionTimeout></SMTPConnectionTimeout>
     <SMTPServerPickupDirectory></SMTPServerPickupDirectory>
     <SMTPUseSSL>False</SMTPUseSSL>
     <SendUsing>2</SendUsing>
     <SMTPAuthenticate>2</SMTPAuthenticate>
     <From>my-rs-email-account@Adventure-Works.com</From>
     <EmbeddedRenderFormats>
          <RenderingExtension>MHTML</RenderingExtension>
     </EmbeddedRenderFormats>
     <PrivilegedUserRenderFormats></PrivilegedUserRenderFormats>
     <ExcludedRenderFormats>
          <RenderingExtension>HTMLOWC</RenderingExtension>
          <RenderingExtension>NULL</RenderingExtension>
          <RenderingExtension>RGDI</RenderingExtension>
     </ExcludedRenderFormats>
     <SendEmailToUserAlias>True</SendEmailToUserAlias>
     <DefaultHostName></DefaultHostName>
     <PermittedHosts>
          <HostName>Adventure-Works.com</HostName>
          <HostName>hotmail.com</HostName>
     </PermittedHosts>
     <SendUserName></SendUserName>
     <SendPassword></SendPassword>
</RSEmailDPConfiguration>

메시지의 받는 사람 필드 설정을 위한 구성 옵션

개별 구독 관리 태스크에서 부여한 권한에 따라 만들어진 사용자 정의 구독에는 도메인 사용자 계정을 기반으로 하는 미리 설정된 사용자 이름이 포함되어 있습니다. 사용자가 구독을 만들 때 받는 사람: 필드의 수신자 이름은 구독을 만드는 사람의 도메인 사용자 계정을 사용하여 자동으로 주소가 지정됩니다.

도메인 사용자 계정과 다른 이메일 계정을 사용하는 SMTP 서버 또는 전달자를 사용하는 경우 SMTP 서버가 해당 사용자에게 보고서를 배달하려고 하면 보고서 배달이 실패합니다.

이 문제를 해결하려면 사용자가 받는 사람: 필드에 이름을 입력할 수 있도록 구성 설정을 수정해야 합니다.

  1. 텍스트 편집기에서 RSReportServer.config를 엽니다.

  2. <SendEmailToUserAlias>False로 설정합니다.

  3. <DefaultHostName>을 SMTP 서버 또는 전달자의 DNS(Domain Name System) 이름 또는 IP 주소로 설정합니다.

  4. 파일을 저장합니다.

원격 SMTP 서비스에 대한 구성 옵션

다음과 같은 구성 설정에 따라 보고서 서버와 SMTP 서버 또는 전달자 간의 연결이 결정됩니다.

  • <SendUsing>은 메시지를 보내는 방법을 지정합니다. 네트워크 SMTP 서비스 또는 로컬 SMTP 서비스 픽업 디렉터리 중에서 선택할 수 있습니다. 원격 SMTP 서비스를 사용하려면 RSReportServer.config 파일에서 이 값을 2로 설정해야 합니다.
  • <SMTPServer>는 원격 SMTP 서버 또는 전달자를 지정합니다. 이 값은 원격 SMTP 서버 또는 전달자를 사용하는 경우 필수 값입니다.
  • <From>은 이메일 메시지의 보낸 사람: 줄에 표시되는 값을 설정합니다. 이 값은 원격 SMTP 서버 또는 전달자를 사용하는 경우 필수 값입니다.

원격 SMTP 서비스에 사용되는 기타 값은 다음과 같습니다. 기본값을 재정의하려는 것이 아니라면 이 값을 지정할 필요는 없습니다.

  • <SMTPServerPort>는 기본적으로 포트 25에 대해 구성되어 있습니다.
  • <SMTPAuthenticate>는 보고서 서버가 원격 SMTP 서버에 연결하는 방법을 지정합니다. 기본값은 0(또는 인증 없음)입니다. 이 경우 익명 액세스를 통해 연결이 설정됩니다. 도메인 구성에 따라 보고서 서버와 SMTP 서버가 동일한 도메인의 멤버여야 할 수도 있습니다.
  • 제한된 메일 그룹(예: 인증된 계정에서 보낸 메시지만 허용하는 메일 그룹)에 이메일을 보내려면 <SMTPAuthenticate>1 또는 2로 설정합니다. 1로 설정한 경우 <SendUserName><SendPassword>도 설정해야 합니다. 가장 좋은 방법은 보고서 서버 구성 관리자를 통해 이 설정을 변경하는 것입니다. 이를 통해 변경하면 <SendUserName><SendPassword> 값을 암호화하기 때문입니다.

보고서 서버에 대한 원격 SMTP 서비스 구성

참고 항목

보고서 서버 구성 관리자를 통해 메일 서버를 구성하는 것이 가장 좋습니다.

  1. 보고서 서버 Windows 서비스에 SMTP 서버에 대해 다른 이름으로 보내기 권한이 있는지 확인합니다.

  2. 텍스트 편집기에서 RSReportServer.config 파일을 엽니다.

  3. <UrlRoot>가 보고서 서버 URL 주소로 설정되어 있는지 확인합니다. 이 값은 보고서 서버를 구성할 때 설정되며 이미 입력되어 있어야 합니다. 설정되지 않은 경우 보고서 서버 URL 주소를 입력합니다.

  4. 배달 섹션에서 <RSEmailDPConfiguration>을 찾습니다.

  5. <SMTPServer>에 SMTP 서버의 이름을 입력합니다. 이 값은 IP 주소, 회사 인트라넷에 있는 컴퓨터의 UNC 이름 또는 정규화된 도메인 이름일 수 있습니다.

  6. 보고서 서버에 서비스 계정을 사용하려면 <SendUsing>의 값을 2로 설정합니다. 기본 인증을 위해 <SendUsing>의 값을 1로 설정합니다. 이 값을 1로 설정하면 <SendUserName><SendPassword>에 대한 값도 제공해야 합니다. 이러한 값을 암호화하려면 보고서 서버 구성 관리자 내에서 인증을 설정합니다.

  7. <SendUsing>을 1 또는 2로 설정한 경우 <SMTPAuthenticate>의 값을 1로 설정합니다.

  8. <From>을 설정합니다. SMTP 서버에서 메일을 보낼 수 있는 권한이 있는 사용자 계정을 지정해야 합니다.

  9. 파일을 저장합니다.

보고서 서버는 새 설정을 자동으로 사용하므로 서비스를 다시 시작할 필요가 없습니다. 다른 SMTP 설정을 지정하여 보고서 서버 이메일 배달에 SMTP 서버가 사용되는 방법을 추가로 구성할 수 있습니다.

로컬 SMTP 서비스에 대한 구성 옵션

로컬 SMTP 서비스를 구성하는 것은 보고서 서버 이메일 배달을 테스트하거나 문제를 해결하는 경우에 유용합니다. 로컬 SMTP 서비스는 기본적으로 사용하도록 설정되어 있지 않습니다.

다음과 같은 구성 설정에 따라 보고서 서버와 로컬 SMTP 서버 또는 전달자 간의 연결이 결정됩니다.

  • SendUsing1로 설정합니다.
  • SMTPServerPickupDirectory 를 로컬 드라이브의 폴더로 설정합니다.

참고 항목

로컬 SMTP 서버를 사용하는 경우 SMTPServer를 설정하지 않아야 합니다.

  • From은 이메일 메시지의 보낸 사람: 줄에 표시되는 값을 설정합니다. 이 값은 필수입니다.

보고서 서버에 대한 로컬 SMTP 서비스 구성

  1. 제어판에서 Windows 기능 켜기 또는 끄기를 선택하여 역할 및 기능 추가 마법사를 시작합니다.

  2. 역할 기반 또는 기능 기반 설치를 선택하고 다음을 클릭합니다.

  3. IIS(인터넷 정보 서버)를 설치할 서버를 선택하고 다음을 선택합니다.

  4. 서버 역할 페이지에서 다음을 선택합니다.

  5. 기능 페이지에서 SMTP 서버를 선택한 후 다음을 선택합니다.

    SMTP 서버에 필요한 기능을 추가하라는 메시지가 표시되면 기능 추가를 선택합니다.

  6. 웹 서버 역할(IIS) 페이지에서 다음을 선택합니다.

  7. 역할 서비스 페이지에서 다음을 선택합니다.

  8. 확인 페이지에서 설치를 선택합니다.

  9. SMTP(Simple Mail Transfer Protocol) Windows 서비스가 서비스 콘솔에서 실행 중인지 확인합니다.

    로컬 SMTP 서버를 구성하려면 관리 도구에서 IIS 6.0 관리자를 사용해야 합니다.

  10. 텍스트 편집기에서 RSReportServer.config 파일을 엽니다.

  11. <UrlRoot>가 보고서 서버 URL 주소로 설정되어 있는지 확인합니다. 이 값은 보고서 서버를 구성할 때 설정되며 이미 입력되어 있어야 합니다. 설정되지 않은 경우 보고서 서버의 웹 서비스 URL 주소를 입력합니다.

  12. 배달 섹션에서 <RSEmailDPConfiguration>을 찾습니다.

  13. <SMTPServer>가 있지만 비어 있는지 확인합니다.

  14. <SendUsing>을 1로 설정합니다.

  15. <SMTPAuthenticate>를 0으로 설정합니다.

  16. <SMTPServerPickupDirectory>를 SMTP 서비스 픽업 폴더로 설정합니다.

    기본 위치는 C:\inetpub\mailroot\Pickup입니다.

  17. <From>을 설정합니다. 이 항목은 이메일 메시지의 보낸 사람: 줄에 표시되는 값을 설정합니다.

  18. 파일을 저장합니다.