Gérer les infos d'identification

Vous pouvez créer des informations d'identification, répertorier des informations d'identification ou supprimer des informations d'identification dans votre instance Autonomous Database.

Création d'informations d'identification pour accéder aux services cloud

Pour accéder aux services dans le cloud, tels que la banque d'objets cloud, vous devez d'abord créer des informations d'identification dans votre instance Autonomous Database.

  1. Créez et stockez des informations d'identification en utilisant la procédure DBMS_CLOUD.CREATE_CREDENTIAL. Par exemple :
    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password',
        comments => 'credential to access object store'
      );
    END;
    /

    Cette opération stocke les informations d'identification dans la base de données dans un format crypté. Vous pouvez utiliser n'importe quel nom d'informations d'identification. Cette étape est requise une seule fois, sauf si les informations d'identification de banque d'objets changent. Une fois les données d'identification stockées, vous pouvez utiliser le même nom d'informations d'identification pour tous les chargements de données.

    Pour obtenir des informations détaillées sur les paramètres, reportez-vous à la procédure CREATE_CREDENTIAL.

    La création d'informations d'identification pour accéder à la banque d'objets Oracle Cloud Infrastructure n'est pas requise si vous activez les informations d'identification de principal de ressource. Pour plus d'informations, reportez-vous à Utilisation du principal de ressource pour accéder à des ressources Oracle Cloud Infrastructure.

    Remarque

    Certains outils tels que SQL*Plus et SQL Developer utilisent le caractère esperluette (&) comme caractère spécial. Si votre mot de passe contient l'esperluette, utilisez la commande SET DEFINE OFF dans ces outils, comme indiqué dans l'exemple, pour désactiver le caractère spécial et obtenir les informations d'identification créées correctement.
  2. Avec les informations d'identification que vous avez créées à l'étape 1, vous pouvez accéder à la banque d'objets ou à d'autres ressources cloud à partir d'Autonomous Database à l'aide d'une procédure telle que DBMS_CLOUD.COPY_DATA, DBMS_CLOUD.EXPORT_DATA, DBMS_CLOUD_PIPELINE si vous utilisez un pipeline de données ou d'autres procédures qui nécessitent des informations d'identification DBMS_CLOUD.

Création d'informations d'identification pour accéder aux services cloud dans Cloud Shell

Utilisez Cloud Shell pour exécuter un script qui crée des informations d'identification natives OCI et un jeton d'authentification dans votre instance Autonomous Database.

Pour créer des informations d'identification à l'aide du package DBMS_CLOUD, reportez-vous à Création d'informations d'identification pour accéder aux services cloud et à Procédure CREATE_CREDENTIAL.

A propos du script Créer des informations d'identification Cloud Shell

Exécutez le script Créer des informations d'identification Cloud Shell dans l'outil de développement Cloud Shell afin de générer des scripts d'informations d'identification à exécuter dans votre instance Autonomous Database.

Utilisez le script Créer des informations d'identification, adb-create-cred.sh, pour créer des informations d'identification natives OCI existantes ou les réutiliser, y compris une paire de clés RSA avec une empreinte. Les informations d'identification sont fournies à l'utilisateur sous forme de scripts, oci_native_credential.sql et oci_native_credential.json, qui peuvent être exécutés dans votre instance Autonomous Database. Les informations d'identification existantes sont sauvegardées si de nouvelles informations d'identification sont créées.

Utilisez le script adb-create-cred.sh pour exécuter les scripts d'informations d'identification générés dans votre instance Autonomous Database ou quittez le programme et exécutez les scripts dans votre base de données avec l'outil ou l'utilitaire compatible SQL ou JSON de votre choix. Pour plus d'informations et d'exemples, reportez-vous à Exemple : création d'informations d'identification natives OCI et à Exemple : création d'informations d'identification natives OCI et exécution dans Autonomous Database.

Eventuellement, adb-create-cred.sh est utilisé pour créer des informations d'identification Swift/jeton d'authentification. Oracle recommande d'utiliser les informations d'identification natives OCI. Toutefois, si vous voulez créer un jeton d'authentification/informations d'identification Swift, il est pris en charge par ce script shell. Pour plus de détails, reportez-vous à Création d'un jeton d'authentification utilisé pour les informations d'identification Swift.

Remarque

Si vous n'avez pas accès à l'outil de développement Cloud Shell, créez des informations d'identification natives OCI sans utiliser le script adb-create-cred.sh. Pour plus de détails, reportez-vous à Création d'informations d'identification natives Oracle Cloud Infrastructure.

Exemple : création d'informations d'identification natives OCI

Cet exemple utilise Cloud Shell pour exécuter le script Créer des informations d'identification afin de créer des scripts d'informations d'identification natifs OCI.

