共用方式為


使用 SharePoint Online PowerShell 管理資料存取治理報告

雖然 SharePoint 管理中心入口網站提供 資料存取治理 ,大型組織通常會尋求 PowerShell 支援,以便透過腳本管理和自動化來管理規模。 本文件討論了透過 SharePoint Online PowerShell 模組提供的所有適當的 PowerShell 指令,以管理資料存取治理的報告。

重要事項

  • 資料存取治理的 PowerShell 支援可從模組「Microsoft.Online.SharePoint.PowerShell」及版本「16.0.25409」開始提供。
  • 執行 Connect-SPOService 指令 時,請不要 使用 憑證 參數。 我們t_依照最新安全措施,不支援使用 Credential 參數登入。

你需要建立資料存取治理報告

執照要求是什麼?

您的組織需要擁有正確的授權,並符合某些管理權限或角色,才能使用本文所述的功能。

首先,您的組織必須擁有以下其中一種基本授權:

  • Office 365 E3、E5 或 A5
  • Microsoft 365 E1、E3、E5 或 A5

此外,你至少需要以下一項執照:

  • Microsoft 365 Copilot授權:組織中至少有一位使用者必須被指派 Copilot 授權 (該使用者不必是 SharePoint 管理員) 。
  • Microsoft SharePoint 進階管理授權: 可單獨購買。

管理員要求

你必須是 SharePoint 管理員 或擁有同等權限。

其他資訊

如果您的組織擁有 Copilot 執照,且至少有一人被指派 Copilot 執照,SharePoint 管理員會自動取得 Copilot 部署所需的 SharePoint 進階管理功能

對於沒有 Copilot 授權的組織,你可以 購買獨立的 SharePoint 進階管理授權,使用 SharePoint 進階管理功能。

開始之前

你必須是 SharePoint 管理員 ,或在 Microsoft 365 中擁有同等權限才能執行 PowerShell 管理腳本。

在使用本文中的 PowerShell 腳本之前,你需要先完成以下步驟:

  1. 如果還沒下載,請下載最新的 SharePoint Online 管理命令介面

    注意事項

    如果您安裝的是舊版 SharePoint Online 管理命令介面,請移至 [新增或移除程式],並解除安裝 [SharePoint Online 管理命令介面]。

  2. 在 Microsoft 365 中以 SharePoint 管理員 身份或在 Microsoft 365 中以同等權限連接 SharePoint。 若要了解如何進行,請參閱開始使用 SharePoint Online 管理命令介面

使用 PowerShell 建立報告

使用 Start-SPODataAccessGovernanceInsight 指令來產生所有具備適當篩選條件與參數的報告

組織間的網站權限報告

SharePoint 管理員必須了解組織中的權限設定,尤其是在 Copilot 採用後,因為 Copilot 尊重使用者與內容權限。 Copilot 的資料外洩風險會隨著擁有權限或存取權限的使用者數量增加而增加。 本報告深入說明了您組織中每個 SharePoint 與 OneDrive 網站中擁有獨特權限的「曝光度」,即擁有獨特數量的使用者權限。

建議先執行此報告,以快速了解貴組織的權限狀況。

此報告被視為「快照」報告,即提供報告產生日期時整個組織的最新快照/狀態。

要為你所有 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"

請檢視以下關於報告跑的重要資訊。

  • 由於這些報告內容全面,且通常涵蓋您租戶的所有資料,最多允許的報告數量為2份;每個工作量一個。
  • 無論組織規模大小,第一份報告通常需時五天完成。 後續報告將於24小時內完成。
  • 這些報告會擷取報告 產生前 48 小時 的資料。
  • 生成後,每 30 天可重新執行一次。

這些指令會產生一份網站清單,列出至少一位使用者能存取該網站內任何內容的網站。 關於地點列表及如何解讀結果的更多資訊,請 見此處。

一旦你了解租戶過度分享的程度,就能追蹤過去28天內與活躍地點的進一步偏差。 你可以針對過去 28 天內活躍於潛在過度分享的關鍵因素(如「分享連結」或「除外部使用者外的所有人」分享內容)產生報告。

這些報告有助於識別活躍合作的網站,因此需要更快速介入以降低潛在的過度分享風險。 這些基於「RecentActivity」的報告,會識別過去 28 天內產生最多分享連結的網站。

重要事項

