SharePoint Online PowerShell을 사용하여 데이터 액세스 거버넌스 보고서 관리

데이터 액세스 거버넌스는 SharePoint 관리 센터에서 사용할 수 있지만 일부 조직에서는 PowerShell을 사용하여 스크립팅 및 자동화를 통해 대규모로 설정을 관리하는 것을 선호합니다. 이 문서에서는 SharePoint Online PowerShell 모듈을 사용하여 데이터 액세스 거버넌스 보고서를 관리하는 방법을 설명합니다.

시작하기 전에

organization이 SharePoint Online PowerShell 모듈 요구 사항을 포함하여 SharePoint 고급 관리에 대한 필수 구성 요소를 충족하는지 확인합니다.

데이터 액세스 거버넌스에 대한 PowerShell 지원은 모듈 Microsoft.Online.SharePoint.PowerShell 및 버전 16.0.25409 이상에서 사용할 수 있습니다.

SharePoint에 연결할 때 자격 증명 매개 변수 없이Connect-SPOService 명령을 실행합니다. 보안 모범 사례에 따라 자격 증명 매개 변수를 사용한 로그인은 지원되지 않습니다.

PowerShell을 사용하여 보고서 만들기

일반적인 PowerShell 구문, 매개 변수 및 예제는 Start-SPODataAccessGovernanceInsight를 참조하세요.

특정 보고서 예제는 이 문서의 다음 섹션을 참조하세요.

사이트 사용 권한 상태 보고서 생성

특히 Copilot 채택 이후 사용자 및 콘텐츠 권한을 존중하므로 organization의 권한 설정을 이해해야 합니다. Copilot의 데이터 노출 위험은 사용 권한이나 액세스 권한이 있는 사용자 수에 따라 증가합니다. 사이트 사용 권한 상태 보고서는 organization의 모든 SharePoint 및 OneDrive 사이트에 대한 사용 권한이 있는 고유 사용자 수를 기반으로 잠재적 노출에 대한 심층적인 인사이트를 제공합니다.

먼저 이 보고서를 실행하여 organization의 사용 권한에 대한 간략한 개요를 확인하세요. 이 보고서는 스냅샷 보고서입니다. 보고서 생성 날짜를 기준으로 전체 organization의 최신 스냅샷 또는 상태를 제공합니다.

모든 SharePoint 사이트에 대한 보고서를 생성하려면 다음 명령을 실행합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity PermissionedUsers -ReportType Snapshot -Workload SharePoint -CountOfUsersMoreThan 0  -Name "OrgWidePermissionedUsersReportSharePoint"

모든 비즈니스용 OneDrive 계정에 대한 보고서를 생성하려면 다음 명령을 실행합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity PermissionedUsers -ReportType Snapshot -Workload OneDriveForBusiness -CountOfUsersMoreThan 0  -Name "OrgWidePermissionedUsersReportODB"

보고서와 관련하여 다음과 같은 사항에 유의하세요.

  • 이러한 보고서는 포괄적이고 테넌트의 모든 데이터를 포함할 가능성이 높으므로 보고서를 최대 두 개까지 만들 수 있습니다. 워크로드당 하나의 보고서를 만들 수 있습니다.
  • 첫 번째 보고서는 organization 규모에 관계없이 완료하는 데 항상 최대 5일이 걸립니다. 후속 보고서는 24시간 이내에 완료됩니다.
  • 이러한 보고서는 보고서 생성 최대 48시간 전까지 데이터를 캡처합니다.
  • 이러한 보고서가 생성되면 30일마다 한 번씩 다시 실행할 수 있습니다.

이러한 명령은 하나 이상의 사용자가 사이트 내의 콘텐츠에 액세스할 수 있는 모든 사이트 목록을 생성합니다. 보고서를 해석하는 방법에 대한 자세한 내용은 organization 보고서에 대한 사이트 사용 권한을 보는 방법을 참조하세요.

테넌트의 과다 공유 정도를 이해한 후에는 특히 지난 28일 동안 활성 사이트에서 추가 편차를 추적할 수 있습니다. 지난 28일 동안 "링크 공유" 또는 "외부 사용자를 제외한 모든 사용자"와 공유된 콘텐츠와 같은 잠재적 과다 공유의 주요 요인에서 활성 상태인 사이트에 대한 보고서를 생성할 수 있습니다.

사용자 권한 상태 보고서 생성