Exécutez adb-create-cred.sh pour générer des scripts d'informations d'identification, oci_native_cred.sql et oci_native_cred.json. Le script adb-create-cred.sh recherche les informations d'identification existantes. Si elles sont trouvées, vous êtes invité à les réutiliser ou à créer des informations d'identification. Selon votre décision, les scripts d'informations d'identification générés incluent des informations d'identification nouvelles ou existantes. Téléchargez le script d'informations d'identification native OCI ou copiez-le pour l'exécuter directement dans votre base de données à l'aide de n'importe quel outil ou utilitaire SQL ou JSON.

Remarque

Pour obtenir la liste des arguments pris en charge par le script Créer des informations d'identification, entrez adb-create-cred.sh --help.

Dans cet exemple, les scripts d'informations d'identification natives OCI sont générés pour votre location sans les exécuter dans votre base de données. Reportez-vous à Exemple : création d'informations d'identification natives OCI et exécution dans Autonomous Database, pour obtenir un exemple d'exécution du script d'informations d'identification natives OCI dans votre base de données.

  1. Connectez-vous à votre location, sélectionnez l'icône Outils de développement, puis cliquez sur Cloud Shell dans la liste déroulante.
  2. Exécutez le script adb-create-cred.sh.
  3. Entrez y pour réutiliser les informations d'identification existantes dans le script d'informations d'identification natives OCI généré.


    Description de l'image cs_existing.png
    Description de l'image cs_existing.png

    Si vous choisissez de créer de nouvelles informations d'identification et de décider après avoir écrasé les informations d'identification que vous souhaitez utiliser, revenez au répertoire dans lequel se trouve la sauvegarde et réutilisez-les. Le nom ou le dossier du fichier de sauvegarde comporte un suffixe avec la syntaxe suivante : _bkp_YYYYMMDD_abc. Par exemple, ce fichier de sauvegarde a été créé le 06 juin 2024 : _bkp_20240603_woT.

  4. Entrez n pour quitter le script sans exécuter le script d'informations d'identification natives OCI dans la base de données.
  5. Le programme se ferme et affiche le nom des informations d'identification natives OCI et la commande permettant de les visualiser.


    Description de l'image cs_exit_script.png
    Description de l'image cs_exit_script.png

    Téléchargez le script d'informations d'identification natives OCI ou copiez-le et exécutez-le directement dans votre base de données à l'aide de n'importe quel outil SQL.

Exemple : création d'informations d'identification natives OCI et exécution dans Autonomous Database

Cet exemple utilise le script Créer des informations d'identification pour créer un script d'informations d'identification natif OCI exécuté dans votre instance Autonomous Database.

Avant d'exécuter le script, tenez compte des points suivants :
  • (Facultatif) Indiquez la région, le compartiment et le nom de la base de données afin d'éviter que le script ne recherche la base de données. Bien que ces options ne soient pas requises, elles permettent de gagner du temps de traitement, en particulier sur les locations couvrant une multitude de compartiments et de bases de données autonomes.
  • Le script suppose que la base de données se trouve dans votre région d'origine. S'il se trouve dans une autre région, vous devez transmettre l'argument de nom de région, --region, lors de l'exécution du script.
  • Si vous ne fournissez pas le compartiment (--compartment) ou le nom de base de données (--database), le script recherche les candidats possibles et vous invite à effectuer une sélection dans les listes des compartiments et des bases de données possibles.
  • Pour répertorier les options disponibles, entrez -h ou --help.

Dans l'exemple suivant, le script Créer des informations d'identification natives OCI, adb-create-cred.sh, est utilisé pour générer un script d'informations d'identification avec des informations d'identification existantes et exécuter le script dans une base de données indiquée.

La région, le compartiment et le nom de la base de données sont transmis en tant qu'arguments au script. L'option --database requiert --region et --compartment. Si vous indiquez uniquement --database sans ces options, l'option est ignorée.

Le nom utilisateur utilisé pour la connexion à la base de données est également fourni avec le nom des informations d'identification créées.
Remarque

