Privilèges utilisateur pour les géodatabases dans Oracle
Des privilèges spécifiques doivent être accordés aux utilisateurs en fonction des opérations qu'ils doivent effectuer dans la base de données Oracle. Certains privilèges peuvent être accordés aux rôles, mais d'autres doivent être accordés directement à l'utilisateur.
La première section de cette rubrique présente les privilèges des paquetages qui sont requis pour tous les utilisateurs. Ces privilèges doivent être accordés au rôle public pour la création et la mise à niveau des géodatabases. Toutefois, ils peuvent être accordés à tous les utilisateurs individuels après la création ou la mise à niveau des géodatabases si vous souhaitez les révoquer du rôle public.
La deuxième section présente les privilèges de base de données requis minimaux pour les types courants d'utilisateurs : visualiseurs de données, éditeurs de données, créateurs de données et administrateur de géodatabase. Ces privilèges sont requis en plus de ceux répertoriés dans la première section.
La troisième section présente les privilèges requis par l'administrateur de géodatabase pour créer ou mettre à niveau une géodatabase. Ces privilèges sont également requis en plus de ceux répertoriés dans la première section.
La dernière section répertorie les privilèges généralement accordés aux utilisateurs des géodatabases dans Oracle.
Vous pouvez utiliser Enterprise Manager pour Oracle pour gérer les privilèges utilisateur. Vous pouvez aussi utiliser les instructions SQL pour accorder et révoquer des privilèges.
Privilèges des paquetages
Des privilèges d'exécution sont requis sur les paquetages suivants :
- dbms_lob
- dbms_lock
- dbms_pipe
- dbms_utility
- dbms_sql
- utl_raw
Vous devez accorder le privilège d'exécution sur ces paquetages au rôle public pour créer ou mettre à niveau la géodatabase.
GRANT EXECUTE ON dbms_pipe TO public;
GRANT EXECUTE ON dbms_lock TO public;
GRANT EXECUTE ON dbms_lob TO public;
GRANT EXECUTE ON dbms_utility TO public;
GRANT EXECUTE ON dbms_sql TO public;
GRANT EXECUTE ON utl_raw TO public;
Les privilèges d'exécution sur dbms_utility, dbms_sql et utl_raw sont accordés par défaut au rôle public dans Oracle. Vous devez par conséquent uniquement accorder le privilège EXECUTE sur ces paquetages si vous les avez explicitement révoqués du rôle public.
Après avoir créé ou mis à niveau la géodatabase, vous pouvez restreindre les privilèges sur ces paquetages en les révoquant du rôle public et en les accordant à chaque utilisateur individuel qui se connecte à la géodatabase, y compris l'administrateur de géodatabase.
Vous ne pouvez pas accorder le privilège d'exécution à un rôle, puis accorder le rôle à tous les utilisateurs, car les privilèges accordés par le biais des rôles d'utilisateur ne s'appliquent pas lors de l'exécution de paquetages Oracle.
Après avoir accordé le privilège d'exécution aux utilisateurs, recompilez la structure sde :
EXEC dbms_utility.compile_schema( 'SDE' );
Privilèges minimaux
En plus de ceux indiqués dans la section précédente, les privilèges suivants sont requis pour chaque type d'utilisateur répertorié :
Type d'utilisateur |
Privilèges de base de données |
Privilèges de jeu de données |
Remarques |
---|---|---|---|
Visualiseur de données |
|
SELECT sur les objets de base de données |
Si votre base de données est configurée pour utiliser des tables de fichiers journaux ArcSDE partagés (par défaut), des privilèges supplémentaires peuvent être nécessaires. Pour plus d'informations, reportez-vous à la rubrique Options de configuration des tables de fichiers journaux ArcSDE pour Oracle. |
Editeur de données |
|
SELECT, INSERT, UPDATE, et DELETE sur les jeux de données d'autres utilisateurs |
Si votre géodatabase utilise des tables de fichiers journaux ArcSDE partagés (par défaut), des privilèges supplémentaires peuvent être nécessaires. Pour plus d'informations, reportez-vous à la rubrique Options de configuration des tables de fichiers journaux ArcSDE pour Oracle. Si l'utilisateur prévoie de mettre à jour des données versionnées via une vue versionnée, il doit également obtenir les privilèges SELECT, INSERT, UPDATE et DELETE sur la vue versionnée. Lorsque vous utilisez la boîte de dialogue Privilèges dans ArcGIS pour accorder les privilèges SELECT, INSERT, UPDATE et DELETE sur une classe d'entités versionnée, ces privilèges sont automatiquement accordés sur la vue versionnée associée. |
Créateur de données |
|
||
Administrateur de géodatabases |
|
Depuis la version 2 d'Oracle 10g, l'accès à ORACLE_HOME est plus restreint, afin d'améliorer la sécurité. Pour permettre à l'administrateur de géodatabase d'accéder aux fichiers dans ORACLE_HOME sans accorder de privilèges supérieurs à l'administrateur de géodatabase, installez un client Oracle compatible sous le compte SDE du système d'exploitation. Sous UNIX/Linux, définissez le client ORACLE_HOME dans le shell de l'utilisateur SDE. Consultez l'article de la base de connaissances 34824 pour plus d'informations.
Privilèges requis pour la création ou la mise à niveau des géodatabases
Les tableaux suivants répertorient les privilèges qui doivent être accordés à l'administrateur de géodatabase pour créer ou mettre à niveau une géodatabase ArcSDE. La raison pour laquelle le privilège ou le groupe de privilèges est exigé est également spécifiée dans la liste. Certains de ces privilèges peuvent être révoqués après la création ou la mise à niveau, comme noté dans le champ Objectif et comme indiqué dans les privilèges minimaux d'administrateur de géodatabase présentés dans le tableau précédent.
Le premier tableau présente les privilèges dont l'utilisateur SDE a besoin pour créer une géodatabase dans la structure de l'utilisateur SDE. Il s'agit de la géodatabase SDE principale.
Le deuxième tableau répertorie les privilèges dont l'utilisateur SDE a besoin pour mettre à niveau la géodatabase SDE principale.
Le troisième tableau indique les privilèges dont un utilisateur autre que SDE a besoin pour créer une géodatabase dans sa structure. Ces géodatabases sont appelées géodatabases de structure utilisateur.
Le quatrième tableau répertorie les privilèges dont un utilisateur autre que SDE a besoin pour mettre à niveau une géodatabase de structure utilisateur.
Les privilèges sont regroupés selon leur objectif au cours de la création et de la mise à niveau de la géodatabase.
Privilège |
Objet |
---|---|
|
Se connecter à Oracle. |
|
Créez le référentiel de géodatabase. |
|
Créer des séquences pour générer des ID. Ce privilège peut être révoqué après la création de la géodatabase. |
|
Créez des paquetages pour la conservation du contenu des tables système de géodatabase. |
| Permet de créer une fonction membre de carte pour le type ST_Geometry, qui est appelée à chaque fois qu'une union spatiale ou une intersection est effectuée. |
|
Créer les types de données définis par l'utilisateur ST_Geometry et ST_Raster, ainsi que les types utilisés pour l'optimisation de requête. CREATE VIEW est requis pour créer des vues système : GDB_Items_vw et GDB_ItemRelationships_vw. Ces privilèges peuvent être révoqués après la création de la géodatabase. |
|
Permet la création de déclencheurs d'événement de base de données nécessaires pour modifier les tables ST_GEOMETRY_COLUMNS et ST_GEOMETRY_INDEX si une table avec ST_Geometry est supprimée, modifiée ou renommée à l'aide de SQL. Ce privilège peut être révoqué après la création de la géodatabase. |
Privilège |
Objet |
---|---|
|
Se connecter à Oracle. |
|
Mettez à niveau le référentiel de géodatabase. Le privilège CREATE VIEW peut être révoqué après la mise à niveau. |
|
Mettez des paquetages à niveau pour la conservation du contenu des tables système de géodatabase. |
| Mettre à niveau des séquences pour générer des ID. Ce privilège peut être révoqué après la mise à niveau. |
| Mettre à niveau une fonction membre de carte pour le type ST_Geometry, qui est appelée à chaque fois qu'une union spatiale ou une intersection est effectuée. |
|
Mettre à niveau les types de données définis par l'utilisateur ST_Geometry et ST_Raster, ainsi que les types utilisés pour l'optimisation de requête. Ces privilèges peuvent être révoqués après la mise à niveau. |
|
Mise à niveau du contenu de la géodatabase. |
|
Permet la création de déclencheurs d'événement de base de données nécessaires pour modifier les tables ST_GEOMETRY_COLUMNS et ST_GEOMETRY_INDEX si une table avec ST_Geometry est supprimée, modifiée ou renommée à l'aide de SQL. Ce privilège peut être révoqué après la mise à niveau. |
Privilège | Objet |
---|---|
| Se connecter à Oracle. |
| Créez le référentiel de géodatabase. |
| Créer des séquences pour générer des ID. Ce privilège peut être révoqué après la création de la géodatabase. |
| Créez des paquetages pour la conservation du contenu des tables système de géodatabase. |
| Créer des types utilisés pour l'optimisation de requête. |
Privilège | Objet |
---|---|
| Se connecter à Oracle. |
| Mettez à niveau le référentiel de géodatabase. |
| Mettre à niveau des séquences pour générer des ID. Ce privilège peut être révoqué après la mise à niveau. |
| Mise à niveau du contenu de la géodatabase. |
Privilèges facultatifs communs
De nombreuses organisations décident de tirer parti des fonctionnalités Oracle supplémentaires, afin d'améliorer encore davantage les capacités de leurs géodatabases. Le tableau suivant répertorie plusieurs privilèges facultatifs communs pour l'administrateur de géodatabase avec leurs objectifs. Les privilèges sont regroupés en fonction de leur objectif.
Privilège |
Objet |
---|---|
|
Activez le traçage SQL, la fonctionnalité SQL*Plus AUTOTRACE et la modification des paramètres d'initialisation spécifiques à la session pour l'optimisation et le dépannage des performances ; créez le rôle PLUSTRACE en exécutant ORACLE_HOME/sqlplus/admin/plustrce.sql. |
|
Accordé à l'administrateur de géodatabase pour lui permettre de surveiller Oracle et d'effectuer des tâches de maintenance de base. Ceci est utile pour les organisations dont l'administrateur de géodatabase n'est pas un DBA (administrateur de base de données) Oracle. |
|
Ceci est utile pour intégrer la géodatabase à d'autres bases de données non spatiales dans l'entreprise. |
|
Ce privilège permet à l'administrateur de géodatabase d'exécuter des tâches de maintenance lorsque la base de données est en ligne, mais n’est pas accessible à l'utilisateur final. |
|
Accorder ce privilège à l'administrateur de géodatabase pour l'installation et la mise à niveau garantit que l'espace de stockage est suffisant dans le tablespace de l'administrateur de géodatabase au sein de la base de données pour permettre à ce dernier d'effectuer l'installation ou la mise à niveau ; il est possible de révoquer ce privilège après l'installation ou la mise à niveau de la géodatabase, si vous avez défini des quotas pour la gestion d'espace. Reportez-vous à la rubrique Configuration de la mémoire dans Oracle pour plus d'informations sur l'utilisation de quotas de stockage. |
|
L'utilisateur SDE doit détenir ces privilèges pour supprimer les connexions à la géodatabase. L'outil Créer la géodatabase d'entreprise octroie ces privilèges à l'utilisateur SDE. Vous pouvez révoquer les privilèges de l'utilisateur SDE après avoir exécuté cet outil. Toutefois, si vous les révoquez, l'utilisateur SDE ne pourra pas déconnecter les utilisateurs de la base de données. Vous pouvez également ajouter l'utilisateur SDE au rôle DBA pour qu'il puisse déconnecter les utilisateurs de la base de données. |
Les privilèges de jeu de données doivent être accordés ou révoqués par le propriétaire du jeu de données à l'aide de la boîte de dialogue Privilèges ou de l'outil de géotraitement Modifier les privilèges qui est disponible dans ArcGIS for Desktop. Reportez-vous aux rubriques Accorder et révoquer des privilèges sur les jeux de données et Modifier les privilèges pour obtenir des instructions.