Gérer les rapports de gouvernance d’accès aux données à l’aide de SharePoint Online PowerShell

Bien que la gouvernance de l’accès aux données soit disponible dans le Centre d’administration SharePoint, certaines organisations préfèrent utiliser PowerShell pour gérer les paramètres à grande échelle via des scripts et l’automatisation. Cet article explique comment utiliser le module SharePoint Online PowerShell pour gérer les rapports de gouvernance d’accès aux données.

Avant de commencer

Assurez-vous que votre organisation respecte les conditions préalables à la gestion avancée de SharePoint, y compris les exigences du module SharePoint Online PowerShell.

La prise en charge de PowerShell pour la gouvernance de l’accès aux données est disponible à partir du module Microsoft.Online.SharePoint.PowerShell et de la version ou d’une version 16.0.25409 ultérieure.

Lorsque vous vous connectez à SharePoint, exécutez la commande Connect-SPOServicesans le paramètre Credential . Conformément aux meilleures pratiques de sécurité, la connexion à l’aide du paramètre d’informations d’identification n’est pas prise en charge.

Créer des rapports à l’aide de PowerShell

Pour obtenir la syntaxe générale, les paramètres et des exemples PowerShell, consultez Start-SPODataAccessGovernanceInsight.

Pour obtenir des exemples de rapports spécifiques, consultez les sections suivantes dans cet article.

Générer un rapport sur l’état des autorisations de site

Vous devez comprendre les autorisations configurées dans votre organisation, en particulier à la suite de l’adoption de Copilot, car elles respectent les autorisations des utilisateurs et du contenu. Le risque d’exposition des données de Copilot augmente avec le nombre d’utilisateurs disposant d’autorisations ou d’accès. Le rapport sur l’état des autorisations de site fournit des insights détaillés sur l’exposition potentielle, en fonction du nombre unique d’utilisateurs qui disposent d’autorisations sur chaque site SharePoint et OneDrive de votre organisation.

Exécutez d’abord ce rapport pour obtenir une vue d’ensemble rapide des autorisations dans votre organization. Ce rapport est un rapport d’instantané. Il fournit le dernier instantané ou le dernier status de l’ensemble de l’organisation à la date de génération du rapport.

Pour générer un rapport pour tous vos sites SharePoint, exécutez la commande suivante :

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

Pour générer un rapport pour tous vos comptes OneDrive Entreprise, exécutez la commande suivante :

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

Gardez ces points importants à l’esprit à propos du rapport :

  • Étant donné que ces rapports sont complets et susceptibles de couvrir toutes les données de votre client, vous pouvez créer jusqu’à deux rapports. Vous pouvez créer un rapport par charge de travail.
  • Le premier rapport prend toujours jusqu’à cinq jours, quelle que soit la taille de votre organization. Les rapports suivants sont rédigés dans les 24 heures.
  • Ces rapports capturent les données jusqu’à 48 heures avant la génération du rapport.
  • Une fois générés, vous pouvez réexécuter ces rapports une fois tous les 30 jours.

Ces commandes génèrent une liste de tous les sites sur lesquels au moins un utilisateur peut accéder au contenu du site. Pour plus d’informations sur la façon d’interpréter le rapport, consultez Comment afficher les autorisations de site pour votre rapport d’organisation.

Une fois que vous avez compris l’étendue du partage excessif dans votre client, vous pouvez suivre d’autres écarts par rapport aux sites actifs au cours des 28 derniers jours. Vous pouvez générer des rapports sur les sites qui sont actifs dans des facteurs clés de partage excessif potentiel, tels que « Partage de liens » ou le contenu partagé avec « Tout le monde sauf les utilisateurs externes » au cours des 28 derniers jours.

Générer un rapport d’état des autorisations utilisateur

Bien que le rapport sur les autorisations de site pour l’ensemble de l’organisation vous aide à comprendre l’état actuel des autorisations dans l’ensemble du client, certains scénarios nécessitent de découvrir des sites accessibles à un utilisateur donné. Pour plus d’informations, consultez Obtenir la base de référence des autorisations de site de votre organisation avec le rapport d’instantané. La section suivante explique comment la gouvernance de l’accès aux données vous aide à générer un tel rapport à l’aide de PowerShell.

