Partager via


RGPD pour SharePoint Server

S’applique à :

  • SharePoint Server 2013
  • SharePoint Server 2016
  • SharePoint Server 2019
  • SharePoint Server Édition d’abonnement

Dans le cadre de la protection des informations personnelles, nous vous recommandons d’effectuer les tâches suivantes :

Contenu généré par l’utilisateur

Voici l’approche à adopter concernant le contenu généré par l’utilisateur dans les bibliothèques et les sites SharePoint Server :

  • Attribuez des étiquettes aux données sensibles à l’aide d’Azure Information Protection.

  • Récupérez les données sensibles à l’aide des fonctions de recherche SharePoint Server et eDiscovery.

Voici la procédure recommandée à suivre concernant les partages de fichiers, ainsi que les bibliothèques et les sites SharePoint :

  1. Installez et configurez le scanneur Azure Information Protection.

    • Déterminez les types de données sensibles à utiliser.

    • Spécifiez les sites SharePoint à utiliser.

  2. Effectuez un cycle de détection.

    • Exécutez le scanneur en mode de détection et validez les résultats.

    • Si nécessaire, optimisez les conditions et les types d’informations sensibles.

    • Évaluez l’incidence que peut avoir l’application automatique d’étiquettes.

  3. Exécutez le scanneur Azure Information Protection pour appliquer des étiquettes aux documents correspondants.

  4. Pour une meilleure protection :

    a. Configurez des règles de protection contre la perte de données Exchange pour protéger les documents avec l’étiquette souhaitée.

    b. Veillez à limiter les personnes autorisées à accéder aux fichiers.

    c. Pour SharePoint, utilisez la protection IRM pour les bibliothèques.

  5. Pour la surveillance, intégrez un outil SIEM aux journaux Windows Server.

    a. Pour rechercher des données personnelles pour les demandes des personnes concernées, utilisez le Centre de recherche ou eDiscovery.

Lorsque vous appliquez des étiquettes à des données sensibles, veillez à utiliser une étiquette qui n’est pas configurée avec la protection. La protection inclut le chiffrement qui empêche les services de détecter les données sensibles dans les fichiers.

