Le concept de sécurité lié aux comptes est très clair: ne donner que les droits requis pour l'accomplissement d'une tâche et aucun de plus. Ce concept doit s'appliquer aux comptes d'utilisateurs humains mais aussi aux comptes de services.
Les comptes de services de SharePoint 2010 n'échappent pas à ce concept. Cet article décrit les comptes requis et quels sont les droits à leurs attribuer pour optimiser la sécurité d'une ferme de serveur SharePoint 2010.
Le compte d'installation
Le premier compte à créer sera celui permettant l'installation de SharePoint. Nous l'appelerons spAdmin au cours de l'article. Ce compte devra être un compte de domaine et devra être ajouté au groupe Administrators local de chaque serveur SharePoint de la ferme.
Vous ne devrez pas installer SharePoint avec votre compte administratif, spAdmin doit devenir le propriétaire de la ferme SharePoint et des bases de données de configuration. Il existe de nombreux endroits où le compte qui installe et configure le produit est intégré, c'est pourquoi il est important d'avoir un compte dédié (et lié) à la ferme et que celui ci ne corresponde pas à un utilisateur unique. Et parceque ce compte n'est pas lié à un utilisateur spécifique, il ne doit avoir aucun droit en dehors de la ferme SharePoint.
spAdmin ne devra avoir aucun droit administratifs sur le serveur SQL si celui-ci est situé sur une machine (physique ou virtuelle) séparée. Malgré ceci, il devra avoir des droits d'accès car lors de l'installation et de la configuration, le processus utilise les informations du compte l'exécutant, soit spAdmin, pour créer la base de données et les logins SQL. Il faut donc, avant la configuration de SharePoint, attribuer les rôles securityadmin et dbcreator au compte spAdmin sur le serveur SQL.
Le compte de service SQL Server
Ce second compte sera utilisé par les services SQL, appelé spSQL au cours de l'article, il sera utilisé pour l'exécution des services SQL Server et SQL Server Agent. Comme pour le compte spAdmin, le compte spSQL doit être un compte de domaine afin que sa gestion soit centralisée. En aucun cas, spSQL doit avoir des permissions spécifiques au niveau du domaine, les droits requis lui seront attribués localement au serveur SQL lors de l'installation de SQL Server.
Le compte d'administration de la ferme
Ce compte a pour but de vous donner accès aux données depuis les serveurs de la ferme SharePoint mais c'est aussi avec ce compte que seront exécutés les processus SharePoint de la ferme. Nous nommerons ce compte spFarm pour la suite. Bien entendu, spFarm doit être un compte de domaine. Ce compte, à spécifier lors de la configuration de SharePoint, obtiendra la propriété de la base de données de configuration par le biais du compte qui s'occupe de l'installation: spAdmin. L'assistant configure également de nombreux services Windows avec ce compte comme le service Timer mais aussi l'administration centrale. Cela signifie que tout ce qui sera fait dans l'administration centrale, le sera sous le compte spFarm. Cela signifie aussi que le compte spFarm doit posséder des privilèges administratifs.
spFarm doit faire partie du groupe Administrators local à chacun des serveurs de la ferme, cet ajout doit ce faire manuellement avant l'installation de SharePoint sur le serveur. Tous les autres privilèges requis par le compte spFarm sont assignés automatiquement lors de la configuration par l'assistant avec notamment l'attribution du rôle dbcreator sur le serveur SQL pour permettre la création future des bases de données de contenu des applications Web. En effet c'est le compte qui exécute le pool d'application de l'administration centrale, c'est à dire spFarm, qui effectue la création des bases de données lors de la création d'applications Web. Le rôle securityadmin est également accordé à spFarm sur le serveur SQL de manière à ce que celui ci puisse créer des comptes SQL lors de l'attributionde comptes spécifiques pour les pool d'applications des applications Web. Le dernier rôle qui lui est attribué sur le serveur SQL est db_owner pour toutes les bases de données de la ferme SharePoint ce qui fait de spFarm le véritable propriétaire, non humain, de la ferme SharePoint.