Privilèges pour les géodatabases dans PostgreSQL

Les privilèges déterminent les opérations qu'une personne est autorisée à réaliser avec les données et la base de données. Les privilèges doivent être attribués selon le type de travail que la personne effectue au sein de l'organisation. Cette personne a-t-elle un rôle dans l'administration de la géodatabase ? Cette personne doit-elle modifier ou créer des données ? Ou cette personne a-t-elle seulement besoin d'effectuer des requêtes sur les données ?

Les privilèges utilisateur sont définis à divers niveaux et pour des finalités différentes. La première section ci-dessous présente les privilèges de base de données et de jeux de données requis minimaux pour les types courants d’utilisateurs : utilisateurs dotés du rôle de consultation des données, éditeurs de données, créateurs de données et administrateur de géodatabase. La deuxième section répertorie les privilèges requis par l’administrateur de géodatabase pour créer et mettre à niveau une géodatabase dans PostgreSQL. La dernière section propose des liens vers les informations concernant des privilèges éventuellement requis.

Les utilisateurs de base de données individuels dans PostgreSQL sont connus sous le nom de rôles de connexion. Pour regrouper des rôles de connexion en fonction des tâches courantes effectuées par les utilisateurs, vous pouvez créer des rôles de groupe, ajouter les rôles de connexion aux rôles de groupe, puis attribuer des privilèges aux rôles de groupe.

Remarque :

Les privilèges de base de données CONNECT et TEMPORARY sont accordés par défaut au rôle de groupe public. Si vous révoquez ces privilèges du rôle de groupe public, vous devez accorder explicitement les privilèges CONNECT et TEMPORARY sur les bases de données à des rôles de connexion ou de groupe spécifiques.

Vous pouvez utiliser l’une des applications d’administration qui se connectent aux bases de données PostgreSQL, telles que pgAdmin, pour gérer les privilèges utilisateur. ou vous pouvez utiliser les instructions SQL pour accorder et révoquer des privilèges.

Les privilèges sur les jeux de données de géodatabases doivent être octroyés ou révoqués à l’aide d’ArcGIS. Le propriétaire du jeu de données doit se charger de cette opération.

Les privilèges présentés dans cette page s’appliquent aux rôles de connexion dans PostgreSQL et aux PostgreSQL qu’ArcGIS prend en charge.

Privilèges minimaux

La table suivante répertorie les privilèges à accorder à chacun des trois groupes communs : utilisateurs dotés du rôle de consultation des données, éditeurs de données et créateurs de données et les privilèges nécessaires à l’administrateur de géodatabase (le rôle de connexion sde) pour effectuer ses opérations quotidiennes.

Type d’utilisateurPrivilèges requisObjet

Visualiseur de données

Accordez USAGE sur la structure sde.

Ce privilège permet d’accéder à la géodatabase.

Accordez USAGE sur toutes les autres structures contenant des données auxquelles les utilisateurs dotés du rôle de consultation des données ont besoin d’accéder.

Ce privilège permet d’accéder aux données dans différentes structures.

Si la base de données utilise le type géométrique PostGIS pour le stockage des données spatiales, les rôles requièrent le privilège SELECT dans la table spatial_ref_sys et la vue geometry_columns PostGIS.

Ce privilège est requis pour accéder aux données géométriques PostGIS.

Si la base de données utilise le type géographique PostGIS pour le stockage des données spatiales, les rôles requièrent le privilège SELECT dans la table spatial_ref_sys et la vue geography_columns PostGIS.

Ce privilège est requis pour accéder aux données géographiques PostGIS.

Accordez SELECT sur des jeux de données spécifiques.

Le propriétaire des données doit accorder les privilèges SELECT sur les tables et les classes d’entités d’une géodatabase aux utilisateurs dotés du rôle de consultation des données de telle sorte qu’ils puissent accéder aux données.

Editeur de données

Les éditeurs de données nécessitent les mêmes privilèges que les visualiseurs de données, plus ces privilèges supplémentaires.

INSERT, UPDATE, DELETE sur les tables d’autres utilisateurs

