Pour assurer un audit efficace des permissions SharePoint, il est important de commencer par comprendre les principes du modèle d’habilitations.
Vue d’ensemble
Avant d’aller dans les aspects détaillés, l’illustration ci-dessous propose une vision globale du fonctionnement des droits dans SharePoint. D’une façon générale, et par défaut, les droits sont hérités au sein de la collection de sites (du site parent vers les sous-sites, et des sites vers les composants ou librairies). Par ailleurs, des ruptures d’héritage sont possibles à n’importe quel niveau de cette hiérarchie. Le simple fait, par exemple, de donner un accès à une personne spécifique sur un dossier aura pour conséquence de « casser » l’héritage des droits à partir de ce dossier.
Premier principe : les permissions SharePoint sont héritées au sein de la « collection de sites »
Le modèle de permission démarre avec la notion de collection de sites. Une collection de sites est composée d’un site parent et d’un ensemble de sous-sites.
Par défaut les droits sont hérités depuis le site parents vers l’ensemble des sous-sites. On peut représenter une collection de sites avec le schéma suivant :
Second principe : l’héritage au sein du site des permissions SharePoint
Au-delà de l’héritage du site parent vers les sous-sites, chaque site est lui-même constitué d’un ensemble de composants. Ces composants peuvent-être des listes, des librairies de documents, …
Au sein de librairies de documents, il y a également un héritage du dossier parent vers les dossiers enfants, comme illustré ci-dessous :
Troisième principe : la rupture d’héritage.
Dès lors que vous habilitez une personne sur un site, une liste, un dossier (…), une rupture est créée dans l’héritage des permissions SharePoint.
Par exemple, si un utilisateur autorisé partage du contenu avec une autre personne (ou avec un groupe), les droits seront modifiés, et une rupture d’héritage sera créée :
Dans le cas ci-dessus, un nouvel utilisateur sera ajouté directement au niveau d’un dossier.
Pour contrôler les droits accordés aux utilisateurs de SharePoint, vous devez être en mesure de détecter toutes les ruptures d’héritage et de traquer les droits individuels positionnés.
Les niveaux d’accès par défaut dans les permissions SharePoint
Des niveaux d’accès par défaut sont définis dans SharePoint. Ils sont consultables directement depuis les pages d’administration de vos sites :

Néanmoins, et comme le suggère la capture d’écran ci-dessus : les niveaux d’accès peuvent être personnalisés. Suivant la politique en place dans votre organisation, il peut être pertinent de prévoir une extraction des différents niveaux d’autorisation existant dans votre organisation et des droits réels qui y sont associés.
L’utilisation des groupes SharePoint
Les niveaux d’autorisation, décrits jusqu’ici, peuvent être attribués à n’importe quels utilisateurs, groupes AD ou groupes SharePoint.
Par défaut, lorsque vous créez un site SharePoint, vous avez le choix entre utiliser un nouveau jeu de permissions, ou faire hériter ces permissions depuis le site parent :

Dans le cas où vous sélectionnez un nouveau jeu de permissions SharePoint, des groupes par défaut sont créés pour le site. Dans le cas de la création du site « AERAS Documents » ci-dessus, des groupes SharePoint sont mis en place par défaut :

Une bonne pratique consiste à utiliser les groupes SharePoint pour assigner les droits aux utilisateurs finaux. On pourrait penser, pour auditer les permissions d’un site, qu’il suffit d’analyser les membres de ces groupes SharePoint pour avoir une bonne vue d’ensemble. Si l’approche peut sembler pertinente pour un premier état des lieux, dans le cas d’un audit et d’une analyse précise, cela ne saurait être suffisant, pour les raisons suivantes :
1. N’importe quel utilisateur peut être habilité en direct sur n’importe quel composant du site (en dehors de tout groupe). Cette pratique est généralement à éviter, et il est recommandé dans ce cas d’être en mesure d’identifier ces cas
2. N’importe quel groupe Active Directory peut être habilité sur un des sous-composants du site
3. N’importe quel autre groupe de la collection de site peut avoir des autorisations sur votre site.
Sur ce troisième point, ce n’est pas une évidence, mais la portée d’un groupe concerne toute la collection de site. Par exemple, si vous possédez un site pour les développeurs nommé « DEV_PRJ » et un autre pour la gestion des documents AERAS « AERAS Documents », vous pouvez visualiser l’ensemble des groupes dans la « Collection de sites ».

Bien qu’il soit créé avec des permissions SharePoint par défaut (qui correspondent à leur description), rien n’empêche d’attribuer les permission « Full Control » à tout autre groupe de la collection de sites. Ci-dessous, la liste des permissions du site « AERAS Documents » dans lequel le groupe « DEV_PRJ Visitors » s’est vu attribuer le niveau « Full Control » (par erreur ou acte de malveillance volontaire) :

Aussi, si vous voulez garantir la confidentialité des données de vos sites SharePoint, vous devez vous assurer de pouvoir cartographier et traquer ces autorisations inappropriées pour une meilleure gouvernance de vos accès.
Votre organisation a probablement de multiples sites et collection de sites. Il est inenvisageable d’aller chercher « à la main » et « en fouillant » dans les interfaces de SharePoint l’ensemble des autorisations inadéquates pour chaque site, chaque composant, chaque sous-dossier. Pour nous, il est préférable, voire nécessaire, de s’équiper d’outils qui vous permettront de lister l’ensemble des autorisations, des ruptures d’héritages et des droits réels des utilisateurs sur l’ensemble de vos données.
Il ne faut négliger aucun aspect des points cités dans cet article, et en en particulier concernant les groupes : ne vous contentez pas de les analyser par leur description. Vérifiez la portée réelle des permissions de vos groupes SharePoint et industrialisez le processus de vérification.
En caricaturant sur notre exemple : ne laisser pas le groupe « Visiteurs » du site « Développeur » prendre le contrôle de vos données les plus confidentielles !
Votre check-list pour auditer les permissions dans SharePoint et assurer la bonne gouvernance des accès :
Pour assurer un bon niveau d’audit des permissions SharePoint :
- Vous devez extraire les permissions sur l’ensemble des sites et des sous-sites
- Ne vous limitez pas au groupes SharePoint et à leurs membres : vérifiez la portée des droits donnés à chacun des groupes SharePoint
- Identifiez les accès donnés en direct à des utilisateurs sur des répertoires ou des documents
- Détectez l’ensemble des ruptures d’héritage des permissions au sein de vos sites Et pour garantir une gouvernance plus large des identités et des accès :
- Croisez ces informations avec votre Active Directory ou autre annuaire LDAP assurant l’authentification des utilisateurs dans SharePoint
- Consolidez les informations d’habilitation au sein d’un modèle plus large couvrant l’ensemble des permissions dans les applications et systèmes de votre SI.
- Identifiez les propriétaires, et assurez une recertification des accès par les propriétaires de site ou de dossier suivant votre stratégie d’entreprise. Avec un modèle de données personnalisé et adapté à l’analyse des droits de votre SI, et en automatisant votre processus de révision des droits, vous garantissez une gouvernance solide de vos identités et de vos accès.
|