전체 organization에 대한 사이트 사용 권한 보고서를 통해 전체 테넌트의 현재 사용 권한을 파악할 수 있지만, 일부 시나리오에서는 지정된 사용자에게 액세스할 수 있는 사이트를 검색해야 합니다. 자세한 내용은 스냅샷 보고서를 사용하여 organization's site permissions baseline 가져오기를 참조하세요. 다음 섹션에서는 데이터 액세스 거버넌스가 PowerShell을 사용하여 이러한 보고서를 생성하는 데 어떻게 도움이 되는지 설명합니다.

먼저 Get-MgUser 명령을 사용하여 보고서를 생성할 사용자의 UPN 또는 사용자 계정 이름을 가져옵니다. 그런 다음 다음 PowerShell 명령을 실행하면 해당 사용자가 액세스할 수 있는 SharePoint 사이트를 나열하는 보고서가 트리거됩니다.

Start-SPODataAccessGovernanceInsight -ReportEntity PermissionsReport -ReportType Snapshot -Workload SharePoint -Name "UserSharePointReport" -UserEmailList "a@contoso.com","b@contoso.com"

중요

매개 변수의 이름이 UserEmailList지정되는 동안 보고서에는 사용자 주체 이름이 필요합니다. 단일 요청에 최대 100명의 사용자를 포함할 수 있습니다.

지정된 사용자에게 액세스할 수 있는 OneDrive 계정을 나열하려면 워크로드를 다음으로 지정합니다.OneDriveForBusiness

Start-SPODataAccessGovernanceInsight -ReportEntity PermissionsReport -ReportType Snapshot -Workload OneDriveForBusiness -Name "UserOneDriveReport" -UserEmailList "a@contoso.com","b@contoso.com"

특수 SharePoint 그룹을 통해 공유되는 사이트 및 파일에 대한 보고서 생성

사이트 사용 권한 보고서는 과도하게 공유되는 사이트를 알려줍니다. 특별 그룹 "외부 사용자를 제외한 모든 사용자" (EEEU) 또는 "모든 사용자"가 받는 항목을 정확히 찾으려면 이 보고서를 생성하십시오. 보고서 및 보고서를 출력하는 방법에 대한 자세한 내용은 "외부 사용자를 제외한 모든 사람" 및 "모든 사람"에 대한 항목 수준 권한 세부 정보 가져오기를 참조하세요.

중요

이 보고서를 사용하려면 2026년 4월 30일에 게시된 모듈 Microsoft.Online.SharePoint.PowerShell 버전 16.0.27215.12000 이상이 필요합니다. 또한 전역 관리자가 할당해야 하는 SharePoint 고급 관리 관리자 역할도 필요합니다. 자세한 내용은 SharePoint 고급 관리 관리자 역할 할당을 참조하세요.

EEEU에 대한 보고서를 생성하려면 다음 명령을 실행합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsers -ReportType Snapshot

모든 사용자에 대한 보고서를 생성하려면 ReportEntity 매개 변수 값을 변경합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity Everyone -ReportType Snapshot

보고서와 관련하여 다음과 같은 사항에 유의하세요.

  • 보고서는 워크로드 매개 변수를 사용하지 않습니다. 출력은 SharePoint와 OneDrive를 모두 포함합니다.
  • 출력 파일은 1백만 행으로 제한됩니다.
  • 시스템 파일 및 시스템 그룹에 대해 EEEU 또는 Everyone에 부여된 사용 권한은 포함되지 않습니다.

보고서를 추적하고 결과를 다운로드하려면 PowerShell을 사용하여 보고서 추적PowerShell을 사용하여 보고서 보기 및 다운로드를 참조하세요.

PowerShell을 사용하여 파일 보고서에서 민감도 레이블 생성

이 PowerShell 명령을 실행하여 보고서 생성 날짜를 기준으로 특정 항목이 지정된 레이블로 레이블이 지정된 사이트를 나열하도록 보고서를 트리거합니다.

먼저 보안 & 규정 준수 PowerShell 모듈을 사용하여 레이블 이름 또는 레이블 GUID를 검색합니다.

Get-Label | Format-Table -Property DisplayName, Name, GUID, ContentType

그런 다음 이름과 GUID를 사용하여 지정된 레이블 이름 또는 GUID로 레이블이 지정된 파일이 있는 사이트를 검색합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity SensitivityLabelForFiles -Workload SharePoint -ReportType Snapshot -FileSensitivityLabelGUID "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1" -FileSensitivityLabelName Secret

