Gestion des informations 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 à l'aide de la procédure DBMS_CLOUD.CREATE_CREDENTIAL. Exemples :
    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. Après avoir stocké les informations d'identification, 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 à Procédure CREATE_CREDENTIAL.

    La création d'informations d'identification pour accéder à Oracle Cloud Infrastructure Object Storage 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 aux ressources Oracle Cloud Infrastructure.

    Remarque

    Certains outils tels que SQL*Plus et SQL Developer utilisent l'arrondi (&) comme caractère spécial. Si votre mot de passe comporte une esperluette, utilisez la commande SET DEFINE OFF dans ces outils comme indiqué dans l'exemple pour désactiver le caractère spécial et créer les informations d'identification correctement.
  2. Avec les informations d'identification 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 nécessitant 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 de création d'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 de création d'informations d'identification, adb-create-cred.sh, pour créer des informations d'identification natives OCI ou pour réutiliser des informations d'identification natives OCI existantes, y compris une paire de clés RSA avec une empreinte digitale. 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 un outil ou un 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.

adb-create-cred.sh est éventuellement utilisé pour créer des informations d'identification de jeton d'authentification/Swift. Oracle recommande d'utiliser les informations d'identification natives OCI. Toutefois, si vous souhaitez créer des informations d'identification de jeton d'authentification/Swift, elles sont prises en charge par ce script shell. Pour plus d'informations, 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 vous les trouvez, vous êtes invité à les réutiliser ou à en créer de nouvelles. 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 OCI Native Credential 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 à la location, sélectionnez l'icône Outils de développement et 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 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 a 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 cs_exit_script.png
    Description de l'image cs_exit_script.png

    Téléchargez le script OCI Native Credential 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 natives 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 peuvent 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 n'indiquez pas le compartiment (--compartiment) ou le nom de la base de données (--base de données), 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 spécifiez uniquement --database sans ces paramètres, 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 à la location, sélectionnez l'icône Outils de développement et 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, connectez-vous à la base de données et à un nom d'informations d'identification indiqué 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 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 a 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. Fichier de portefeuille introuvable. 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 nom utilisateur ADMIN que vous avez fourni. Le nom utilisateur et le mot de passe sont utilisés pour se connecter à la base de données.


    Description de 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. A la place, 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 sont créées dans la base de données indiquée. Les informations d'identification existantes sont supprimées et les nouvelles informations d'identification sont créées. Entrez n pour ne pas exécuter les 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

    En cas d'échec de la connexion à Autonomous Database, vous pouvez exécuter cat ~/oci_native_credential.sql et copier le code SQL pour l'exécuter directement dans la 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 de jeton d'authentification/Swift, bien qu'Oracle recommande d'utiliser les informations d'identification natives OCI, incluez l'argument --all lors de l'exécution du script pour générer les informations d'identification natives OCI et les informations d'identification de jeton d'authentification/Swift.

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 afin de 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.
  • Visualisez 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 des 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 les informations d'identification

DBMS_CLOUD permet de stocker des informations d'identification à l'aide de la procédure DBMS_CLOUD.CREATE_CREDENTIAL. Vous pouvez enlever les informations d'identification à l'aide de 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 paramètres et les procédures DBMS_CLOUD, reportez-vous à API REST et sous-programmes DBMS_CLOUD.