Tout d’abord, récupérez le nom d’utilisateur principal ou UPN de l’utilisateur pour lequel vous souhaitez générer le rapport à l’aide de la commande Get-MgUser . Exécutez ensuite la commande PowerShell suivante, qui déclenche le rapport répertoriant les sites SharePoint accessibles à ces utilisateurs.

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

Importante

Bien que le paramètre soit nommé UserEmailList, le rapport requiert des noms d’utilisateur principal. Vous pouvez inclure jusqu’à 100 utilisateurs dans une seule demande.

Pour répertorier les comptes OneDrive accessibles aux utilisateurs donnés, spécifiez la charge de travail comme .OneDriveForBusiness

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

Générer un rapport sur les sites et fichiers partagés via des groupes SharePoint spéciaux

Les rapports d’autorisation de site vous indiquent quels sites sont surpartagés. Pour trouver les éléments exacts où les groupes spéciaux « Tout le monde sauf les utilisateurs externes » (EEEU) ou « Tout le monde » sont les destinataires, générez ce rapport. Pour plus d’informations sur le rapport et sur l’interprétation de sa sortie, reportez-vous à la rubrique Obtenir les détails des autorisations au niveau de l’élément pour « Tout le monde sauf les utilisateurs externes » et « Tout le monde ».

Importante

Ce rapport nécessite une version 16.0.27215.12000 module Microsoft.Online.SharePoint.PowerShell ou ultérieure, publiée le 30 avril 2026. Vous devez également avoir le rôle d’administrateur de gestion avancée SharePoint, qu’un Administrateur général doit attribuer. Pour plus d’informations, voir Attribuer le rôle d’administrateur de gestion avancée SharePoint.

Pour générer le rapport pour EEEU, exécutez la commande suivante :

Start-SPODataAccessGovernanceInsight -ReportEntity EveryoneExceptExternalUsers -ReportType Snapshot

Pour générer le rapport pour tout le monde, modifiez la valeur du paramètre ReportEntity :

Start-SPODataAccessGovernanceInsight -ReportEntity Everyone -ReportType Snapshot

Gardez ces points importants à l’esprit à propos du rapport :

  • Le rapport ne prend pas de paramètre Charge de travail . La sortie couvre à la fois SharePoint et OneDrive.
  • Le fichier de sortie est limité à 1 million de lignes.
  • Les autorisations accordées à EEEU ou à tout le monde pour les fichiers et groupes système ne sont pas incluses.

Pour suivre le rapport et télécharger les résultats, consultez Suivre des rapports à l’aide de PowerShell et Afficher et télécharger des rapports à l’aide de PowerShell.

Générer une étiquette de confidentialité dans un rapport de fichiers avec PowerShell

Exécutez cette commande PowerShell pour déclencher le rapport afin de répertorier les sites sur lesquels des éléments spécifiques ont été étiquetés avec une étiquette donnée, à la date de génération du rapport.

Tout d’abord, récupérez le nom de l’étiquette ou le GUID de l’étiquette à l’aide du module PowerShell Sécurité & conformité.

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

Ensuite, utilisez le nom et le GUID pour récupérer les sites avec des fichiers étiquetés avec le nom d’étiquette ou le GUID indiqué.

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

Remarque

Actuellement, le rapport pour OneDriveForBusiness les comptes avec des fichiers étiquetés n’est pas pris en charge.

Utilisez les rapports d’activité de partage de lien pour identifier les sites qui sont actifs dans la collaboration et qui nécessitent une intervention plus rapide pour atténuer tout risque potentiel de partage excessif. Ces rapports d’activité récents identifient les sites qui ont généré le plus de liens de partage au cours des 28 derniers jours.

Générez les rapports d’activité de lien de partage suivants :

  • Sites qui ont créé Toute personne ayant partagé des liens au cours des 28 derniers jours
  • Sites qui ont créé des liens de partage de liens dans votre organisation People au cours des 28 derniers jours
  • Sites qui ont créé Personnes spécifiques (invités) partageant des liens au cours des 28 derniers jours