참고

현재 레이블이 지정된 파일이 있는 계정에 대한 OneDriveForBusiness 보고서는 지원되지 않습니다.

공유 링크 활동 보고서를 사용하여 공동 작업 중에 활성 상태이며 잠재적인 과다 공유 위험을 완화하기 위해 더 빠른 개입이 필요한 사이트를 식별할 수 있습니다. 이러한 최근 활동 기반 보고서는 지난 28일 동안 가장 많은 공유 링크를 생성한 사이트를 식별합니다.

다음 공유 링크 활동 보고서를 생성합니다.

  • 지난 28일 동안 링크를 공유하는 모든 사용자를 만든 사이트
  • 지난 28일 동안 People in your organization 공유 링크를 만든 사이트
  • 지난 28일 동안 특정 사용자 (게스트) 공유 링크를 만든 사이트
Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_Anyone -Workload SharePoint -ReportType RecentActivity

동일한 조건으로 모든 OneDrive 계정을 가져오는 워크로드 값을 OneDriveForBusiness 제공합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_PeopleInYourOrg -Workload SharePoint -ReportType RecentActivity

동일한 조건으로 모든 OneDrive 계정을 가져오는 워크로드 값을 OneDriveForBusiness 제공합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_Guests -Workload SharePoint -ReportType RecentActivity

동일한 조건으로 모든 OneDrive 계정을 가져오는 워크로드 값을 OneDriveForBusiness 제공합니다.

지난 28일 동안 "외부 사용자를 제외한 모든 사용자"와 공유된 콘텐츠 식별

링크를 공유하면 잠재적인 과잉 공유에 기여할 수 있지만 또 다른 주요 기여자는 "외부 사용자를 제외한 모든 사람"(EEEU)입니다. EEEU는 콘텐츠를 공개(전체 organization에 표시)하고 다른 사용자가 콘텐츠를 쉽게 검색하고 액세스할 수 있도록 합니다. 이러한 보고서는 지난 28일 동안 다양한 범위에서 EEEU를 적극적으로 사용한 사이트를 식별합니다.

다음과 같은 EEEU 활동 보고서를 생성할 수 있습니다.

  • 지난 28일 동안 외부 사용자를 제외한 모든 사용자와 공유된 사이트
  • 지난 28일 동안 외부 사용자를 제외한 모든 사용자와 공유된 항목

중요

현재 비즈니스용 OneDrive에 대한 EEEU 보고서는 항목 수준만 지원합니다. 사이트 수준에서 비즈니스용 OneDrive에 대한 EEEU 보고서는 지원되지 않습니다. Microsoft SharePoint 고급 관리 라이선스가 없는 경우 보고서를 작성하기 위해 관련 감사 데이터를 수집할 수 있도록 최근 활동 기반 보고서에 대한 데이터 수집을 활성화해야 합니다. 사용하도록 설정하면 데이터가 수집되고 28일 동안 저장됩니다. 24시간 후에 보고서를 생성할 수 있으며 보고서에는 수집 시점의 데이터가 포함됩니다. 3개월에 한 번이라도 보고서를 생성하지 않으면 데이터 수집이 일시 중지되고 다시 사용하도록 설정해야 합니다. 이러한 보고서에 대한 데이터 수집을 사용하도록 설정하려면 최근 활동 기반 보고서에 대한 데이터 수집 관리 섹션을 참조하세요.

지난 28일 동안 "외부 사용자를 제외한 모든 사용자"와 공유된 사이트 식별

EEEU를 사이트 멤버십(소유자, 구성원 또는 방문자)에 추가하면 사이트의 전체 콘텐츠가 공개되고 과도하게 공유되는 경향이 더 큽니다. 다음 PowerShell 명령을 실행하여 SharePoint 사이트에 대해 지난 28일 동안 해당 사이트를 캡처하는 보고서를 트리거합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsersAtSite -Workload SharePoint -ReportType RecentActivity -Name "PublicSiteViaEEEU"

지난 28일 동안 "외부 사용자를 제외한 모든 사용자"와 공유된 항목 식별

다음 PowerShell 명령을 실행하여 지난 28일 동안 SharePoint 사이트에 대해 EEEU와 공유한 특정 항목(파일, 폴더 또는 목록)을 캡처하도록 보고서를 트리거합니다.

Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsersForItems -Workload SharePoint -ReportType RecentActivity -Name "PublicItemsViaEEEU"

