보고서 서버에서 인증
SSRS(SQL Server Reporting Services)는 보고서 서버에 대해 사용자 및 클라이언트 애플리케이션을 인증하는 몇 가지 구성 가능 옵션을 제공합니다. 기본값으로 보고서 서버는 Windows 통합 인증을 사용하고, 클라이언트와 네트워크 리소스가 동일한 도메인 또는 신뢰할 수 있는 도메인에 있는 신뢰할 수 있는 관계를 가정합니다. 네트워크 토폴로지 및 조직의 요구 사항에 따라 Windows 통합 인증에 사용되는 인증 프로토콜을 사용자 지정할 수 있습니다. 그렇지 않으면 기본 인증 또는 사용자가 제공하는 사용자 지정 양식 기반 인증 확장을 사용할 수 있습니다. 각 인증 유형을 개별적으로 켜거나 끌 수 있습니다. 보고서 서버에서 여러 유형의 요청을 수락하게 하려면 둘 이상의 인증 유형을 사용하도록 설정할 수 있습니다.
인증 유형
보고서 서버 콘텐츠 또는 작업에 대한 액세스를 요청하는 모든 사용자 또는 애플리케이션은 액세스 권한을 얻기 전에 보고서 서버에 구성된 인증 유형을 사용하여 인증됩니다. 다음 표에서는 Reporting Services에서 지원되는 인증 유형에 대해 설명합니다.
인증 유형 이름 | HTTP 인증 레이어 값 | 기본적으로 사용 | 설명 |
---|---|---|---|
RSWindowsNegotiate | Negotiate | 예 | 이 유형은 먼저 Windows 통합 인증에 Kerberos를 사용하려고 시도하지만, Active Directory가 보고서 서버에 클라이언트 요청에 대한 티켓을 부여할 수 없으면 NTLM(NT LAN Manager)으로 대체됩니다. Negotiate는 티켓을 사용할 수 없는 경우에만 NTLM으로 대체됩니다. 첫 번째 시도에서 누락된 티켓 대신 오류가 발생하는 경우 보고서 서버는 두 번째 시도를 하지 않습니다. |
RSWindowsNTLM | NTLM | 예 | 이 유형은 Windows 통합 인증에 NTLM을 사용합니다. 자격 증명은 다른 요청에서 위임되거나 가장되지 않습니다. 이후 요청은 새 챌린지-응답 시퀀스를 따릅니다. 네트워크 보안 설정에 따라 사용자에게 자격 증명을 요청하는 프롬프트가 표시될 수 있습니다. 그렇지 않으면 인증 요청이 투명하게 처리됩니다. |
RSWindowsKerberos | Kerberos | 아니요 | 이 유형은 Windows 통합 인증에 Kerberos를 사용합니다. 서비스 계정에 대한 SPN(서비스 사용자 이름)을 사용하여 Kerberos를 구성합니다. 설정하려면 도메인 관리자 권한이 필요합니다. Kerberos를 사용하여 ID 위임을 설정할 수 있습니다. 이렇게 하면 보고서를 요청하는 사용자의 토큰을 다른 연결에서도 사용할 수 있습니다. 이 연결은 보고서에 데이터를 제공하는 외부 데이터 원본에 대한 연결입니다. RSWindowsKerberos를 지정하기 전에 사용 중인 브라우저 유형에서 이를 실제로 지원하는지 확인합니다. Microsoft Edge 또는 Internet Explorer를 사용하는 경우 Kerberos 인증은 Negotiate를 통해서만 지원됩니다. Microsoft Edge 및 Internet Explorer는 Kerberos를 직접 지정하는 인증 요청을 작성하지 않습니다. |
RSWindowsBasic | 기본 | 아니요 | 기본 인증은 HTTP 프로토콜에 정의되며 보고서 서버에 대한 HTTP 요청을 인증하는 데만 사용됩니다. 자격 증명은 base64 인코딩의 HTTP 요청에서 전달됩니다. 기본 인증을 사용하는 경우 이전에 SSL(Secure Sockets Layer)로 알려진 TLS(전송 계층 보안)를 사용하여 네트워크에서 정보를 전송하기 전에 사용자 계정 정보를 암호화합니다. SSL은 HTTP TCP/IP 연결을 통해 클라이언트에서 보고서 서버로 연결 요청을 전송하기 위한 암호화된 채널을 제공합니다. 자세한 내용은 SSL을 사용하여 기밀 데이터 암호화를 참조하세요. |
사용자 지정 | (Anonymous) | 아니요 | 익명 인증은 HTTP 요청의 인증 헤더를 무시하도록 보고서 서버에 지시합니다. 보고서 서버는 사용자 인증을 위해 제공한 사용자 지정 ASP.NET 양식 인증에 대한 호출을 제외한 모든 요청을 수락합니다. 보고서 서버의 모든 인증 요청을 처리하는 사용자 지정 인증 모듈을 배포하는 경우에만 사용자 지정을 지정합니다. 기본 Windows 인증 확장에는 사용자 지정 인증 유형을 사용할 수 없습니다. |
지원되지 않는 인증 방법
다음은 지원되지 않는 인증 방법 및 요청입니다.
인증 방법 | 설명 |
---|---|
익명 | 보고서 서버는 사용자 지정 인증 확장을 포함하는 배포를 제외하고 익명 사용자의 인증되지 않은 요청을 수락하지 않습니다. 기본 인증을 위해 구성된 보고서 서버에서 Report Builder 액세스를 사용하도록 설정하는 경우 Report Builder는 인증되지 않은 요청을 수락합니다. 다른 모든 경우 익명 요청은 ASP.NET에 도착하기 전에 HTTP 상태 401 액세스 거부 오류와 함께 거부됩니다. 401 액세스 거부를 수신한 클라이언트는 유효한 인증 유형으로 요청을 다시 작성해야 합니다. |
SSO(Single Sign-On) 기술 | Reporting Services에는 Single-Sign-On 기술에 대한 기본 지원이 없습니다. Single Sign-On 기술을 사용하려면 사용자 지정 인증 확장을 만듭니다. 보고서 서버 호스팅 환경은 ISAPI(인터넷 서버 응용 프로그래밍 인터페이스) 필터를 지원하지 않습니다. 사용 중인 SSO 기술이 ISAPI 필터로 구현되는 경우 RSASecueID 또는 RADIUS 프로토콜에 대한 ISA(Internet Security and Acceleration Server) 서버 기본 제공 지원을 사용하는 방법을 고려합니다. ISA Server ISAPI 또는 RS용 HTTPModule을 만들 수도 있지만 ISA Server를 직접 사용해야 합니다. |
Passport | SQL Server Reporting Services에서 지원되지 않습니다. |
다이제스트 | SQL Server Reporting Services에서 지원되지 않습니다. |
인증 설정 구성
인증 설정은 보고서 서버 URL이 예약될 때 기본 보안용으로 구성됩니다. 이러한 설정을 잘못 수정하면 보고서 서버는 인증할 수 없는 HTTP 요청에 대해 HTTP 401 액세스 거부 오류를 반환합니다. 인증 유형을 선택하려면 네트워크에서 Windows 인증이 지원되는 방식을 먼저 알아야 합니다. 하나 이상의 인증 유형을 지정해야 합니다. RSWindows에 대해 여러 인증 유형을 지정할 수 있습니다. RSWindows 인증 유형(RSWindowsBasic, RSWindowsNTLM, RSWindowsKerberos, RSWindowsNegotiate)은 사용자 지정과 상호 배제됩니다.
Important
Reporting Services는 현재 컴퓨팅 환경에 올바른지 여부를 확인하기 위해 사용자가 지정하는 설정의 유효성을 검사하지 않습니다. 설치 시 기본 보안이 작동하지 않거나 보안 인프라에 유효하지 않은 구성 설정을 지정할 수 있습니다. 더 큰 조직에서 사용할 수 있으려면 먼저 제어된 테스트 환경에서 보고서 서버 배포를 신중하게 테스트하는 것이 중요합니다.
보고서 서버 웹 서비스와 웹 포털은 항상 동일한 인증 유형을 사용합니다. 보고서 서버 서비스의 기능 영역에 대해 다른 인증 유형을 구성할 수 없습니다. 스케일 아웃 배포가 있는 경우 배포의 모든 노드에서 모든 변경 내용을 복제해야 합니다. 동일한 스케일 아웃의 서로 다른 노드에서 서로 다른 인증 유형을 사용하도록 구성할 수 없습니다.
백그라운드 처리는 최종 사용자의 요청을 수락하지 않지만 무인 실행을 위한 요청은 모두 인증합니다. 항상 Windows 인증을 사용하고, 인증이 구성된 경우 보고서 서버 서비스 또는 무인 실행 계정을 사용하여 요청을 인증합니다.