Lorsque vous utilisez ArcGIS pour accorder les privilèges SELECT, INSERT, UPDATE et DELETE sur une table ou une classe d’entités inscrite pour le versionnement traditionnel, ces privilèges sont automatiquement accordés sur la vue versionnée associée. Pour effectuer une mise à jour avec une vue versionnée et SQL, l’utilisateur doit détenir ces privilèges.

Les propriétaires des données doivent accorder aux éditeurs les privilèges requis pour la mise à jour des données dans une géodatabase.

Créateur de données

Les créateurs de données requièrent les mêmes privilèges que les visualiseurs de données, plus le privilège supplémentaire ci-après.

Chaque rôle de connexion qui crée des données requiert le privilège AUTHORIZATION sur sa propre structure. Notez que le nom de la structure doit correspondre au nom du rôle de connexion et que les rôles de groupe ne peuvent pas partager une structure.

Le fait d’accorder le privilège AUTHORIZATION sur la structure des utilisateurs garantit que tous les objets créés dans le schéma sont possédés par cet utilisateur.

Administrateur de géodatabase (rôle de connexion sde)

Le privilège AUTHORIZATION sur sa propre structure nommée sde.

Le rôle de connexion sde requiert le privilège USAGE sur toutes les autres structures d’utilisateur.

Les tables systèmes, les fonctions et les procédures de la géodatabase sont stockées dans la structure sde.

Le privilège USAGE sur les autres structures d’utilisateur est requis pour que l’utilisateur sde puisse compresser et mettre à niveau la géodatabase.

Table des privilèges PostgreSQL

Privilèges requis pour créer ou mettre à niveau une géodatabase

Les privilèges requis par la connexion sde pour créer ou mettre à niveau une géodatabase sont décrits dans la table suivante. La table répertorie les privilèges pour chaque type d’implémentation PostgreSQL prise en charge par ArcGIS.

Créer une géodatabaseMettre à niveau une géodatabaseRemarques
PostgreSQL

Login

Statut de superuser

Statut de Superuser

Permet d’accéder à toutes les autres structures d’utilisateur et dispose du privilège SELECT sur tous les jeux de données de la géodatabase.

Si vous ne souhaitez pas que l’utilisateur sde supprime des connexions, vous pouvez révoquer le statut de superuser de sde après la création ou la mise à niveau de la géodatabase.

Amazon Relational Database Service (RDS) for PostgreSQL

Login

Statut de rds_superuser

Login

Statut de rds_superuser

L’utilisateur sde doit également se voir accorder tous les rôles possédant des données dans la géodatabase.

Par exemple, si les rôles gisdata1 et gisdata2 possèdent des données dans la géodatabase, vous devez accorder ces rôles à sde avant de procéder à la mise à niveau.

grant gisdata1 to sde;

grant gisdata2 to sde;

Révoquez les rôles de sde une fois la géodatabase mise à niveau.

Vous pouvez révoquer rds_superuser de sde une fois que l’utilisateur sde a créé ou mis à niveau la géodatabase.

Amazon Aurora (PostgreSQL-compatible edition)

Login

Statut de rds_superuser

Login

Statut de rds_superuser

Vous pouvez révoquer rds_superuser de sde une fois que l’utilisateur sde a créé ou mis à niveau la géodatabase.

Microsoft Azure Database for PostgreSQL

Login

GRANT azure_pg_admin TO sde;

Login

GRANT azure_pg_admin TO sde;

Vous pouvez révoquer azure_pg_admin de sde une fois que l’utilisateur sde a créé ou mis à niveau la géodatabase.

Google Cloud SQL for PostgreSQL

L’utilisateur sde doit obtenir le privilège cloudsqlsuperuser.

L’utilisateur sde doit obtenir le privilège cloudsqlsuperuser.

Vous pouvez révoquer cloudsqlsuperuser de sde une fois que l’utilisateur sde a créé ou mis à niveau la géodatabase.

Autres privilèges

Les privilèges suivants sont des privilèges supplémentaires requis pour réaliser d’autres tâches administratives facultatives dans ArcGIS :