참고

동일한 조건의 모든 OneDrive 계정에 대해 "외부 사용자를 제외한 모든 사용자"와 공유된 항목을 가져오려면 워크로드 값을 다음과 같이 바꿉니다 OneDriveForBusiness .

최근 활동 기반 보고서에 대한 데이터 수집 관리

중요

Microsoft SharePoint 고급 관리 라이선스가 없는 경우 보고서를 작성하기 위해 관련 감사 데이터를 수집할 수 있도록 최근 활동 기반 보고서에 대한 데이터 수집을 활성화해야 합니다. 사용하도록 설정한 후 24시간 후에 보고서를 생성할 수 있으며 보고서에는 수집 시점의 데이터가 포함됩니다. 데이터는 28일 동안 저장됩니다. 3개월에 한 번이라도 보고서를 생성하지 않으면 데이터 수집이 일시 중지되고 다시 사용하도록 설정해야 합니다.

최근 활동 기반 보고서에 대한 데이터 수집 사용

이 PowerShell 명령은 지난 28일 동안의 활동에 대한 보고서에 대한 감사 데이터 수집을 시작합니다.

Start-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

ReportEntity 매개 변수에 적용 가능한 값은 SharingLinksAnyone, SharingLinksPeopleInYourOrg, SharingLinksGuests, EveryoneExceptExternalUsersAtSite, EveryoneExceptExternalUsersForItems, CopilotAppInsights입니다

최근 활동 기반 보고서에 대한 데이터 수집 사용 안 함

이 PowerShell 명령은 지난 28일 동안의 활동에 대한 보고서에 대한 감사 데이터 수집을 중지합니다.

Stop-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

최근 활동 기반 보고서의 데이터 수집 상태 확인

데이터 수집을 사용하도록 설정하면 24시간 후에 보고서를 생성할 수 있습니다. 보고서를 생성할 수 있는지 검사하려면 PowerShell 명령 Get-SPOAuditDataCollectionStatusForActivityInsights를 사용합니다. 이 명령은 현재 데이터 수집 상태( , InProgress, 또는 Paused)를 NotInitiated반환합니다. 보고서는 상태일 때 생성할 수 있습니다.InProgress

Get-SPOAuditDataCollectionStatusForActivityInsights -ReportEntity SharingLinks_Anyone

PowerShell을 사용하여 보고서 추적

중요

보고서를 만들 때마다 보고서 상태를 추적하는 데 사용할 수 있는 GUID가 반환됩니다.

Start-SPODataAccessGovernanceInsight -ReportEntity SensitivityLabelForFiles -Workload SharePoint -ReportType Snapshot -FileSensitivityLabelGUID "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1" -FileSensitivityLabelName Secret
ReportId                             Status
--------                             ------
a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 NotStarted

Get-SPODataAccessGovernanceInsight 명령을 사용하여 보고서 ID를 사용하여 특정 데이터 액세스 거버넌스 보고서의 현재 상태를 가져옵니다.

Get-SPODataAccessGovernanceInsight -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportId          : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportEntity      : SharingLinks_Anyone
Status            : InQueue
Workload          : SharePoint
TriggeredDateTime : 11/13/2024 19:32:34
CreatedDateTime   : 11/13/2024 20:09:23
ReportStartTime   : 10/17/2024 19:32:33
ReportEndTime     : 11/13/2024 19:32:33
ReportType        : RecentActivity
SitesFound        : 120

ReportStartTime 보고서 ReportEndTime 의 데이터 기간을 표시합니다. 보고서 생성이 완료되면 상태가 변경 Completed 됩니다.

ID 대신 필터 ReportEntity 를 사용하여 DAG 보고서의 현재 상태를 볼 수도 있습니다. 출력 reportID 에 나타나며 나중에 특정 보고서를 다운로드하는 데 필요합니다.

Get-SPODataAccessGovernanceInsight -ReportEntity PermissionedUsers
ReportId             : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
ReportName           : PermissionReportFor1AsOfSept
ReportEntity         : PermissionedUsers
Status               : Completed
Workload             : SharePoint
TriggeredDateTime    : 09/18/2024 11:06:16
CreatedDateTime      : 09/22/2024 12:12:48
ReportType           : Snapshot
CountOfUsersMoreThan : 1
CountOfSitesInReport : 7
CountOfSitesInTenant : 22
Privacy              : All
Sensitivity          : {All}
Templates            : {All}