Start-SPODataAccessGovernanceInsight -ReportEntity SharingLinks_Anyone -Workload SharePoint -ReportType RecentActivity

Fournissez la valeur de la charge de travail afin que OneDriveForBusiness tous les comptes OneDrive répondent aux mêmes critères.

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

Fournissez la valeur de la charge de travail afin que OneDriveForBusiness tous les comptes OneDrive répondent aux mêmes critères.

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

Fournissez la valeur de la charge de travail afin que OneDriveForBusiness tous les comptes OneDrive répondent aux mêmes critères.

Identifier le contenu partagé avec « Tout le monde sauf les utilisateurs externes » au cours des 28 derniers jours

Bien que le partage de liens puisse contribuer à un partage excessif potentiel, un autre contributeur clé est « Tout le monde sauf les utilisateurs externes » (EEEU). L’EEEU rend le contenu public (visible par l’ensemble de l’organisation) et permet aux autres de découvrir facilement le contenu et d’y accéder. Ces rapports identifient les sites qui ont activement utilisé l’UEE à différentes échelles au cours des 28 derniers jours.

Vous pouvez générer les rapports d’activité suivants de l’UEE :

  • Sites partagés avec Tout le monde sauf les utilisateurs externes au cours des 28 derniers jours
  • Les éléments partagés avec tout le monde sauf les utilisateurs externes au cours des 28 derniers jours

Importante

Actuellement, le rapport EEEU pour OneDrive Entreprise prend uniquement en charge le niveau de l’élément. Les rapports EEEU pour OneDrive Entreprise au niveau du site ne sont pas pris en charge. Si vous n’avez pas de licence Microsoft Gestion avancée de SharePoint, vous devez activer la collecte de données pour les rapports d’activité récents afin que les données d’audit pertinentes soient collectées pour créer le rapport. Une fois activé, les données sont collectées et stockées pendant 28 jours. Vous pouvez générer le rapport 24 heures plus tard et il contient des données du point de collecte. Si vous ne générez pas de rapports, même une fois tous les trois mois, la collecte de données est suspendue et vous devez l’activer à nouveau. Pour activer la collecte de données pour ces rapports, voir la section Gérer la collecte de données pour les rapports d’activité récents.

Identifier les sites partagés avec « Tout le monde sauf les utilisateurs externes » au cours des 28 derniers jours

Lorsque vous ajoutez l’EEEU à un membre du site (propriétaires, membres ou visiteurs), l’ensemble du contenu du site devient public et plus enclin au partage excessif. Exécutez la commande PowerShell suivante pour déclencher le rapport afin de capturer ces sites au cours des 28 derniers jours pour les sites SharePoint :

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

Identifier les éléments partagés avec « Tout le monde sauf les utilisateurs externes » au cours des 28 derniers jours

Exécutez la commande PowerShell suivante pour déclencher le rapport afin de capturer des éléments spécifiques (fichiers, dossiers ou listes) que vous avez partagés avec EEEU au cours des 28 derniers jours pour des sites SharePoint :

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

Remarque

Remplacez la valeur de charge de travail par OneDriveForBusiness pour obtenir les éléments partagés avec « Tout le monde sauf les utilisateurs externes » pour tous les comptes OneDrive avec les mêmes critères.

Gérer la collecte de données pour les rapports d’activité récents

Importante

Si vous n’avez pas de licence Microsoft Gestion avancée de SharePoint, vous devez activer la collecte de données pour les rapports d’activité récents afin que les données d’audit pertinentes soient collectées pour créer le rapport. Une fois activé, vous pouvez générer le rapport 24 heures plus tard et il contiendra les données du point de collecte. Les données sont stockées pendant 28 jours. Si vous ne générez pas de rapports, même une fois tous les trois mois, la collecte de données est suspendue et vous devez l’activer à nouveau.

Activer la collecte de données pour les rapports d’activité récents

Cette commande PowerShell commence à collecter les données d’audit pour les rapports sur les activités des 28 derniers jours.

Start-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

