이 문서에서는 Microsoft Purview Information Protection 스캐너 사용자 지정 보고 기능(미리 보기)에 대해 설명합니다. Custom Reporting은 스캐너 관리자에게 검사 결과에 대한 자체 보고서를 작성하기 위해 스캐너 클러스터 데이터베이스에 필요한 데이터를 제공합니다(레이블 지정, 보호 상태 및 일치하는 중요한 정보 유형(SIT)).
사용자 지정 보고는 Microsoft Purview Information Protection 클라이언트 및 스캐너 버전 3.2.89.0 이상에서 사용할 수 있습니다. 사용자 지정 보고는 스캐너 기능 제어를 통해 관리자가 사용하도록 설정됩니다.
사용자 지정 보고에서 사용할 수 있는 기능
사용자 지정 보고가 없으면 스캐너는 검사당 CSV 및 TXT 보고서를 생성하고 클러스터 데이터베이스에 제한된 운영 데이터 집합을 저장합니다. 변경된 내용, 레이블이 지정된 항목, 보호되는 항목 및 존재할 중요한 데이터 있는 파일 상태의 전체 그림을 작성하려면 관리자가 검사 주기에 걸쳐 여러 CSV 내보내기를 결합하고 별도의 보고 도구로 로드해야 합니다.
사용자 지정 보고는 관리자가 다음을 수행할 수 있도록 파일 상태 및 SIT 일치 데이터를 스캐너 클러스터 데이터베이스로 이동합니다.
- 리포지토리에서 검사된 모든 파일에 대한 현재 및 이전 레이블, 보호 상태 및 SIT 수를 쿼리합니다.
- 검사 간 델타를 계산합니다(예: 파일당 일치하는 SIT 수의 변경).
- 어떤 중요한 정보 유형이 일치하는 파일과 형식당 일치하는지 확인합니다.
- 먼저 CSV 내보내기를 연결하지 않고도 스캐너 클러스터 데이터베이스를 원하는 보고 도구(예: Power BI, 엔터프라이즈 보고 웨어하우스 또는 SQL 기반 대시보드 도구)에 연결합니다.
스캐너는 진실의 근원으로 남아 있습니다. 사용자 지정 보고는 기능이 활성화된 후 다음 검사 주기에 스캐너 클러스터 데이터베이스에 추가 보고 데이터를 씁니다.
데이터베이스 스키마
Custom Reporting에 필요한 보고 테이블 및 열이 클라이언트 버전 3.2.57.0의 스캐너 클러스터 데이터베이스 스키마에 처음 추가되었습니다. 사용자 지정 보고를 사용하도록 설정하기 전까지는 새 열과 테이블이 존재하지만 채워지지 않습니다. 기존 스캐너 기능은 변경되지 않습니다.
참고
클라이언트 버전 3.2.57.0을 먼저 설치할 필요가 없습니다. 스캐너를 새로 설치하든 이전 버전에서 업그레이드하든 스캐너는 설치 또는 업그레이드 시 전체 데이터베이스 스키마(사용자 지정 보고 테이블 및 열 포함)를 배포합니다.
스캐너 기능 컨트롤을 사용하여 사용자 지정 보고를 사용하도록 설정하면 스캐너는 다음 검사 주기에서 다음 데이터를 채우기 시작합니다.
에 대한 추가 사항 dbo.ScannerFiles
dbo.ScannerFiles 는 스캔한 파일당 한 행을 계속 보유합니다. 사용자 지정 보고는 파일 상태와 현재 검사와 이전 검사 사이의 델타를 캡처하기 위해 다음과 같은 추가 열을 채웁니다.
| 열 | 유형 | 설명 |
|---|---|---|
LabelName |
NVARCHAR(MAX)Nullable |
파일에 적용된 현재 레이블 이름입니다.
NULL 레이블이 없으면 입니다. |
PrevLabelId |
NVARCHAR(MAX)Nullable |
이전 검사에서 적용된 레이블 ID이며 문자열로 저장됩니다.
NULL 이전에 레이블이 지정되지 않은 경우 입니다. |
PrevLabelName |
NVARCHAR(MAX)Nullable |
이전 검사에서 적용된 레이블 이름입니다.
NULL 이전에 레이블이 지정되지 않은 경우 입니다. |
ProtectionState |
NVARCHAR(MAX)Nullable |
검사 종료 시 파일에 대한 현재 보호 상태입니다. |
PrevProtectionState |
NVARCHAR(MAX)Nullable |
이전 검사에서 기록된 보호 상태입니다. |
ClassificationCount |
INT기본 0 |
현재 검사에서 파일의 중요한 정보 유형이 일치하는 수입니다. |
LatestScanSessionId |
UNIQUEIDENTIFIERNullable |
파일을 터치한 가장 최근의 검사 세션을 식별합니다. 검사 주기에서 델타를 계산하는 데 사용됩니다. |
FileStatus |
NVARCHAR(MAX)Nullable |
검사 주기에서 파일의 최종 처리(예: 에 의해 ProcessJob설정된 근거 상태 또는 Failed 처리할 수 없는 파일의 경우). |
새 테이블: dbo.MatchedClassificationAction
dbo.MatchedClassificationAction 는 검색당 파일당 일치하는 중요한 정보 형식을 저장하는 새 테이블입니다. 각 행은 단일 검사 세션에서 단일 파일에 대해 일치하는 SIT 하나를 나타냅니다.
| 열 | 유형 | 설명 |
|---|---|---|
Id |
BIGINT IDENTITY (기본 키) |
행의 서로게이트 키입니다. |
FilePath |
NVARCHAR(MAX)Nullable |
SIT가 일치하는 파일의 전체 경로입니다. |
FileHashPath |
BINARY(64)Nullable |
파일 경로의 해시입니다. 에 조인 dbo.ScannerFiles.HashPath 하고 조인 성능을 위해 인덱싱됩니다. |
ScanSessionId |
UNIQUEIDENTIFIERNullable |
SIT가 일치하는 검사 세션을 식별합니다. 에 조인 dbo.ScannerFiles.ScanSessionId 하고 인덱싱됩니다. |
MatchedInformationTypeName |
NVARCHAR(MAX)Nullable |
일치하는 중요한 정보 형식의 표시 이름(예: U.S. social security number (SSN))입니다. |
MatchedInformationTypeId |
UNIQUEIDENTIFIERNullable |
일치하는 SIT의 GUID입니다. 에 대한 Workload=OnPremisesFileShareScanner로컬 Microsoft Purview Information Protection 로그에 동일한 GUID가 사용됩니다. |
MatchedInformationTypeCount |
INT기본 0 |
파일의 이 SIT에 대한 일치 항목 수입니다. |
ConfidenceScore |
INT기본 0 |
경기의 신뢰도 점수입니다. |
새 테이블: dbo.ScannedFilesArchive
dbo.ScannedFilesArchive 는 스캐너가 처리한 파일의 기록 보관 파일을 저장하는 새 테이블로, 행을 만든 검사 세션에 연결합니다. 각 파일의 최신 상태만 유지하는 라이브 dbo.ScannerFiles 테이블과 달리 이 테이블은 변경 내용 추적, 보고 및 감사를 위해 이전에 보관된 상태를 유지합니다.
이전 검사 세션이 다시 삽입되지 않았기 때문에 스캐너가 건너뛰는 Files, 이후 검사 세션에는 모든 파일의 전체 스냅샷 포함되지 않습니다. 대신, 파일을 마지막으로 처리한 세션의 기존 보관 항목만 남아 있으므로 의미 있는 변경 기록을 유지하면서 보관을 계속 유지합니다.
| 열 | 유형 | 설명 |
|---|---|---|
Id |
BIGINT IDENTITY (기본 키) |
행의 서로게이트 키입니다. |
HashPath |
BINARY(64) |
파일 경로의 해시입니다. 에 조인합니다 dbo.ScannerFiles.HashPath. |
FullPath |
NVARCHAR(MAX) |
검사 세션 시 파일의 전체 경로입니다. |
ScanSessionId |
UNIQUEIDENTIFIER |
이 보관 행을 생성한 검사 세션입니다. |
LastModifiedTime |
DATETIME2Nullable |
검사 세션 중에 관찰된 파일의 마지막으로 수정된 타임스탬프입니다. |
LabelId |
UNIQUEIDENTIFIERNullable |
검사 세션 시 파일에 적용된 레이블 ID입니다. |
IssueCount |
INT기본 0 |
이 검사 세션의 파일에 대해 기록된 문제 수입니다. |
EndScan |
DATETIME2Nullable |
파일이 이 검사 세션에서 처리를 완료한 시간입니다. |
JobStartTime |
DATETIME2Nullable |
이 파일의 처리 작업이 시작된 시간입니다. |
LabelName |
NVARCHAR(MAX)Nullable |
이 검사 세션 시 적용된 레이블 이름입니다. |
PrevLabelId |
NVARCHAR(MAX)Nullable |
문자열로 저장된 이전 검사 세션의 레이블 ID입니다. |
PrevLabelName |
NVARCHAR(MAX)Nullable |
이전 검사 세션의 레이블 이름입니다. |
ProtectionState |
NVARCHAR(MAX)Nullable |
이 검사 세션 당시의 보호 상태입니다. |
PrevProtectionState |
NVARCHAR(MAX)Nullable |
이전 검사 세션의 보호 상태입니다. |
ClassificationCount |
INT, 기본값 0, nullable |
이 검사 세션의 중요한 정보 유형 일치 횟수입니다. |
LatestScanSessionId |
UNIQUEIDENTIFIERNullable |
이 보관 행이 기록될 때 파일을 터치한 것으로 알려진 최신 검사 세션입니다. |
FileStatus |
NVARCHAR(MAX)Nullable |
검사 세션의 파일 처리(예: Modified 또는 Deleted)입니다. |
dbo.ScanSummary (검사 합계당)는 변경되지 않습니다.
사용자 지정 보고가 답변할 수 있는 예제 질문
사용자 지정 보고가 데이터베이스를 채웁니다. 관리자는 다음과 같은 쿼리를 실행할 수 있습니다.
- 일치하는 SID의 농도가 가장 높은 리포지토리는 어떤 리포지토리이며, 마지막 검사 이후 해당 농도가 어떻게 변경되었나요?
- 가장 최근 검사 주기 동안 레이블이 지정되거나 레이블이 다시 지정된 파일은 무엇이며 이전 레이블은 무엇인가요?
- 레이블이 아직 지정되지 않았지만 하나 이상의 중요한 정보 유형에 대한 일치 항목이 포함된 파일은 무엇인가요?
- 지정된 리포지토리에서 가장 널리 퍼진 중요한 정보 유형과 신뢰도는 어느 것인가요?
- 마지막 검사 이후 보호되지 않은 파일에서 보호된 파일(또는 역방향)으로 전환된 파일은 무엇인가요?
사용자 지정 보고 사용
사용자 지정 보고는 관리자가 제어하는 기능 구성을 통해 설정됩니다. 스캐너 클러스터의 모든 노드에서 다음을 실행합니다.
Set-ScannerConfiguration -FeatureSettings @{CustomReporting=$true}
새 스캐너 노드에서 설치 시 사용자 지정 보고를 사용하도록 설정하려면 Install-Scanner와 -FeatureSettings 함께 매개 변수를 사용합니다.
Install-Scanner -SqlServerInstance SQLSERVER1 -Cluster Europe -FeatureSettings @{CustomReporting=$true}
현재 상태를 확인하려면 다음을 실행합니다.
Get-ScannerConfiguration
변경 내용은 다음 검사 주기에 클러스터의 모든 노드에 적용됩니다. 서비스를 다시 시작할 필요가 없습니다.
사용자 지정 보고 열 및 테이블 채우기를 중지하려면 다음을 실행합니다.
Set-ScannerConfiguration -FeatureSettings @{CustomReporting=$false}
사용자 지정 보고를 사용하지 않도록 설정하면 새 쓰기가 중지됩니다. 보고 열 및 테이블에 이미 기록된 데이터는 삭제되지 않으므로 나중에 데이터 손실 없이 기능을 다시 사용하도록 설정할 수 있습니다.
보고용 스캐너 클러스터 데이터베이스 계획
사용자 지정 보고를 켜면 스캐너 클러스터 데이터베이스는 훨씬 더 많은 데이터를 저장합니다.
- 의 파일당 추가 열
dbo.ScannerFiles - 검색당 파일당 일치하는 SIT당 하나의 행
dbo.MatchedClassificationAction - 검사 세션 중에 스캐너가
dbo.ScannedFilesArchive처리하고 보관하는 파일에 대한 행을 아카이브(모든 주기에서 변경되지 않은 모든 파일에 대한 것은 아님)
스캐너 클러스터 데이터베이스에 대한 보고서를 작성하면 스캐너의 작동 읽기 및 쓰기와 함께 실행되는 읽기 워크로드도 추가됩니다.
프로덕션 환경에서 사용자 지정 보고를 사용하도록 설정하기 전에 다음을 고려합니다.
- 클러스터 크기 및 검사 볼륨. 주기당 검색된 파일 수, 파일당 일반적인 SIT 일치 수 및 검사 빈도를 예측합니다. 이러한 숫자를 사용하여 데이터베이스 크기를 조정합니다.
- 운영에 미치는 영향. 스캐너가 작성하는 것과 동일한 데이터베이스에 대한 쿼리를 보고하면 검사 주기 동안 스캐너에서 리소스를 사용할 수 있습니다.
- 실제로 원하는 보고 워크로드입니다. 대화형 대시보드, 예약된 추출 및 임시 쿼리는 각각 매우 다른 영향을 줍니다.
대부분의 프로덕션 배포에서는 읽기 전용 복제본(replica) 보고에 전념할 수 있도록 SQL Server Enterprise 스캐너 클러스터 데이터베이스를 호스팅하는 것이 좋습니다. SQL Server Always On 가용성 그룹을 사용하면 보고 트래픽을 읽을 수 있는 보조 복제본(replica) 라우팅할 수 있습니다. 그런 다음, 보고 쿼리는 주 데이터베이스에서 스캐너의 작동 워크로드와 경쟁하는 대신 보조 복제본(replica) 실행됩니다.
이렇게 분리하면 보고 도구(예: Power BI)가 읽기 전용 복제본(replica) 연결하고 주 데이터베이스의 검사 처리량에 영향을 주지 않고 자체 주기로 새로 고칠 수 있습니다.
참고
스캐너 자체는 항상 에서 읽고 주 데이터베이스에 씁니다. 사용자 지정 보고 워크로드만 읽기 전용 복제본(replica) 가리켰습니다.
미리 보기 중 제한 사항
- 사용자 지정 보고에는 이 미리 보기에 기본 제공 dashboard 포함되어 있지 않습니다. 고객은 스캐너 클러스터 데이터베이스에 대해 자체 보고서를 작성합니다.
- 관리자 제어 기능 구성으로 구성된 설정은 Microsoft Purview 포털과 동기화되지 않습니다. 모든 스캐너 기능이 포털에서 구성되는 것은 아닙니다. Microsoft Purview 포털에서도 구성할 수 있는 기능의 경우 포털에 구성된 설정이 우선적으로 적용되며 PowerShell의 업데이트를 방지합니다.