Résoudre les problèmes courants d’autorisations affinées pour SharePoint Server

 

**Sapplique à :**SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Server 2016

**Dernière rubrique modifiée :**2017-09-06

Résumé : Découvrez comment résoudre les problèmes impliquant des autorisations affinées dans SharePoint Server et SharePoint 2013.

Après l’implémentation d’autorisations affinées, un environnement SharePoint peut rencontrer des problèmes de performances ou de sécurité. Passez en revue les informations suivantes qui vous aideront à résoudre les problèmes qui peuvent être liés aux autorisations affinées.

Solutions recommandées pour les problèmes courants de performances liés aux autorisations affinées

Les exemples de problèmes suivants peuvent vous aider à réduire l’effet de problèmes de performances liés à l’utilisation intensive des autorisations affinées. Chacun des problèmes suivants traite des modifications apportées au niveau de la sécurité de l’environnement, de la hiérarchie des objets ou du code personnalisé, qui contribuent aux problèmes de performances liés aux autorisations affinées. Chaque problème démarre avec l’exemple d’environnement suivant, dans lequel un seul site web contient plusieurs bibliothèques de documents, chacune comportant de nombreux objets enfants autorisés de façon unique.

Illustrates a single Web contains multiple document libraries, each with a great many number of uniquely uniquely-permissioned child objects.

Problème 1 : Supprimer des autorisations affinées et utiliser l’application de sécurité uniquement au niveau du web

Pour redéfinir l’architecture de l’environnement afin qu’il n’ait plus besoin des autorisations affinées, un processus de nettoyage de l’environnement peut être implémenté, puis le nombre d’éléments étendus peut être ajusté afin d’améliorer l’évolutivité de l’environnement à long terme. Les recommandations suivantes décrivent le nettoyage de l’environnement et les modifications de la sécurité architecturale qui sont nécessaires pour mettre en place cette solution.

Nettoyage de sécurité de l’environnement

Lorsqu’un utilisateur est supprimé de l’étendue du niveau web, le modèle objet interne doit supprimer l’utilisateur de chaque étendue sous le niveau web. La suppression d’utilisateurs individuels dans le but d’effacer les autorisations existantes est un processus qui prend beaucoup de temps. Commencez plutôt par supprimer chaque étendue au niveau de l’élément unique pour que l’élément soit défini dans le but d’hériter des autorisations de son objet parent. Cela prend moins de temps que d’essayer d’abord de supprimer des utilisateurs, car cette technique agit sur une seule étendue de l’élément.

Important

Si le site web actuel n’est pas à la racine de la collection de sites et que le site web est ensuite défini pour hériter des autorisations de son site web parent, toutes les étendues uniques qu’il contient sont supprimées, et toutes les appartenances d’accès limité sont remplacées en même temps dans une seule boucle SQL Server.

Ilustrates permission cleanup by removing a user from the Web-level scope. When this is performed, the internal OM must remove the user from every scope below the Web level.

Une fois toutes les étendues de niveau élément supprimées, les appartenances aux étendues individuelles dans l’étendue du site web peuvent être remplacées par une ou plusieurs appartenances aux groupes afin d’autoriser l’accès.

Illustrates individual scope memberships being replaced at the Web-level scope with one or more group memberships to allow access after all item-level scopes have been removed.

Nouvelle conception de l’architecture de la sécurité environnementale

Une fois les étendues et les autorisations affinées existantes supprimées, le plan d’architecture à long terme doit consister à maintenir une étendue unique seulement au niveau du site web. Le diagramme suivant illustre quelle structure adopter pour qu’il ne reste que l’étendue au niveau du site. Le critère principal pour l’architecture consiste à ne pas disposer de trop d’éléments sur un même niveau de hiérarchie dans les bibliothèques de documents, car cela entraîne l’augmentation du temps nécessaire pour traiter les éléments dans les vues.

Résolution :

Le nombre maximal d’éléments ou de dossiers pour tous les niveaux de la hiérarchie doit être d’environ 2 000 éléments.

Illustrates the architecture how a Web-level scope should be structured.

Si des modifications supplémentaires sont nécessaires pour l’architecture, pensez à déplacer des bibliothèques de documents vers différents sites web ou collections de sites. Le nombre de bibliothèques de documents peut également être modifié pour prendre en charge plus étroitement les besoins de l’entreprise et les recommandations d’évolutivité qui sont basées sur la taxonomie ou l’audience du contenu stocké.

Problème 2 : Utiliser des autorisations affinées par les modifications de structure hiérarchique