Pour plus d’informations sur l’utilisation d’Azure Information Protection scanner pour rechercher et étiqueter des données personnelles, consultez microsoft RGPD Data Discovery Toolkit (https://aka.ms/gdprpartners).

Pour plus d’informations sur la configuration du scanneur pour les conditions et l’utilisation des types d’informations sensibles Protection contre la perte de données Microsoft Purview (DLP), consultez Comment configurer des conditions pour la classification automatique et recommandée pour Azure Information Protection. Notez que les nouveaux types d’informations sensibles Office 365 ne sont pas immédiatement disponibles pour être utilisés avec le scanneur et que les types d’informations sensibles personnalisés ne peuvent pas être utilisés avec le scanneur.

Suppression d’informations personnelles à partir de fichiers Office

La suppression des informations personnelles (telles que les métadonnées ou les commentaires dans un document Word) des fichiers Office stockés dans une bibliothèque de documents SharePoint doit être effectuée manuellement. Procédez comme suit :

  1. Téléchargez une copie du document à partir de SharePoint Server sur votre disque local.

  2. Supprimez le document de la bibliothèque de documents SharePoint.

  3. Suivez la procédure indiquée dans l’article Supprimer des données masquées et des informations personnelles en inspectant des documents.

  4. Téléchargez de nouveau le document vers la bibliothèque de documents SharePoint.

Télémétrie et fichiers journaux

Journaux ULS

Le service de journalisation unifiée (ULS) et la journalisation de l’utilisation dans SharePoint Server effectuent le suivi de diverses fonctions système et peuvent contenir des informations utilisateur. Les journaux ULS et les journaux d’utilisation sont des fichiers texte qui peuvent faire l’objet d’une recherche à l’aide de divers outils de recherche. L’applet de commande PowerShell Merge-SPLogFile permet de retourner des enregistrements à partir des journaux ULS sur plusieurs serveurs d’une batterie de serveurs.

Envisagez de définir les stratégies de rétention des journaux sur la valeur minimale nécessaire à vos besoins professionnels. Pour plus d’informations sur la configuration de la journalisation dans SharePoint Server, voir Configurer la journalisation des diagnostics dans SharePoint Server.

Notez que certains événements système sont également enregistrés pour le journal des événements Windows.

Base de données d’utilisation

La base de données d’utilisation de SharePoint Server (nom par défaut WSS_Logging) contient un sous-ensemble des informations trouvées dans les journaux ULS. La conservation maximale des données dans cette base de données est de 30 jours. Nous vous recommandons de le configurer pour la durée la plus courte autorisée par les besoins de votre entreprise. Pour plus d'informations, voir Configurer la journalisation des diagnostics dans SharePoint Server.

Les enregistrements d’utilisation et l’historique des requêtes de recherche contiennent des références à des noms d’utilisateur.

Historique de requêtes et requêtes favorites

Dans SharePoint Server, les historiques des requêtes et les requêtes « favorites » expirent automatiquement après 365 jours. Si un utilisateur quitte votre organization, il est possible de supprimer les références au nom d’un utilisateur de l’historique des requêtes en suivant les étapes ci-dessous.

Les requêtes SQL suivantes s’appliquent à SharePoint Server, et permettent d’effectuer les actions suivantes :

  • Exporter l’historique de requêtes et les requêtes favorites d’un utilisateur

  • Supprimer les références à des noms d’utilisateur dans l’historique de requêtes

Remarque

L’ajout de procédures stockées à une base de données SharePoint Server n’est normalement pas pris en charge. Microsoft fera une exception à cette stratégie pour prendre en charge l’ajout et l’exécution des procédures stockées décrites dans cet article à une base de données SharePoint Server.

Exporter les requêtes d’un utilisateur depuis une date spécifique

Utilisez la procédure suivante pour exporter des requêtes à partir des tables du journal des requêtes du Magasin de liens, effectuées par @UserName depuis @StartTime.

[In dbo].[LinkStore_<ID>]:
CREATE PROCEDURE proc_MSS_GetQueryTermsForUser 
( 
    @UserName nvarchar(256), 
    @StartTime datetime 
) 
AS 
BEGIN 
    SET NOCOUNT ON; 
    SELECT searchTime, queryString 
    FROM 
        dbo.MSSQLogPageImpressionQuery 
    WITH 
        (NOLOCK) 
    WHERE 
        userName = @UserName AND 
        searchTime > @StartTime 
END 
GO 

Exporter les requêtes d’un utilisateur émises au cours des 100 derniers jours

DECLARE @FROMDATE datetime 
SET @FROMDATE = DATEADD(day, -100, GETUTCDATE()) 
EXECUTE proc_MSS_GetQueryTermsForUser '0#.w|domain\username', @FROMDATE 

Exporter les requêtes favorites d’un utilisateur

Utilisez la procédure suivante pour exporter les requêtes favorites d’un utilisateur à partir des tables de résultats personnels de la base de données search Administration, effectuées par @UserName, depuis <DateTime>.

In [dbo].[Search_<ID>]:
CREATE PROCEDURE proc_MSS_GetPersonalFavoriteQueries 
( 
    @UserName nvarchar(256), 
    @SearchTime datetime 
) 
AS 
BEGIN 
    SET NOCOUNT ON; 
    SELECT max(queries.SearchTime) as SearchTime, 
           max(queries.querystring) as queryString, 
           max(url.url) as URL 
    FROM MSSQLogOwner owners WITH(NOLOCK) 
    JOIN MSSQLogPersonalResults results WITH(NOLOCK) on owners.OwnerId = results.OwnerId 
    JOIN MSSQLogUrl url WITH(NOLOCK) on results.ClickedUrlId = url.urlId 
    JOIN MSSQLogPersonalQueries queries WITH(NOLOCK) on results.OwnerId = queries.OwnerId 
    WHERE queries.SearchTime > @SearchTime 
        AND queries.UserName = @UserName 
        GROUP BY queries.QueryString,url.url 
END 
GO 

Exporter les requêtes favorites d’un utilisateur émises au cours des 100 derniers jours

DECLARE @FROMDATE datetime 
SET @FROMDATE = DATEADD(day, -100, GETUTCDATE()) 
EXECUTE proc_MSS_GetPersonalFavoriteQueries '0#.w|domain\username', @FROMDATE 

Supprimer les références aux noms d’utilisateur qui datent de plus de X jours

Utilisez la procédure suivante pour supprimer des tables du journal des requêtes du Magasin de liens les références à tous les noms d’utilisateur qui sont plus anciens @Days . La procédure supprime uniquement les références vers l’arrière dans le temps jusqu’à ce qu’elle atteigne le @LastCleanupTime.

In [dbo].[LinksStore_<ID>]:  
CREATE PROCEDURE proc_MSS_QLog_Cleanup_Users 
( 
    @LastCleanupTime datetime, 
    @Days int 
) 
AS 
BEGIN 
    DECLARE @TooOld datetime 
    SET @TooOld = DATEADD(day, -@Days, GETUTCDATE()) 
    DECLARE @FromLast datetime 
    SET @FromLast = DATEADD(day, -@Days, @LastCleanupTime) 
    BEGIN TRANSACTION 
         UPDATE MSSQLogPageImpressionQuery 
    SET userName = 'NA' 
    WHERE @FromLast <= searchTime AND searchTime < @TooOld 
    UPDATE MSSQLogO14PageClick 
    SET userName = 'NA' 
    WHERE @FromLast <= searchTime AND searchTime < @TooOld 
    COMMIT TRANSACTION 
END 
GO 

Supprimer les références à un nom d’utilisateur spécifique qui date de plus de X jours

Utilisez la procédure suivante pour supprimer les références à un nom d’utilisateur spécifique des tables de journal des requêtes du Magasin de liens, où les références sont plus que @Days anciennes. La procédure supprime uniquement les références vers l’arrière dans le temps jusqu’à ce qu’elle atteigne le @LastCleanupTime.

In [dbo].[LinksStore_<ID>]:
CREATE PROCEDURE proc_MSS_QLog_Cleanup_Users 
( 
    @UserName nvarchar(256),
    @LastCleanupTime datetime, 
    @Days int 
) 
AS 
BEGIN 
    DECLARE @TooOld datetime 
    SET @TooOld = DATEADD(day, -@Days, GETUTCDATE()) 
    DECLARE @FromLast datetime 
    SET @FromLast = DATEADD(day, -@Days, @LastCleanupTime) 
    BEGIN TRANSACTION 
         UPDATE MSSQLogPageImpressionQuery 
    SET userName = 'NA' 
    WHERE @FromLast <= searchTime AND searchTime < @TooOld AND userName = @UserName
    UPDATE MSSQLogO14PageClick 
    SET userName = 'NA' 
    WHERE @FromLast <= searchTime AND searchTime < @TooOld AND userName = @UserName
    COMMIT TRANSACTION 
END 
GO 

Supprimer les références à tous les noms d’utilisateur dans l’historique de requêtes entre une date spécifique et jusqu’aux 30 derniers jours

EXECUTE proc_MSS_QLog_Cleanup_Users '1-1-2017', 30 

Supprimer les enregistrements d’utilisation

SharePoint Server supprime automatiquement les enregistrements d’utilisation après 3 ans. Vous pouvez supprimer manuellement ces enregistrements à l’aide de la procédure ci-dessous :

Pour supprimer tous les enregistrements d’utilisation associés à des documents supprimés, procédez comme suit :

  1. Assurez-vous que la dernière mise à jour de SharePoint est installée. 

  2. Démarrez SharePoint Management Shell.

  3. Arrêtez et effacez l’analyse de l’utilisation :

    $tj = Get-SPTimerJob -Type Microsoft.Office.Server.Search.Analytics.UsageAnalyticsJobDefinition 
    $tj.DisableTimerjobSchedule()
    $tj.StopAnalysis() 
    $tj.ClearAnalysis() 
    $tj.EnableTimerjobSchedule()
    
  4. Attendez que l’analyse recommence (cela peut prendre jusqu’à 24 heures). 

  5. Lors de la prochaine exécution de l’analyse, il videra tous les enregistrements de la base de données de rapports d’analyse. Ce vidage complet peut prendre un certain temps pour une base de données volumineuse avec de nombreuses entrées.

  6. Attendez 10 jours. L’analyse s’exécute quotidiennement et les enregistrements associés aux documents supprimés sont supprimés après l’exécution 10^th^ . Cette exécution peut prendre plus de temps que d’habitude si de nombreux enregistrements doivent être supprimés. 

Informations personnelles et recherche dans SharePoint Server 2010

FAST Search Server 2010 for SharePoint

En plus de stocker des fichiers dans l’index, le FAST Search Server 2010 Add-On stocke également les fichiers dans un format intermédiaire appelé FixML. Les fichiers FiXML sont compactés régulièrement, par défaut entre 3h et 5h00 tous les soirs. Le compactage supprime automatiquement les fichiers supprimés des fichiers FiXML. Pour garantir la suppression en temps voulu des informations appartenant à des utilisateurs ou des documents supprimés, assurez-vous que le compactage est toujours activé.

Les actions recommandées pour les solutions de recherche hybride sont les mêmes que pour la recherche dans SharePoint Server ou SharePoint Online. Il existe deux solutions de recherche hybride :

La solution de recherche hybride cloud - Avec la solution de recherche hybride cloud pour SharePoint, vous indexez tout votre contenu analysé, y compris le contenu local, dans votre index de recherche dans Office 365. Quand les utilisateurs lancent une requête dans votre index de recherche dans Office 365, ils obtiennent des résultats de recherche provenant à la fois du contenu local et Office 365. Lorsque des documents sont supprimés de l’environnement SharePoint Server, ils sont également supprimés de l’index de recherche dans Office 365. En savoir plus sur la solution de recherche hybride dans le cloud et sur la façon dont les composants de recherche et les bases de données interagissent dans la recherche hybride dans le cloud pour mieux comprendre comment le RGPD affecte l’environnement hybride.

La solution de recherche fédérée hybride - Avec la solution de recherche fédérée hybride, vous utilisez votre index dans SharePoint Server et votre index dans Office 365. Les services de recherche SharePoint Server et SharePoint Online peuvent chacun interroger l’index de recherche de l’autre environnement et renvoyer des résultats fédérés. Quand les utilisateurs effectuent une recherche à partir d’un centre de recherche, les résultats de recherche sont extraits de vos index de recherche dans SharePoint Server et Office 365. En savoir plus sur la solution de recherche fédérée hybride pour mieux comprendre comment le RGPD affecte l’environnement hybride.

Migrations depuis votre ordinateur local vers le cloud

Lors de la migration de données de SharePoint Server vers SharePoint Online, des données en double peuvent exister dans les deux emplacements pendant un certain temps. Si vous avez des données à supprimer en cours de migration, nous vous recommandons d’effectuer d’abord la migration, puis de supprimer les données des deux emplacements. Vous pouvez interroger les données à exporter à partir de l’un ou l’autre emplacement.

Données des profils utilisateur

Le service de profil utilisateur permet d’importer des données de profil à partir de diverses sources externes. Les requêtes et la mise à jour de ces données de profil utilisateur doivent être gérées dans les systèmes dans lesquels les données sont maîtrisées. Si vous effectuez des mises à jour sur le système externe, veillez à synchroniser à nouveau les profils utilisateur dans SharePoint Server.

Suivez ces étapes de base pour supprimer les informations personnelles d’un utilisateur de son profil d’utilisateur SharePoint Server :

  1. Supprimez les informations utilisateur de tous les systèmes externes qui alimentent le profil utilisateur SharePoint Server. Si vous utilisez la synchronisation d’annuaires, l’utilisateur doit être supprimé de l’environnement Active Directory local.

  2. Exécutez une synchronisation des profils sur SharePoint Server.

  3. Supprimez le profil de SharePoint Server. Une fois cette opération effectuée, SharePoint Server supprime complètement le profil de la base de données de profils utilisateur dans les 30 jours. La page de profil et le site personnel de l’utilisateur seront supprimés.

Après la suppression du profil d’un utilisateur, certaines informations limitées (telles que l’ID utilisateur) peuvent toujours être enregistrées dans les collections de sites que l’utilisateur a visitées. Si vous choisissez de supprimer ces données d’une collection de sites donnée, vous pouvez le faire à l’aide du modèle CSOM. Un exemple de script est fourni ci-dessous :

$username = "<admin@company.sharepoint.com>"
$password = "password"
$url = "<https://site.sharepoint.com>"
$securePassword = ConvertTo-SecureString $Password -AsPlainText -Force

# the path here might need to change if you use the SharePoint Server Client Components SDK in a different location.
Add-Type -Path "$env:CommonProgramFiles\microsoft shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "$env:CommonProgramFiles\microsoft shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"

# connect/authenticate to SharePoint Online and get ClientContext object.
$clientContext = New-Object Microsoft.SharePoint.Client.ClientContext($url)
$credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($username, $securePassword)
$clientContext.Credentials = $credentials
if (!$clientContext.ServerObjectIsNull.Value)
{
    Write-Host "Connected to SharePoint Online site: '$Url'" -ForegroundColor Green
}

# Get user
$user = $clientContext.Web.SiteUsers.GetByLoginName("i:0#.f|membership|user@company.sharepoint.com")

# Redact user
$user.Email = "Redacted"
$user.Title = "Redacted"
$user.Update()
$clientContext.Load($user)
$clientContext.ExecuteQuery()

# Get users
$users = $clientContext.Web.SiteUsers

# Remove user from site
$users.RemoveById($user.Id)
$clientContext.Load($users)
$clientContext.ExecuteQuery()