다음을 통해 공유


Reporting Services 보안 정책 파일 사용하기

Reporting Services는 설치 중에 파일 시스템에 복사되는 세 가지 구성 파일에 구성 요소 보안 정책 정보를 저장합니다. 이러한 구성 파일에는 Reporting Services의 코드 어셈블리에 대한 내부 사용 및 사용자 정의 보안 정책의 조합이 포함될 수 있습니다. 세 가지 구성 파일은 Reporting Services의 세 가지 보안 구성 요소인 보고서 서버 및 Windows 서비스, 보고서 관리자 웹 애플리케이션 및 보고서 디자이너 미리 보기 창에 해당합니다.

비고

보고서 디자이너에는 미리 보기 탭과 보고서 프로젝트가 DebugLocal 모드에서 시작될 때 시작되는 팝업 미리 보기 창의 두 가지 미리 보기 모드가 있습니다. 미리 보기 탭은 보안 구성 요소가 아니며 보안 정책 설정을 적용하지 않습니다. 미리 보기 창은 보고서 서버 기능을 시뮬레이션하기 위한 것이므로 사용자 또는 관리자가 보고서 디자이너에서 사용자 지정 어셈블리 및 사용자 지정 확장을 사용하도록 수정해야 하는 정책 구성 파일이 있습니다.

보안 정책 구성 파일에는 보안 클래스 정보, 일부 기본 명명된 권한 집합 및 Reporting Services의 어셈블리에 대한 코드 그룹이 포함됩니다. Reporting Services의 정책 구성 파일은 .NET Framework의 컴퓨터 및 엔터프라이즈 수준 정책과 연결된 코드 그룹 계층 및 권한 집합을 결정하는 Security.config 파일과 유사합니다. 이 파일의 위치는 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\security.config.

Reporting Services의 정책 파일

다음 표에서는 Reporting Services의 정책 구성 파일, 해당 위치(기본 설치 가정) 및 해당 함수를 나열합니다.

파일 이름 위치(기본 설치) 설명
rssrvpolicy.config C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer 보고서 서버 정책 구성 파일입니다. 이러한 보안 정책은 보고서가 보고서 서버에 배포되면 주로 보고서 식 및 사용자 지정 어셈블리에 영향을 줍니다. 이 정책 파일은 보고서 서버에 배포된 사용자 지정 데이터, 배달, 렌더링 및 보안 확장 프로그램에도 영향을 줍니다.
rsmgrpolicy.config C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager 보고서 관리자 정책 구성 파일입니다. 이러한 보안 정책은 보고서 관리자를 확장하는 모든 어셈블리에 영향을 미칩니다. 예를 들어 사용자 지정 배달을 위한 구독 사용자 인터페이스 확장입니다.
rspreviewpolicy.config C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies 보고서 디자이너 독립 실행형 미리 보기 정책 구성 파일입니다. 이러한 보안 정책은 미리 보기 및 개발 중에 보고서에 사용되는 사용자 지정 어셈블리 및 보고서 식에 영향을 줍니다. 이러한 정책은 보고서 디자이너에 배포되는 데이터 처리 확장과 같은 사용자 지정 확장에도 영향을 줍니다.

구성 파일 수정

구성 설정은 XML 요소나 특성으로 지정됩니다. XML과 구성 파일에 대해 이해하고 있으면 텍스트나 코드 편집기를 사용하여 사용자 정의 가능한 설정을 수정할 수 있습니다. 보안 구성 파일에는 Reporting Services의 정책 수준과 연결된 코드 그룹 계층 구조 및 권한 집합에 대한 정보가 포함됩니다. 정책 변경 내용이 정책 파일의 유효한 XML 구성 요소에 해당하도록 .NET Framework 구성 유틸리티(Mscorcfg.msc) 또는 코드 액세스 보안 정책 유틸리티(Caspol.exe)를 사용하여 먼저 Security.config 파일의 보안 정책을 수정하는 것이 좋습니다. 이렇게 하면 새 코드 그룹 및 사용 권한 집합을 잘라내어 Security.config 코드 권한을 추가하는 구성 요소의 정책 파일에 붙여넣을 수 있습니다.

중요합니다

변경하기 전에 정책 구성 파일을 백업해야 합니다.

이 방법을 사용하면 두 가지 작업을 수행할 수 있습니다. 먼저 시각적 도구를 사용하여 Reporting Services에 대한 코드 그룹 및 권한 집합을 빌드할 수 있습니다. XML 구성 요소를 처음부터 작성하는 것보다 훨씬 쉽습니다. 둘째, 형식이 잘못된 XML 요소 및 특성을 사용하여 보안 정책 구성 파일을 손상시키지 않도록 합니다. 코드 액세스 보안 정책 유틸리티에 대한 자세한 내용은 MSDN에서 Reporting Services 보안 정책 파일 사용을 참조하세요.

정책 구성 파일을 수정하기 전에 이 섹션 및 관련 항목에서 사용할 수 있는 모든 정보를 읽어야 합니다. Reporting Services의 정책 구성을 수정하면 Reporting Services 구성 요소가 외부 코드 모듈을 실행하는 방법에 상당한 보안 영향을 미칠 수 있습니다.

확장에 대한 CodeGroup 요소 배치

보안 정책 파일에 CodeGroup 요소를 배치하는 것이 중요합니다. 개발하는 확장 및 사용자 지정 어셈블리의 경우 다음과 같이 URL 멤버 자격 "$CodeGen$/*"에 대한 기존 항목 바로 아래에 사용자 지정 코드 그룹을 배치하는 것이 좋습니다.

<CodeGroup  
    class="UnionCodeGroup"  
    version="1"  
    PermissionSetName="FullTrust">  
    <IMembershipCondition   
        class="UrlMembershipCondition"  
        version="1"  
        Url="$CodeGen$/*"  
    />  
</CodeGroup>  
<CodeGroup   
    class="UnionCodeGroup"  
    version="1"  
    PermissionSetName="FullTrust"  
    Name="MyCustomCodeGroup"  
    Description="Code group for my custom extension">  
        <IMembershipCondition class="UrlMembershipCondition"  
        version="1"  
        Url="C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer\bin\MyAssembly.dll"  
        />  
</CodeGroup>  

추가 코드 그룹을 하나씩 추가할 수 있습니다.

또한 참조하십시오

보안 정책 이해