확장 프로그램에 대한 보안 고려 사항Security Considerations for Extensions

CLR(공용 언어 런타임) 기능이 있는 모든 응용 프로그램은 CLR 보안 시스템과 상호 작용해야 합니다.Every application that targets the common language runtime (CLR) must interact with the CLR security system. 이러한 응용 프로그램은 실행되면 CLR에 의해 자동으로 평가되어 권한 집합이 부여됩니다.When such an application runs, it is automatically evaluated and given a set of permissions by the CLR. 부여받은 권한에 따라 응용 프로그램이 계속 실행될 수도 있고 보안 예외가 생성될 수도 있습니다.Depending on the permissions that the application receives, it either continues running or generates a security exception. 특정 보고서 서버에 대한 보안 정책 구성 파일의 로컬 보안 설정 및 정책은 어셈블리에서 수신하는 코드 권한을 정의합니다.The local security settings and policies in the security policy configuration files for a particular report server define the code permissions that an assembly receives.

권한을 요청하기 전에 확장 프로그램 코드에서 사용할 리소스 및 보호된 작업에 대해 알고 있어야 하며 이러한 리소스 및 작업을 보호하고 있는 권한도 알고 있어야 합니다.Before requesting permissions, you need to be aware of the resources and protected operations your extension code is planning to use, and you also need to know which permissions protect those resources and operations. 또한 확장 프로그램 구성 요소가 호출하는 클래스 라이브러리 메서드에서 액세스하는 리소스도 추적해야 합니다.In addition, you need to keep track of any resources accessed by any class library methods that are called by the extension components. 자세한 내용은 .NET Framework.NET Framework 개발자 가이드의 "Requesting Permissions(권한 요청)"를 참조하십시오.For more information, see "Requesting Permissions" in the .NET Framework.NET Framework Developer's Guide.

보고서 서버에 배포 된 확장 프로그램을 실행 해야으로 완전히 신뢰할 수 있는 권한이 부여 된 코드 그룹의 일부가 되도록 확장 해야 함을 의미는 FullTrust 사용 권한 집합입니다.Extensions deployed to a report server must run as fully trusted, meaning that your extension needs to be part of a code group that is granted the FullTrust permission set. 또한 특정 보고서에 대해 인증되는 사용자에 따라 확장 프로그램이 CLR을 통해 사용할 수 있는 특정 서버 리소스 및 작업에 대한 액세스 권한을 가질 수 있음을 의미합니다.This also means that your extension may have access to certain server resources and operations available through the CLR depending on the user that is being authenticated for a particular report. 코드 그룹 및 확장에 대 한 자세한 내용은 참조 Reporting Services의 코드 액세스 보안합니다.For more information about code groups and extensions, see Code Access Security in Reporting Services.

중요

Reporting ServicesReporting Services에서는 모든 확장 프로그램에 대해 .NET Framework.NET Framework 보안을 적용합니다. enforces .NET Framework.NET Framework security for all of its extensions.

Reporting ServicesReporting Services에서 데이터 처리, 배달, 렌더링 및 보안 확장 프로그램의 배포에 다음 조건이 적용됩니다.The following conditions apply to the deployment of data processing, delivery, rendering, and security extensions in Reporting ServicesReporting Services:

  • 로컬 관리자만 확장 프로그램을 배포할 수 있는 권한을 가집니다.Only the local administrator has permission to deploy an extension.

  • 적절한 읽기/쓰기 권한을 가진 사용자만 확장할 Reporting ServicesReporting Services 구성 요소에 대한 구성 파일을 변경할 수 있습니다.Only users with the appropriate read/write permissions can change the configuration files for the Reporting ServicesReporting Services component that is being extended.

  • 권한이 있는 사용자만 보안 정책 파일을 편집하고 확장 프로그램에 대한 코드 액세스 보안을 사용할 수 있는 권한을 가집니다.Only privileged users have permission to edit the security policy files and enable code access security for an extension.

    코드 액세스 보안에 대 한 자세한 내용은 Reporting ServicesReporting Services, 참조 보안 개발 ( Reporting services) .For more information about code access security in Reporting ServicesReporting Services, see Secure Development (Reporting Services).

    .NET Framework.NET Framework 보안에 대한 자세한 내용은 .NET Framework.NET Framework 개발자 가이드의 ".NET Framework Security(.NET Framework 보안)"를 참조하십시오.For more information about .NET Framework.NET Framework security, see ".NET Framework Security" in your .NET Framework.NET Framework Developer's Guide.

확장 프로그램 어셈블리 초기화Initialization of Extension Assemblies

일부 확장 프로그램 어셈블리에서 시스템 리소스 액세스, 구성 파일 읽기 및 다른 종속 어셈블리 로드 작업을 수행하려면 특정 권한이 필요하므로 보고서 서버에서 확장 프로그램이 메모리로 처음 로드될 때 서비스 계정 자격 증명이 사용됩니다.When extensions are first loaded into memory by the report server, they use the service account credentials, because some extension assemblies require specific permissions to access system resources, to read configuration files, and to load other, dependent assemblies. 하지만 어셈블리가 로드되고 초기화된 후 확장 프로그램 어셈블리에 대한 이후의 모든 호출에서는 현재 로그온한 사용자 계정의 자격 증명을 사용합니다.After an assembly has been loaded and initialized, however, all subsequent calls to extension assemblies use the credentials of the user account that is currently logged on.

관련 항목:See Also

Reporting Services 확장 프로그램 Reporting Services Extensions
Reporting Services 확장 프로그램 라이브러리Reporting Services Extension Library