Pour obtenir la liste des arguments pris en charge par le script Créer des informations d'identification, entrez adb-create-cred.sh --help.
  1. Connectez-vous à votre location, sélectionnez l'icône Outils de développement, puis cliquez sur Cloud Shell dans la liste déroulante.
  2. Exécutez le script adb-create-cred.sh, y compris les arguments utilisés pour localiser la base de données, se connecter à la base de données et le nom des informations d'identification indiquées par l'utilisateur.
  3. Des clés d'API et une empreinte digitale existantes ont été trouvées. Entrez y pour les réutiliser dans les scripts d'informations d'identification générés.


    Description de l'image cs_existing_keys.png
    Description de l'image cs_existing_keys.png

    Si vous choisissez de créer des informations d'identification et de décider après avoir écrasé les informations d'identification que vous souhaitez utiliser, vous pouvez revenir au répertoire dans lequel se trouve la sauvegarde et les réutiliser. Le nom ou le dossier du fichier de sauvegarde comporte un suffixe avec la syntaxe suivante : _bkp_YYYYMMDD_abc. Par exemple, ce fichier de sauvegarde a été créé le 06 juin 2024 : _bkp_20240603_woT.

  4. Entrez y pour exécuter le script d'informations d'identification créé, oci_native_credential.sql, dans la base de données indiquée avec les arguments de région, de compartiment et de base de données.
  5. Aucun fichier de portefeuille n'a été trouvé. Il a donc été configuré. Si un fichier de portefeuille a été trouvé, vous êtes invité à le réutiliser ou à en configurer un nouveau. Entrez le mot de passe du nom utilisateur ADMIN que vous avez fourni. Les nom utilisateur et mot de passe sont utilisés pour se connecter à la base de données.


    Description de l'image cs_pass.png
    Description de l'image cs_pass.png

    Remarque

    Si vous disposez d'une adresse privée Autonomous Database dans un réseau cloud virtuel, le script adb-create-cred.sh génère les scripts SQL et JSON. Cependant, il n'effectue pas les étapes requises pour accéder à l'adresse privée Autonomous Database. Au lieu de cela, il vous invite à exécuter cat ~/oci_native_credential.sql pour copier le code SQL dans l'outil SQL auquel vous avez accès via un bastion ou un hôte Jump.

  6. La connexion a réussi et les informations d'identification MYOCICRED ont été créées dans la base de données indiquée. Les informations d'identification existantes sont supprimées et les informations d'identification créées. Entrez n pour ne pas exécuter d'informations d'identification dans une autre base de données. Le script existe et fournit le chemin du script oci_native_credential.sql créé.


    Remarque

    Si la connexion à Autonomous Database échoue, vous pouvez exécuter cat ~/oci_native_credential.sql et copier le code SQL pour l'exécuter directement dans votre base de données à l'aide de n'importe quel outil SQL.

Créer un jeton d'authentification utilisé pour les informations d'identification Swift

Si vous voulez créer des informations d'identification Swift/jeton d'authentification, bien qu'Oracle recommande d'utiliser des informations d'identification natives OCI, incluez l'argument --all lors de l'exécution du script pour générer des informations d'identification natives OCI et des informations d'identification Swift/jeton d'authentification.

Par exemple :
adb-create-cred.sh --all

Lorsque cet indicateur est utilisé, le script vous demande si vous voulez inclure un jeton d'authentification. En répondant à y, votre clé de jeton d'authentification est générée et téléchargée vers votre profil OCI, et les scripts oci_auth_token_credential.sql et auth_token.tok sont créés.

Vous pouvez utiliser 2 options pour afficher la clé de jeton d'authentification :
  • Exécutez le script oci_auth_token_credential.sql à partir de Cloud Shell pour créer la clé de jeton d'authentification dans la base de données. La clé de jeton d'authentification est la valeur du paramètre password pour DBMS_CLOUD_CREATE_CREDENTIAL.
  • Affichez auth_token.tok à partir de Cloud Shell. Votre jeton d'authentification est la valeur de token.

Répertorier les informations d'identification

DBMS_CLOUD permet de stocker les informations d'identification à l'aide de la procédure DBMS_CLOUD.CREATE_CREDENTIAL. Vous pouvez répertorier les informations d'identification à partir de la vue ALL_CREDENTIALS.

Par exemple, pour répertorier les informations d'identification, exécutez la commande suivante :

SELECT credential_name, username, comments FROM all_credentials;

CREDENTIAL_NAME                                            USERNAME    
---------------------------–-----------------------------  --------------------
COMMENTS
---------------------------–-----------------------------  --------------------
ADB_TOKEN                                                  user_name@example.com
{"comments":"Created via DBMS_CLOUD.create_credential"}
DEF_CRED_NAME                                              user_name@example.com
{"comments":"Created via DBMS_CLOUD.create_credential"}
 

Pour plus d'informations, reportez-vous à ALL_CREDENTIALS.

Supprimer des informations d'identification

DBMS_CLOUD permet de stocker les informations d'identification à l'aide de la procédure DBMS_CLOUD.CREATE_CREDENTIAL. Vous pouvez enlever des informations d'identification avec DBMS_CLOUD.DROP_CREDENTIAL.

Par exemple, pour enlever les informations d'identification nommées DEF_CRED_NAME, exécutez la commande suivante :

BEGIN
   DBMS_CLOUD.DROP_CREDENTIAL('DEF_CRED_NAME');
END;

Pour plus d'informations sur les procédures et les paramètres DBMS_CLOUD, reportez-vous à Sous-programmes et API REST DBMS_CLOUD.