DBMS_CLOUD pour la gestion des accès

Cette section traite des sous-programmes DBMS_CLOUD utilisés pour la gestion des accès.

Prérequis

En tant que développeur, vous pouvez utiliser les procédures DBMS_CLOUD avec des bases de données d'IA autonomes déployées sur Oracle Public Cloud, Multicloud ou Exadata Cloud@Customer.

Selon le choix de déploiement, les prérequis suivants doivent être respectés pour utiliser les procédures DBMS_CLOUD avec les fournisseurs de services Amazon S3, Azure Blob Storage et Google Cloud Storage.

Récapitulatif des sous-programmes DBMS_CLOUD pour la gestion des accès

Sous-programmes de gestion des informations d'identification dans le package DBMS_CLOUD, ce qui inclut La création, La suppression et La mise à jour des informations d'identification.

Sous-programme Description
Procédure CREATE_CREDENTIAL Cette procédure stocke les informations d'identification de service cloud dans la base de données Autonomous AI.
Procédure DROP_CREDENTIAL Cette procédure enlevez des informations d'identification existantes de la base de données Autonomous AI.
Procédure UPDATE_CREDENTIAL Cette procédure met à jour les attributs d'informations d'identification de service cloud dans la base de données Autonomous AI.

Procédure CREATE_CREDENTIAL

Cette procédure stocke les informations d'identification de service cloud dans la base de données Autonomous AI.

Utilisez les informations d'identification de service cloud stockées afin d'accéder au service Cloud pour le chargement des données, l'interrogation des données externes résidant dans le cloud ou d'autres cas lorsque vous utilisez des procédures DBMS_CLOUD avec un paramètre credential_name.

Syntaxe

DBMS_CLOUD.CREATE_CREDENTIAL (
      credential_name   IN VARCHAR2,
      username          IN VARCHAR2,
      password          IN VARCHAR2 DEFAULT NULL);


DBMS_CLOUD.CREATE_CREDENTIAL (
      credential_name IN VARCHAR2,
      user_ocid       IN VARCHAR2,
      tenancy_ocid    IN VARCHAR2,
      private_key     IN VARCHAR2,
      fingerprint     IN VARCHAR2);

Paramètres

Paramètre Description
credential_name Nom des informations d'identification à stocker. Le paramètre credential_name doit être conforme aux conventions de dénomination des objets Oracle, qui n'autorisent pas les espaces ou les traits d'union.
username Les arguments username et password indiquent ensemble vos informations d'identification de service cloud. Consultez les notes d'utilisation afin de connaître les éléments à indiquer pour username et password pour les différents services cloud.
password Les arguments username et password indiquent ensemble vos informations d'identification de service cloud.
user_ocid Spécifie l'OCID de l'utilisateur. Pour plus de détails sur l'obtention de l'OCID de l'utilisateur, reportez-vous à Emplacement de l'OCID de la location et de l'OCID de l'utilisateur.
tenancy_ocid Indique l'OCID de la location. Pour plus de détails sur l'obtention de l'OCID de la location, reportez-vous à Emplacement de l'OCID de la location et de l'OCID de l'utilisateur.
private_key Indique la clé privée générée. Les clés privées générées avec une phrase de passe ne sont pas prises en charge. Vous devez générer la clé privée sans phrase de passe. Pour plus d'informations sur la génération d'une paire de clés au format PEM, reportez-vous à Procédure de génération d'une clé de signature d'API.
fingerprint Spécifie une empreinte. Une fois qu'une clé publique générée est téléchargée vers le compte de l'utilisateur, l'empreinte est affichée dans la console. Utilisez l'empreinte affichée pour cet argument. Pour plus d'informations, reportez-vous à Procédure d'obtention de l'empreinte de la clé et à Procédure de génération d'une clé de signature d'API.

Remarques sur l'utilisation

Informations d'identification Oracle Cloud Infrastructure (jetons d'authentification)

Pour Oracle Cloud Infrastructure, username est votre nom utilisateur Oracle Cloud Infrastructure. password est votre jeton d'authentification Oracle Cloud Infrastructure. Reportez-vous à Utilisation des jetons d'authentification.

Exemple :

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'DEF_CRED_NAME',
    username => 'adb_user@example.com',
    password => 'password' );
END;
/

Utilisez des informations d'identification basées sur un jeton d'authentification lorsque vous authentifiez des appels vers OCI Object Storage. Pour les appels vers tout autre type de service cloud Oracle Cloud Infrastructure, utilisez les informations d'identification basées sur une clé de signature Oracle Cloud Infrastructure.

Informations d'identification basées sur la clé de signature Oracle Cloud Infrastructure

Utilisez les paramètres associés à la clé de signature Oracle Cloud Infrastructure, notamment user_ocid, tenancy_ocid, private_key et fingerprint, avec l'authentification à l'aide de clés de signature Oracle Cloud Infrastructure.

Exemple :