如果你沒有 Microsoft SharePoint 進階管理授權,系統會要求你啟用基於「RecentActivity」的報告資料收集,讓產品開始收集相關的稽核資料以建立此報告。 啟用後,資料會被收集並儲存28天。 報告可在24小時後產生,並包含收集點的資料。 若三個月內一次都未產生報告,資料收集將暫停,並應重新啟用。 若要啟用這些報告的資料收集,請參閱 文件的本節

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

將工作負載值設為「OneDriveForBusiness」,讓所有 OneDrive 帳號符合相同條件。

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

將工作負載值設為「OneDriveForBusiness」,讓所有 OneDrive 帳號符合相同條件。

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

將工作負載值設為「OneDriveForBusiness」,讓所有 OneDrive 帳號符合相同條件。

過去28天內與除外部用戶外所有人分享的內容

雖然分享連結可能是過度分享的可能原因之一,但另一個關鍵因素是EEEU) (「除外部使用者以外的所有人」,該系統使內容「公開」,即對整個組織皆可見,並讓他人輕鬆發現內容及取得存取權限。 這些報告指出過去28天內在不同範圍內積極使用EEEU的地點。

重要事項

如果你沒有 Microsoft SharePoint 進階管理授權,系統會要求你啟用基於「RecentActivity」的報告資料收集,讓產品開始收集相關的稽核資料以建立此報告。 啟用後,資料會被收集並儲存28天。 報告可在24小時後產生,並包含收集點的資料。 若三個月內一次都未產生報告,資料收集將暫停,並應重新啟用。 欲啟用這些報告的資料收集,請參閱 下方章節的文件

過去 28 天內與除外部用戶外所有人共享的網站

當 EEEU 被加入網站會員資格 (擁有者、會員或訪客) 時,網站整體內容將變得公開,且更容易過度分享。 以下 PowerShell 指令可觸發報告,擷取過去 28 天內的此類網站:

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

注意事項

目前 OneDriveForBusiness 在站點層級不支援 EEEU 的報告。

過去 28 天內與除外部使用者外所有人分享的項目

以下 PowerShell 指令觸發報告,以擷取過去 28 天內與 EEEU 共享的特定項目 (檔案/資料夾/清單) 地點:

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

將工作負載值設為「OneDriveForBusiness」,讓所有 OneDrive 帳號符合相同條件。

檔案報告中的敏感度標籤

這個 PowerShell 指令會觸發報告,列出特定項目以特定「標籤」標記的網站,該地點以報告產生日期為止。

首先,使用「Security and compliance」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」帳戶報告尚未支援。

近期活動報告的資料收集

重要事項

如果你沒有 Microsoft SharePoint 進階管理授權,系統會要求你啟用基於「RecentActivity」的報告資料收集,讓產品開始收集相關的稽核資料以建立此報告。 啟用後,報告可在24小時內產生,並包含收集點的資料。 資料儲存期限為28天。 若三個月內一次都未產生報告,資料收集將暫停,並應重新啟用。

促進資料收集

這個 PowerShell 指令會開始收集過去 28 天活動報告的稽核資料。

Start-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

ReportEntity 參數的適用值包括 SharingLinksAnyone、SharingLinksPeopleInYourOrg、SharingLinksGuests、EveryoneExceptExternalUsersAtSite、EveryoneExceptalExternalUsersForItems、CopilotAppInsights

停用資料收集

這個 PowerShell 指令會停止收集過去 28 天活動報告的稽核資料。

Stop-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

檢查資料收集狀態

一旦啟用資料收集,報告可在24小時後產生。 要檢查是否能產生報告,請使用 PowerShell 指令 Get-SPOAuditDataCollectionStatusForActivityInsights。 指令會回傳目前的資料收集狀態,可為 NotInitiatedInProgress暫停。 當狀態為 進行中時,可以產生報告。

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 表示產生報告的資料期間。 當報告產生完成時,狀態會被標記為「已完成」。

您也可以使用篩選器 ReportEntity 而非 ID 來查看 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 檔案到指定的路徑。 份報告的 CSV/視圖細節在此討論。

注意事項

預設下載路徑是「Downloads」資料夾。

使用 PowerShell 進行補救措施

一旦產生資料存取治理報告,SharePoint 管理員即可執行 此處所述的補救措施。 以下章節說明 PowerShell 指令,用以觸發並追蹤「網站存取審查」作為補救措施。

使用 PowerShell 啟動網站存取審查

使用 Start-SPOSiteReview 指令,針對特定站點發起站點存取審查,該站點列於資料存取治理報告中。 資料存取治理報告提供了啟動審查的背景。 從 CSV 檔案中取得 reportID、網站 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

這會觸發發送給網站擁有者的電子郵件,詳情 如下所示

使用 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