Utiliser les données d'identification de clé secrète de chambre forte avec AWS Secrets Manager

Décrit à l'aide des données d'identification de clé secrète de chambre forte, où la clé secrète de données d'identification (mot de passe) est stockée dans AWS Secrets Manager.

Vous pouvez utiliser les données d'identification de clé secrète de la chambre forte pour accéder aux ressources en nuage, pour accéder à d'autres bases de données avec des liens de base de données ou utiliser n'importe où les données d'identification de type nom d'utilisateur/mot de passe sont requises.

Préalables à la création de données d'identification de clé secrète de chambre forte avec AWS Secrets Manager

Décrit les préalables requis pour utiliser les données d'identification de clé secrète de chambre forte avec AWS Secrets Manager.

Pour créer des données d'identification de clé secrète de chambre forte où la clé secrète est stockée dans AWS Secrets Manager, effectuez d'abord les préalables requis.

  1. Créez un secret avec AWS Secrets Manager et copiez l'ARN secret AWS.

    Pour plus d'informations, voir Gestionnaire de clés secrètes AWS.

  2. La gestion AWS est préalable à l'utilisation de noms de ressource Amazon (ARN).
  3. Activer l'authentification du principal AWS pour fournir l'accès à la clé secrète dans AWS Secrets Manager.

    Par exemple, sur l'instance Autonomous AI Database exécutée :

    BEGIN
        DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH(                                     
              provider => 'AWS',
              params =>
                 JSON_OBJECT( 
                    'aws_role_arn' value 'arn:aws:iam::123456:role/AWS_ROLE_ARN'));
    END; 
    /

    Pour plus d'informations, voir Procédure ENABLE_PRINCIPAL_AUTH et À propos de l'utilisation de noms de ressource Amazon (ARN) pour accéder aux ressources AWS.

  4. Configurez AWS pour fournir les autorisations permettant aux noms de ressource Amazon (ARN) d'accéder à la clé secrète dans AWS Secrets Manager.

    Sur la console AWS, vous devez accorder l'accès en lecture à la clé secrète aux données d'identification d'authentification principales.

    1. Dans la console AWS, naviguez jusqu'à IAM et sélectionnez Rôles dans la gestion des accès.
    2. Sélectionnez le rôle.
    3. Dans l'onglet Autorisation, cliquez sur Ajouter des autorisationscréer une politique insérée.
    4. Dans la section Service, sélectionnez gestionnaire de clés secrètes comme service.
    5. Dans la section Action, sélectionnez le niveau d'accès Lecture.
    6. Dans la section Ressources, cliquez sur Ajouter un ARN, spécifiez un ARN pour la clé secrète et cliquez sur Ajouter → cliquez sur Vérifier la politique → donnez un nom de politique → cliquez sur créer la politique.
    7. De retour dans l'onglet Permission, vérifiez que la stratégie en ligne est associée.

Créer des données d'identification de clé secrète de chambre forte avec AWS Secrets Manager

Décrit les étapes d'utilisation d'une clé secrète AWS Secrets Manager avec des données d'identification.

Cela vous permet de stocker une clé secrète dans AWS Secrets Manager et d'utiliser la clé secrète avec les données d'identification que vous créez pour accéder aux ressources en nuage ou pour accéder à d'autres bases de données.

Pour créer des données d'identification de clé secrète de chambre forte dans lesquelles la clé secrète est stockée dans AWS Secrets Manager :

  1. Créez une clé secrète dans AWS Secrets Manager et créez une politique en ligne pour permettre à votre base de données Autonomous AI Database d'accéder aux clés secrètes dans AWS Secrets Manager.
  2. Utilisez DBMS_CLOUD.CREATE_CREDENTIAL pour créer des données d'identification de clé secrète de chambre forte pour accéder à la clé secrète du gestionnaire de clés secrètes AWS.

    Exemple :

    BEGIN DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name      => 'AWS_SECRET_CRED',
        params               => JSON_OBJECT( 
             'username'   value 'access_key',
             'secret_id'  value 'arn:aws:secretsmanager:region:account-ID:secret:secret_name' ));
    END;
    /

    Où :

    • username : Nom d'utilisateur des données d'identification initiales. Il peut s'agir du nom d'utilisateur de tout type de données d'identification de nom d'utilisateur ou de mot de passe.

    • secret_id : Il s'agit de la clé secrète de chambre forte AWS ARN.

    Pour créer des données d'identification de clé secrète de chambre forte, vous devez disposer du privilège EXECUTE sur l'ensemble DBMS_CLOUD.

    Pour plus d'informations, voir ProcédureCREATE_CREDENTIAL.

  3. Utilisez les données d'identification pour accéder à une ressource en nuage.

    Exemple :

    SELECT count(*) FROM DBMS_CLOUD.LIST_OBJECTS(
         'AWS_SECRET_CRED', 
         'https://s3-us-west-2.amazonaws.com/adb/' );
Note

Toutes les 12 heures, la clé secrète (mot de passe) est actualisée à partir du contenu du gestionnaire de clés secrètes AWS. Si vous modifiez la valeur de la clé secrète dans AWS Secrets Manager, il peut s'écouler jusqu'à 12 heures pour que l'instance de base de données IA autonome récupère la dernière valeur de clé secrète.

Exécutez DBMS_CLOUD.REFRESH_VAULT_CREDENTIAL pour actualiser immédiatement les données d'identification d'une clé secrète de chambre forte. Cette procédure obtient la dernière version de la clé secrète du coffre-fort à partir d'AWS Secrets Manager. Pour plus d'informations, voir ProcédureREFRESH_VAULT_CREDENTIAL.