Pour redéfinir l’architecture de l’environnement de sorte qu’il utilise toujours des autorisations affinées, mais sans engendrer trop de mises à jour ou un redimensionnement de l’étendue web unique, pensez à déplacer des bibliothèques de documents sécurisées de diverses manières vers différents sites web.

Nouvelle conception de la hiérarchie environnementale

Dans le diagramme suivant, l’architecture physique a été modifiée afin que chaque bibliothèque de documents se trouve dans un site web autorisé de façon unique. En outre, lorsque des autorisations affinées au niveau de l’élément doivent être conservées, le nombre cumulé de principaux de sécurité auxquels l’accès est accordé doit être limité à environ 2 000, même si cette limite n’est pas fixe. Par conséquent, l’appartenance efficace de chaque site web qui inclut tous les utilisateurs membres à accès limité, ne doit pas être supérieure à environ 2 000 utilisateurs. Cela empêche chaque étendue de niveau du site de devenir trop volumineuse.

Illustrates a document library that is in a uniquely- permissioned Web. The membership of each Web should not exceed 2,000 users.

Le nombre d’enfants étendus de manière unique n’est pas un problème significatif et peut évoluer vers un nombre plus élevé. Toutefois, le nombre de principes qui sont ajoutés sous la forme d’un accès limité à la chaîne d’étendues pour le premier site web autorisé de façon unique est un facteur de limitation.

Enfin, bien que n’étant pas un problème propre aux autorisations affinées, la structure de dossier doit garantir qu’aucun niveau hiérarchique unique de la bibliothèque de documents ne dépasse environ 2 000 éléments. Cette limite peut vous aider à assurer de bonnes performances des vues demandées par les utilisateurs.

Problème 3 : Utiliser des autorisations affinées par les modifications de structure de l’étendue

Pour redéfinir l’architecture de l’environnement de sorte qu’il utilise toujours des autorisations affinées, mais sans engendrer trop de mises à jour ou de redimensionnement de l’étendue web unique, pensez à utiliser un autre processus de sécurisation des éléments. Cela s’applique principalement si la cause du nombre élevé d’étendues uniques est un processus automatisé, comme un gestionnaire d’événements ou un flux de travail qui a dynamiquement modifié les autorisations de l’objet. Dans ce cas, il est recommandé de modifier le code pour tout processus qui est en cours de création d’étendues de sécurité uniques.

Nouvelle conception de modification dynamique de code de sécurité

Dans le diagramme suivant, l’architecture d’étendue a été modifiée afin que l’appartenance de l’étendue n’entraîne pas le recalcul des listes de contrôle d’accès pour le site web et la bibliothèque de documents parents. Comme mentionné précédemment, l’appartenance efficace du site web qui inclut tous les membres à accès limité ne doit pas être supérieure à 2 000 afin d’empêcher l’étendue de niveau du site de devenir trop volumineuse. Dans ce cas, en implémentant un nouveau groupe SharePoint pour stocker tous les membres qui ont des droits d’accès limité, l’étendue ne deviendra pas trop volumineuse. Lorsque les utilisateurs sont ajoutés à des étendues individuelles sous le niveau du site web à l’aide de la méthode SharePoint ServerSPRoleAssignmentCollection.AddToCurrentScopeOnly, ils peuvent également être ajoutés, par un code supplémentaire, au nouveau groupe qui a été établi comme ayant des droits d’accès limité au niveau du site web et de la bibliothèque de documents.

IIustrates scope membership which does not cause ACL recalculation at the parent document library and Web.

Résolution :

Lorsque des autorisations affinées au niveau de l’élément doivent être conservées, le nombre cumulé de principaux de sécurité auxquels l’accès sera accordé doit être limité à environ 2 000, même si cette limite n’est pas fixe. Lorsque le nombre de principaux de sécurité augmente, le recalcul des listes de contrôle d’accès binaires prend plus de temps. Si l’appartenance à une étendue est modifiée, la liste de contrôle d’accès binaire doit être recalculée. L’ajout d’utilisateurs à une étendue unique d’élément enfant entraînera la mise à jour des étendues parents avec les nouveaux membres à accès limité, même si cela ne se traduit finalement par aucune modification de l’appartenance à l’étendue parent. Dans ce cas, la liste de contrôle d’accès binaire pour les étendues parents doit également être recalculée.

Comme dans la solution précédente, le nombre d’enfants étendus de manière unique n’est pas un problème significatif et peut évoluer vers un nombre plus élevé. Le nombre de principes qui sont ajoutés sous la forme d’un accès limité à la chaîne d’étendues pour le premier site web autorisé de façon unique est un facteur de limitation.

See also

Référence des autorisations affinées pour SharePoint Server 2013
Meilleures pratiques pour l’utilisation des autorisations affinées dans SharePoint Server 2013