BEGIN
   DBMS_CLOUD.CREATE_CREDENTIAL (
       credential_name => 'OCI_KEY_CRED',
       user_ocid       => 'ocid1.user.oc1..aaaaaaaauq54mi7zdyfhw33ozkwuontjceel7fok5nq3bf2vwetkpqsoa',
       tenancy_ocid    => 'ocid1.tenancy.oc1..aabbbbbbaafcue47pqmrf4vigneebgbcmmoy5r7xvoypicjqqge32ewnrcyx2a',
       private_key     => 'MIIEogIBAAKCAQEAtUnxbmrekwgVac6FdWeRzoXvIpA9+0r1.....wtnNpESQQQ0QLGPD8NM//JEBg=',
       fingerprint     => 'f2:db:f9:18:a4:aa:fc:94:f4:f6:6c:39:96:16:aa:27');
END;
/

Les clés privées générées avec une phrase de passe ne sont pas prises en charge. Vous devez générer la clé privée sans phrase de passe. Pour plus d'informations, reportez-vous à Procédure de génération d'une clé de signature d'API.

Informations d'identification Amazon Web Services (AWS)

Si vos fichiers source résident dans Amazon S3 ou que vous appelez une API AWS, username est votre ID de clé d'accès AWS et password est votre clé d'accès secrète AWS. Reportez-vous à AWS Identity and Access Management.

Informations d'identification Microsoft Azure

Si vos fichiers source résident dans Azure Blob Storage ou que vous appelez une API Azure, username est votre nom de compte de stockage Azure et password est une clé d'accès de compte de stockage Azure. Reportez-vous à A propos des comptes de stockage Azure.

Informations d'identification compatibles avec Amazon S3

Service Précisions sur les informations d'identification
Stockage Google Cloud

Si les fichiers source résident dans Google Cloud Storage ou que vous appelez des API Google Cloud Storage, vous devez définir un projet Google par défaut et obtenir une clé HMAC pour créer des informations d'identification à accompagner d'URL Google Cloud Storage compatibles S3. Utilisez l'ID de clé HMAC comme nom utilisateur et la clé secrète HMAC comme mot de passe.

Pour plus d'informations, reportez-vous à Projets et à Clés HMAC.

Gérer les informations d'identification DBMS_CLOUD pour l'authentification auprès de C3 Object Storage

Vous pouvez utiliser la procédure DBMS_CLOUD.CREATE_CREDENTIAL pour fournir à la base de données Autonomous AI les informations d'authentification requises pour la connexion au bucket Object Storage C3. Utilisez les paramètres associés à la clé de signature Oracle Cloud Infrastructure, notamment user_ocid, tenancy_ocid, private_key et fingerprint, avec l'authentification des clés de signature Oracle Cloud Infrastructure.

Exemple :

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL (
    credential_name => 'OBJECT_STORAGE_CREDENTIAL',
    user_ocid       => 'ocid1.user.oc1..abcdedfxxxxx',
    tenancy_ocid    => 'ocid1.tenancy.oc1..abcdefxyyyyyy',
    private_key     => 'MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDku_Rest_of_PrivateKey_no_spaces_no_newlines',
    fingerprint     => '3d:ba:f9:aa:bb:cc:dd:ee:ff:gg:hh:ii:jj:xa:xb:xc'
  );
END;
/

Procédure DROP_CREDENTIAL

Cette procédure enlevez des informations d'identification existantes de la base de données Autonomous AI.

Syntaxe

DBMS_CLOUD.DROP_CREDENTIAL (
   credential_name     IN VARCHAR2);

Paramètres

Paramètre Description
credential_name Nom des informations d'identification à enlever.

Procédure UPDATE_CREDENTIAL

Cette procédure permet de mettre à niveau un attribut avec une nouvelle valeur pour un élément credential_name spécifié.

Utilisez les informations d'identification stockées pour le chargement des données, l'interrogation des données externes résidant dans le cloud ou quand vous utilisez des procédures DBMS_CLOUD avec un paramètre credential_name.

Syntaxe

DBMS_CLOUD.UPDATE_CREDENTIAL (
    credential_name   IN VARCHAR2,
    attribute         IN VARCHAR2,
    value             IN VARCHAR2);

Paramètres

Paramètre Description
credential_name Nom des informations d'identification à mettre à jour.
attribute

Nom de l'attribut à mettre à jour.

Pour les informations d'identification de type nom utilisateur/mot de passe, les valeurs attribute valides sont : USERNAME et PASSWORD.

Pour plus d'informations, reportez-vous à Procédure CREATE_CREDENTIAL.

value Nouvelle valeur pour l'attribut spécifié.

Remarques sur l'utilisation

Exemples 

BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL(
     credential_name => 'OBJ_STORE_CRED',
     attribute => 'PASSWORD',
     value => 'password');
END;
/
BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL(
     credential_name => 'ARN_CRED',
     attribute => 'aws_role_arn',
     value => 'NEW_AWS_ARN');
END;
/

Contenu connexe