다음을 통해 공유


SQL Server Management Studio의 사용자 지정 보고서

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics분석 플랫폼 시스템(PDW)Microsoft Fabric의 SQL 분석 엔드포인트Microsoft Fabric의 웨어하우스Microsoft Fabric의 SQL 데이터베이스

SQL Server Management Studio에서 많은 개체 탐색기 노드는 Microsoft에서 만든 표준 보고서 집합을 표시합니다. 이러한 보고서는 일반적으로 요청된 서버 정보를 요약합니다. 관리자는 Management Studio에서 SSDT(SQL Server Data Tools)에서 만든 사용자 지정 보고서를 실행할 수 있습니다.

이행

사용자 지정 보고서는 보고서 정의() 파일로 저장되며 RDL(.rdl보고서 정의 언어)을 사용하여 생성됩니다. RDL에는 XML 형식의 보고서에 대한 데이터 검색 및 레이아웃 정보가 포함됩니다. RDL은 열린 스키마입니다. 개발자는 추가 특성 및 요소를 사용하여 RDL을 확장할 수 있습니다. 보고서는 보고서 내에서 유효한 Transact-SQL 문을 실행할 수 있습니다.

개체 탐색기가 서버에 연결된 경우 보고서가 해당 노드의 보고서 매개 변수를 참조하는 경우 현재 개체 탐색기 선택 컨텍스트에서 사용자 지정 보고서를 실행할 수 있습니다. 이렇게 하면 보고서에서 현재 데이터베이스와 같은 현재 컨텍스트를 사용할 수 있습니다. 또는 사용자 지정 보고서에 포함된 Transact-SQL 문의 일부로 지정된 데이터베이스를 지정하는 것과 같은 일관된 컨텍스트입니다.

사용자 지정 보고서 실행

다음 방법으로 Management Studio에서 사용자 지정 보고서를 실행할 수 있습니다.

  • 개체 탐색기에서 노드를 마우스 오른쪽 단추로 클릭하고 보고서를 가리키고 사용자 지정 보고서를 왼쪽에서 선택합니다. 파일 열기 대화 상자에서 파일이 포함된 폴더를 .rdl 찾은 다음 적절한 보고서 파일을 엽니다.

  • 개체 탐색기에서 노드를 마우스 오른쪽 단추로 클릭하고 보고서를 가리키고 사용자 지정 보고서를 가리킨 다음 가장 최근에 사용한 파일 목록에서 사용자 지정 보고서를 선택합니다.

제한점

사용자 지정 보고서를 사용하는 경우 다음 제한 사항을 고려합니다.

  • 악의적인 코드의 의도하지 않은 실행을 방지하기 위해 파일 시스템이 Management Studio와 파일을 연결 .rdl 하도록 구성된 경우에도 Management Studio에서 보고서를 자동으로 실행하도록 구성할 수 없습니다. 보고서는 Management Studio에서 프로그래밍 방식으로 실행할 수 없으며 Management Studio를 통해 명령줄에서 실행할 수 없습니다.

  • 예상 값을 생성하지 않는 컨텍스트에서 사용자 지정 보고서를 실행할 수 있습니다. 예를 들어 복제에 관여하지 않는 데이터베이스 컨텍스트에서 복제에 대한 보고서를 실행하거나 정확한 보고서를 생성하는 데 필요한 정보에 액세스할 수 있는 권한이 없는 사용자로 보고서를 실행할 수 있습니다. 사용자 지정 보고서의 작성자는 보고서 구조 및 해당 컨텍스트의 유효성을 담당합니다.

  • 표준 보고서 목록에는 사용자 지정 보고서를 추가할 수 없습니다.

  • 보고서에서 처리하는 코드는 서버 성능에 영향을 줄 수 있습니다.

  • 사용자 지정 보고서는 하위 보고서를 지원하지 않습니다.

  • 보고서 내의 각 쿼리에 대한 명령 텍스트는 식을 통해 정의해서는 안 됩니다.

  • 명령(쿼리)에 사용되는 쿼리 매개 변수는 단일 보고서 매개 변수만 참조할 수 있으며 식 연산자를 사용할 수 없습니다.

  • 보고서 명령(쿼리)에는 텍스트 및 저장 프로시저 명령 유형만 지원됩니다.

  • 보고서 프레임워크는 쿼리에 대한 매개 변수 이스케이프를 제공하지 않습니다. 쿼리 작성자는 해당 쿼리가 SQL 삽입 공격으로부터 자유로워야 합니다.

사용자 지정 보고서 관리

사용자 지정 보고서가 많은 사용자는 적절한 NTFS 파일 시스템 권한이 있는 파일 시스템 폴더를 사용하여 구성하는 것이 좋습니다.

권한

사용자 지정 보고서는 현재 사용자의 권한을 사용하여 실행됩니다. 악의적인 사용자가 보고서에서 실행하는 쿼리를 변경하지 못하도록 하려면 보고서 파일이 포함된 파일 시스템 폴더에 대한 사용 권한을 설정하여 액세스를 제한해야 합니다.

SQL Server 서비스에서 사용하는 사용자와 계정 모두 보고서 파일이 포함된 파일 시스템 폴더에 대한 읽기 권한이 필요합니다.

유효한 .NET Framework 명령은 보고서에 포함할 수 있지만 명령은 실행되지 않습니다.

주의

유효한 Transact-SQL 문을 보고서에서 포함 및 실행할 수 있습니다. 높은 권한의 사용자 계정으로 보고서를 실행하면 이러한 포함된 명령 중 어느 것이라도 챌린지 없이 실행할 수 있습니다.