ReportId             : b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2
ReportName           : PermissionReportFor1AsOfOct
ReportEntity         : PermissionedUsers
Status               : Completed
Workload             : SharePoint
TriggeredDateTime    : 10/09/2024 14:15:40
CreatedDateTime      : 10/09/2024 15:18:23
ReportType           : Snapshot
CountOfUsersMoreThan : 100
CountOfSitesInReport : 0
CountOfSitesInTenant : 26
Privacy              : All
Sensitivity          : {All}
Templates            : {All}

PowerShell을 사용하여 보고서 보기 및 다운로드

특정 보고서를 다운로드하려면 reportID가 필요합니다. Get-SPODataAccessGovernanceInsight 명령을 사용하여 reportID를 가져옵니다. 그런 다음 Export-SPODataAccessGovernanceInsight 명령을 사용하여 지정한 경로로 보고서를 다운로드합니다.

Export-SPODataAccessGovernanceInsight -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 -DownloadPath "C:\Users\TestUser\Documents\DAGReports"

이 명령은 지정한 경로에 CSV 파일을 다운로드합니다. SharePoint 관리 센터에서 데이터 액세스 거버넌스 보고서에 액세스하는 방법에서 각 보고서에 대한 CSV 및 보기에 대한 세부 정보를 찾을 수 있습니다.

참고

기본 다운로드 경로는 다운로드 폴더입니다.

PowerShell을 사용하여 수정 작업 수행

데이터 액세스 거버넌스 보고서를 생성한 후 데이터 액세스 거버넌스 보고서의 수정 조치에 설명된 대로 수정 조치를 수행할 수 있습니다.

다음 섹션에서는 수정 작업으로 사이트 액세스 검토를 시작하고 추적하는 PowerShell 명령에 대해 설명합니다.

PowerShell을 사용하여 사이트 액세스 검토 시작

Start-SPOSiteReview 명령을 사용하여 데이터 액세스 거버넌스 보고서 아래에 나열된 특정 사이트에 대한 사이트 액세스 검토를 시작합니다. 데이터 액세스 거버넌스 보고서는 검토를 시작해야 하는 컨텍스트를 제공합니다. CSV 파일에서 보고서 ID 및 사이트 ID를 검색하고 사이트 소유자에게 검토 목적과 관련하여 명확한 설명을 제공하기 위한 주석을 제공합니다.

Start-SPOSiteReview -ReportID a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 -SiteID c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3 -Comment "Check for org wide access"
ReviewId                : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId                  : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 13-11-2024 20:55:41
ReportEntity            : PermissionedUsers
Status                  : Pending
AdminComment            : Check for org wide access
SiteName                : All Company

이 명령은 사이트 액세스 검토를 시작하는 방법에 설명된 대로 사이트 소유자에게 이메일을 생성합니다.

중요

organization 보고서의 사이트 권한에서 매월 최대 1,000건의 사이트 액세스 검토를 시작할 수 있습니다. 이 제한은 새 달 초에 다시 설정됩니다.

PowerShell을 사용하여 사이트 액세스 검토 추적

Start-SPOSiteReview 명령을 사용하여 사이트 액세스 검토 상태를 추적합니다. 특정 리뷰의 경우 출력에 표시된 값을 사용합니다 ReviewID . 보고 모듈과 관련된 모든 검토를 검색하려면 매개 변수를 ReportEntity 사용합니다.

Get-SPOSiteReview -ReportEntity PermissionedUsers
ReviewId                : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId                  : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 13-11-2024 20:55:41
ReviewCompletedDateTime :
ReportCreatedDateTime   : 13-11-2024 23:25:41
ReportEndDateTime       : 13-11-2024 23:25:41
ReportEntity            : PermissionedUsers
Status                  : Pending
AdminComment            : Check for org wide access
SiteName                : All Company
ReviewerEmail           :
ReviewerComment         :

ReviewId                : a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
SiteId                  : c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3
ReviewInitiatedDateTime : 24-10-2024 11:07:39
ReviewCompletedDateTime : 15-11-2024 11:07:39
ReportCreatedDateTime   : 15-10-2024 09:24:47
ReportEndDateTime       : 15-10-2024 11:39:52
ReportEntity            : PermissionedUsers
Status                  : Completed
AdminComment            : Check for org wide access
SiteName                : All Company
ReviewerEmail           : Jon@contosofinance.com
ReviewerComment         : Removed EEEU for sensitive documents