Ajouter des utilisateurs à Oracle

Les administrateurs de bases de données Oracle créent des comptes utilisateurs dans l’instance Oracle et leur affectent du stockage (tablespaces) et des privilèges.

L’administrateur de base de données (utilisateur sys) peut utiliser des outils Oracle pour créer des utilisateurs et un tablespace par défaut pour l’utilisateur, et accorder des privilèges pour créer des objets de base de données.

L’administrateur de base de données peut également utiliser l’outil de géotraitement Create Database User (Créer un utilisateur de base de données) dans ArcGIS Pro ou appeler la fonction management.CreateDatabaseUser ArcPy dans un script Python pour créer un utilisateur qui possède des données.

Les utilisateurs de base de données créés avec cet outil ou cette fonction détiennent les privilèges suivants :

  • CREATE SESSION
  • CREATE SEQUENCE
  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW
  • SELECT ON DBA_ROLES

Utiliser le géotraitement pour ajouter un utilisateur qui peut créer des objets de base de données

Vous pouvez exécuter l’outil Create Database User (Créer un utilisateur de base de données) à partir de ArcGIS Pro ou appeler la fonction management.CreateDatabaseUser ArcPy dans un script Python pour créer un utilisateur de base de données pouvant créer des tables, des classes d’entités, des vues, des déclencheurs et des séquences.

Vous devez être connecté à la base de données en tant qu’utilisateur sys Oracle pour exécuter l’outil Create Database User (Créer un utilisateur de base de données) ou la fonction management.CreateDatabaseUser.

Utiliser l’outil Créer un utilisateur de base de données

Pour créer un utilisateur de base de données dans Oracle à l’aide de l’outil Créer un utilisateur de base de données, procédez comme suit :

  1. Démarrez ArcGIS Pro.
  2. Connectez-vous à la base de données ou la géodatabase en tant qu’utilisateur système Oracle.
  3. Ouvrez l’outil Créer un utilisateur de base de données.

    Il se trouve dans le jeu d’outils Administration de géodatabase de la boîte à outils Gestion des données.

  4. Identifiez la connexion à la base de données pour la Connexion à la base de données en entrée.
  5. Attribuez un nom à l’utilisateur et à la structure que l’outil va créer.
  6. Fournissez un mot de passe pour l’utilisateur de base de données.
  7. Si vous disposez déjà d’un rôle auquel vous souhaitez ajouter cet utilisateur en tant que membre, indiquez le rôle.
  8. Fournissez le nom du tablespace par défaut de l’utilisateur.

    Si le tablespace n’existe pas déjà, il sera créé par l’outil dans l’emplacement de stockage par défaut de Oracle. L'outil crée un tablespace de 400 Mo.

    Si vous ne spécifiez aucun tablespace, le tablespace par défaut de Oracle est utilisé.

  9. Cliquez sur Run (Exécuter).

La base de données compte désormais un utilisateur qui peut créer des tables, des classes d’entités et des vues.

Le nouvel utilisateur peut se connecter à la base de données et créer des jeux de données. Le propriétaire des données peut accorder à d’autres utilisateurs des privilèges sur les jeux de données une fois que ceux-ci ont été créés. Pour obtenir des instructions, reportez-vous à la rubrique Octroyer et supprimer des privilèges sur le jeu de données dans des bases de données et des géodatabases d’entreprise.

Exécuter un script Python

Pour générer un script de création d’utilisateur, procédez comme suit :

  1. Créez un fichier texte sur l’ordinateur d’un client ArcGIS, puis copiez-y un des blocs de code suivants.

    Modifiez le code pour utiliser les informations spécifiques de votre site.

    Les exemples supposent que vous disposez d’un fichier de connexion à une base de données existant qui vous permet de vous connecter en tant qu’utilisateur sys Oracle. Si vous ne disposez pas d’un fichier de connexion, créez-en un avant d’exécuter le script.

    # Name: createdatabaseuser_exampleW.py
    # Description: Uses existing database connection file
    # on a Windows computer to create a database user in Oracle.
    
    # Import arcpy module
    import arcpy
     
    # Provide a database connection file for the Oracle sys user.
    connection = "C:\\ArcGIS\connection_files\<Connection file>.sde"
    
    # Process: Create database user that can create data and a default tablespace for the user.
    arcpy.CreateDatabaseUser_management(connection, "DATABASE_USER", "dbuser", "t3mpor@rypL@ceholder1", "usertbsp")
    # Name: createdatabaseuser_exampleL.py
    # Description: Uses existing database connection file
    # on a Linux computer to create a database user in Oracle.
    
    # Import arcpy module
    import arcpy
     
    # Provide a database connection file for the Oracle sys user.
    connection = "<user>/connections/<Connection_file>.sde"
    
    # Process: Create database user that can create data and a default tablespace for the user.
    arcpy.CreateDatabaseUser_management(connection, "DATABASE_USER", "dbuser", "t3mpor@rypL@ceholder1", "usertbsp")

  2. Enregistrez le fichier avec l’extension .py.
  3. Exécutez le script à partir d’un ordinateur sur lequel ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server est installé.

    Pour plus d’informations sur l’exécution de Python à partir d’une machine ArcGIS Server, reportez-vous à la rubrique ArcGIS Server et ArcPy.

La base de données compte désormais un utilisateur qui peut créer des tables, des classes d’entités et des vues.

Le nouvel utilisateur peut se connecter à la base de données et créer des jeux de données. Le propriétaire des données peut accorder à d’autres utilisateurs des privilèges sur les jeux de données une fois que ceux-ci ont été créés. Pour obtenir des instructions, reportez-vous à la rubrique Octroyer et supprimer des privilèges sur le jeu de données dans des bases de données et des géodatabases d’entreprise.

Créer des utilisateurs avec des outils Oracle

Vous pouvez également utiliser les outils Oracle pour créer des utilisateurs de bases de données. Par exemple, vous pouvez créer un utilisateur de base de données doté de privilèges différents de ceux qui ont été octroyés par l’outil Créer un utilisateur de base de données ou auquel aucun privilège n’a été accordé directement.

Vous trouverez des instructions d’utilisation des outils Oracle pour créer des utilisateurs de bases de données dans la documentation Oracle.

Pour obtenir des informations sur les privilèges requis selon les différents types d’utilisateurs, reportez-vous à la rubrique Privilèges pour les géodatabases dans Oracle ou à la rubrique Privilèges pour l’utilisation d’ArcGIS avec une base de données Oracle.