다음을 통해 공유


보고서 서버의 SPN(서비스 사용자 이름) 등록

상호 인증에 Kerberos 프로토콜을 사용하는 네트워크에 Reporting Services를 배포하는 경우 보고서 서버 서비스에 대한 SPN(서비스 사용자 이름)을 만들어야 합니다. 도메인 사용자 계정으로 실행하도록 구성하는 경우 이름을 만들어야 합니다.

SPN 정보

SPN은 네트워크에서 Kerberos 인증을 사용하는 서비스의 고유 식별자입니다. 서비스 클래스, 호스트 이름 및 경우에 따라 포트로 구성됩니다. HTTP SPN에는 포트가 필요하지 않습니다. Kerberos 인증을 사용하는 네트워크에서는 기본 제공 컴퓨터 계정(예: NetworkService 또는 LocalSystem) 또는 사용자 계정으로 서버에 대한 SPN을 등록해야 합니다. SPN은 기본 제공 계정에 자동 등록됩니다. 그러나 도메인 사용자 계정에서 서비스를 실행할 경우 사용할 계정에 대한 SPN을 수동으로 등록해야 합니다.

SPN을 만들기 위해 SetSPN 명령줄 유틸리티를 사용할 수 있습니다. 자세한 내용은 다음을 참조하세요.

도메인 컨트롤러에서 유틸리티를 실행하려면 도메인 관리자여야 합니다.

구문

SetSPN에서 SPN을 조작할 때 SPN을 올바른 형식으로 입력해야 합니다. HTTP SPN의 형식은 http/host입니다. SetSPN 유틸리티를 사용하여 보고서 서버에 대한 SPN을 만드는 명령 구문은 다음 예제와 유사합니다.

Setspn -s http/<computer-name>.<domain-name> <domain-user-account>

SetSPN은 Windows Server에서 사용할 수 있습니다. -s 인수는 중복이 없는지 확인한 후 SPN을 추가합니다.

참고 항목

-s는 Windows Server(Windows Server 2008부터)에서 사용할 수 있습니다.

HTTP는 서비스 클래스입니다. 보고서 서버 웹 서비스는 HTTP.SYS에서 실행됩니다. HTTP에 대한 SPN을 만들 때 추가적으로, 도메인 사용자 계정에 따라 IIS에서 호스트되는 애플리케이션을 포함하여 HTTP.SYS에서 실행되는 동일한 컴퓨터의 모든 웹 애플리케이션에 티켓이 부여됩니다. 이러한 서비스가 다른 계정으로 실행되면 인증 요청이 실패합니다. 이 문제를 방지하려면 모든 HTTP 애플리케이션을 동일한 계정으로 실행하도록 구성하거나 각 애플리케이션에 대한 호스트 헤더를 만든 다음, 각 호스트 헤더에 대해 별도의 SPN을 만드는 방법을 고려합니다. 호스트 헤더를 구성할 때 Reporting Services 구성에 관계없이 DNS를 변경해야 합니다.

<computername><domainname>에 지정하는 값은 보고서 서버를 호스트하는 컴퓨터의 고유 네트워크 주소를 식별합니다. 이 값은 로컬 호스트 이름 또는 FQDN(정규화된 도메인 이름)일 수 있습니다. 도메인이 하나뿐인 경우 명령줄에서 <domainname>을 생략할 수 있습니다. <domain-user-account>는 보고서 서버 서비스를 실행하는 데 사용되며 SPN을 등록해야 하는 사용자 계정입니다.

도메인 사용자로 실행되는 보고서 서버 서비스에 대한 SPN 등록

  1. Reporting Services를 설치하고 도메인 사용자 계정으로 실행하도록 보고서 서버 서비스를 구성합니다. 사용자는 다음 단계를 완료할 때까지 보고서 서버에 연결할 수 없습니다.

  2. 도메인 관리자로 도메인 컨트롤러에 로그인합니다.

  3. 명령 프롬프트가 엽니다.

  4. 다음 명령을 복사하되 자리 표시자 값은 사용자의 네트워크에 유효한 실제 값으로 대체합니다.

    Setspn -s http/<computer-name>.<domain-name> <domain-user-account>
    

    예: Setspn -s http/MyReportServer.MyDomain.com MyDomainUser

  5. 명령을 실행합니다.

  6. RsReportServer.config 파일을 열고 <AuthenticationTypes> 섹션을 찾습니다.

  7. Kerberos를 사용하도록 설정하려면 이 섹션의 첫 번째 항목으로 <RSWindowsNegotiate>를 추가합니다.