Les géodatabases sont des ensembles de tables, de vues, de fonctions et de procédures stockées figurant à l’intérieur d’une base de données. Dans les géodatabases d’une base de données Microsoft SQL Server, cet ensemble d’objets peut être la propriété d’un utilisateur de base de données nommé sde ou d’un utilisateur de base de données dbo. L’utilisateur qui possède la géodatabase est considéré comme l’administrateur de géodatabase. Étant donné que les noms d’utilisateur et de structure doivent correspondre dans une géodatabase, les géodatabases appartenant à l’utilisateur sde sont appelées géodatabases de structure sde et les géodatabases détenues par dbo sont désignées comme des géodatabases de structure dbo.
L’identifiant utilisé pour la connexion lors de la création de la géodatabase détermine l’identité de l’utilisateur de base de données auquel appartiendra la géodatabase. Si l’identifiant du système d’exploitation ou l’identifiant SQL Server utilisé pour la connexion est apparié à l’utilisateur dbo dans la base de données, une géodatabase de schéma dbo est créée. Si l’identifiant du système d’exploitation ou l’identifiant SQL Server est apparié à un utilisateur appelé sde dans la base de données, une géodatabase de structure sde est créée.
Utilisateur sde
Dans une base de données, l’utilisateur sde peut être associé à un identifiant SQL Server, un identifiant authentifié ou encore un identifiant authentifié par le système d’exploitation. L’utilisateur sde doit avoir la haute main sur une structure appelée sde, qui doit correspondre à la structure par défaut de l’utilisateur sde. Dans la base de données, cet utilisateur doit bénéficier de privilèges lui permettant de créer et d'administrer la géodatabase.
Utilisateur dbo
L’utilisateur dbo et la structure par défaut associée sont créés automatiquement dans toutes les bases de données. Les identifiants peuvent correspondre à dbo dans une base de données. Il existe deux méthodes :
- via la création ou l'association d'un utilisateur à une base de données spécifique, en tant que propriétaire ;
- via l'association d'un utilisateur au rôle de serveur fixe sysadmin, en tant que membre.
Les identifiants appariés à l’utilisateur dbo dans une base de données spécifique bénéficient des privilèges les plus élevés au sein de cette base de données. Ces privilèges sont suffisants pour la création et l’administration de la géodatabase. Les identifiants appariés à l’utilisateur dbo dans une base de données spécifique ne bénéficient d’aucun privilège avancé dans l’instance SQL Server ou d’autres bases de données, sauf si ces privilèges sont accordés de manière explicite à l’identifiant.
Les identifiants relatifs à des membres du rôle de serveur fixe sysadmin sont appariés à dbo dans chaque base de données sur l’instance SQL Server ; ils bénéficient des privilèges les plus élevés dans l’ensemble de l’instance SQL Server. Ces privilèges permettent la création et l'administration de la géodatabase, ainsi que la création, la modification, la suppression et l'administration d'autres éléments sécurisables au sein de l'instance.
Tous les objets de base de données appartenant à l’utilisateur dbo sont stockés dans le schéma dbo.
Identification de l'utilisateur auquel la géodatabase doit appartenir
Il n’y a aucune différence en termes de performances ou de fonctionnalité entre les deux types de schéma de géodatabase. Chacun d’eux possède ses avantages et ses inconvénients. Sélectionnez l'utilisateur (et, partant, la structure) correspondant le mieux au système et au modèle de sécurité adopté.
Voici une comparaison des deux types de structure, selon le type d'authentification utilisé :
Structure | Authentification | Avantages | Inconvénients |
---|---|---|---|
Dbo (membre du groupe sysadmin) | Identifiant du système d’exploitation ou identifiant SQL Server |
|
|
Dbo (apparié à dbo dans une base de données spécifique) | Identifiant du système d’exploitation ou identifiant SQL Server |
|
|
ArcSDE | Identifiant de connexion SQL Server |
|
|
ArcSDE | Identifiant de connexion du système d’exploitation |
|
|
*La plupart des identifiants de connexion du système d’exploitation (notamment les identifiants de domaine) appartiennent à une personne spécifique. Cette personne utilise l’identifiant pour se connecter à son ordinateur et accéder aux applications, notamment à SQL Server. De ce fait, cette personne accède systématiquement à la géodatabase en tant qu’utilisateur sde. Si la même personne fait office d’administrateur de géodatabase et crée les données de la géodatabase, vous pouvez être amené à créer un autre identifiant de système d’exploitation et l’associer à un autre utilisateur détenant moins de privilège dans la base de données afin d’attribuer deux identifiants à cette personne. Cela signifie que la personne doit passer d’un identifiant à l’autre sur l’ordinateur selon la tâche qu’elle souhaite réaliser dans la géodatabase. De nombreux sites préfèrent ne pas créer plusieurs identifiants pour une même personne afin d’éviter les risques de sécurité que cela implique et de ne pas compliquer outre mesure la gestion des identifiants. Pour ces raisons, un utilisateur sde authentifié par le système d’exploitation n’est pas une solution adéquate si la même personne joue plusieurs rôles dans la géodatabase.