Les valeurs applicables pour le paramètre ReportEntity sont SharingLinksAnyone, SharingLinksPeopleInYourOrg, SharingLinksGuests, EveryoneExceptExternalUsersAtSite, EveryoneExceptExternalUsersForItems, CopilotAppInsights

Désactiver la collecte de données pour les rapports d’activité récents

Cette commande PowerShell arrête la collecte des données d’audit pour les rapports sur les activités des 28 derniers jours.

Stop-SPOAuditDataCollectionForActivityInsights -ReportEntity SharingLinks_Anyone

Vérifier le status de la collecte de données pour les rapports basés sur l’activité récents

Une fois la collecte de données activée, les rapports peuvent être générés au bout de 24 heures. Pour case activée si des rapports peuvent être générés, utilisez la commande PowerShell Get-SPOAuditDataCollectionStatusForActivityInsights. La commande renvoie le status actuel de la collecte de données, qui peut être NotInitiated, InProgressou Paused. Les rapports peuvent être générés lorsque le status est InProgress.

Get-SPOAuditDataCollectionStatusForActivityInsights -ReportEntity SharingLinks_Anyone

Effectuer le suivi des rapports à l’aide de PowerShell

Importante

Chaque création de rapport renvoie un GUID que vous pouvez utiliser pour suivre la status du rapport.

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

Utilisez la commande Get-SPODataAccessGovernanceInsight pour obtenir le status actuel d’un rapport de gouvernance d’accès aux données spécifique à l’aide de l’ID de rapport.

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

Le ReportStartTime et ReportEndTime affiche la période de données pour le rapport. Le status change lorsque Completed la génération du rapport est terminée.

Vous pouvez également afficher le status actuel des rapports DAG à l’aide du filtre ReportEntity au lieu de l’ID. Il reportID apparaît dans la sortie et est nécessaire plus tard pour télécharger un rapport spécifique.

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}

Afficher et télécharger des rapports à l’aide de PowerShell

Pour télécharger un rapport spécifique, vous avez besoin du reportID. Obtenez le reportID à l’aide de la commande Get-SPODataAccessGovernanceInsight . Ensuite, utilisez la commande Export-SPODataAccessGovernanceInsight pour télécharger le rapport dans le chemin d’accès que vous spécifiez.

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

Cette commande télécharge un fichier CSV vers le chemin que vous spécifiez. Vous trouverez des détails sur le fichier CSV et l’affichage de chaque rapport dans Comment accéder aux rapports de gouvernance de l’accès aux données dans le Centre d’administration SharePoint.

Remarque

Le chemin de téléchargement par défaut est le dossier Téléchargements .

Effectuer des actions correctives à l’aide de PowerShell

Après avoir généré des rapports de gouvernance de l’accès aux données, vous pouvez effectuer les actions correctives décrites dans Actions correctives des rapports de gouvernance de l’accès aux données.

La section suivante décrit les commandes PowerShell permettant d’initier et de suivre des révisions d’accès au site en tant qu’action corrective.

Lancer la révision de l’accès au site à l’aide de PowerShell

Utilisez la commande Start-SPOSiteReview pour lancer une révision d’accès au site pour un site spécifique, répertorié sous un rapport de gouvernance de l’accès aux données. Le rapport sur la gouvernance de l’accès aux données indique le contexte dans lequel vous devez lancer la révision. Récupérez l’ID de rapport et l’ID de site à partir du fichier CSV et fournissez des commentaires pour clarifier l’objectif de la révision pour le propriétaire du site.

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

Cette commande génère des e-mails au propriétaire du site, comme décrit dans Comment lancer une révision d’accès au site.

Importante

Vous pouvez lancer jusqu’à 1 000 révisions d’accès au site par mois civil à partir des autorisations de site dans votre rapport organization. Cette limite est réinitialisée au début de chaque nouveau mois.

Suivre les révisions d’accès au site à l’aide de PowerShell

Utilisez la commande Start-SPOSiteReview pour suivre le status des révisions d’accès au site. Pour des révisions spécifiques, utilisez la ReviewID valeur indiquée dans la sortie. Pour récupérer toutes les révisions liées à un module de reporting, utilisez le ReportEntity paramètre.

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