Ensemble DBMS_DCAT

L'ensemble DBMS_DCAT fournit des fonctions et des procédures pour aider les utilisateurs de base de données Autonomous AI Database à tirer parti de la détection de données et du système de gestion centralisée des métadonnées du catalogue de données OCI.

Note : La prise en charge de DBMS_DCAT est disponible dans Oracle AI Database 19c à partir de la version 19.30 et dans Autonomous AI Database 26ai à partir de la version 23.26.1.

Le catalogue de données collecte les métadonnées à partir des ressources de stockage d'objets d'un lac de données. Le processus de collecte crée des entités logiques, qui peuvent être considérées comme des tables avec des colonnes et des types de données associés. Les procédures et fonctions DBMS_DCAT connectent la base de données de l'IA autonome au catalogue de données, puis synchronisent les ressources avec la base de données, créant des schémas protégés et des tables externes. Vous pouvez ensuite interroger le magasin d'objets à l'aide de ces tables externes, en joignant facilement des données externes aux données stockées dans Autonomous AI Database. Cela simplifie considérablement le processus de gestion. Il existe un seul magasin de métadonnées géré de manière centralisée qui est partagé par plusieurs services OCI (y compris les bases de données autonomes d'IA). Il existe également des vues du dictionnaire Autonomous AI Database qui vous permettent d'inspecter le contenu du catalogue de données à l'aide de SQL et de vous montrer comment ces entités de catalogue de données sont mappées à vos schémas et tables de base de données Autonomous AI Database.

Utilisateurs et rôles du catalogue de données

L'ensemble DBMS_DCAT prend en charge les utilisateurs/schémas synchronisés, les utilisateurs dcat_admin et les utilisateurs locaux. Les utilisateurs doivent avoir le rôle dcat_sync pour pouvoir utiliser cet ensemble.

Utilisateurs du catalogue de données

Rôles du catalogue de données

Données d'identification requises et politiques IAM

Cette rubrique décrit les données d'identification et les politiques d'utilisateur d'Oracle Cloud Infrastructure Identity and Access Management (IAM) requises pour accorder aux utilisateurs de la base de données d'intelligence artificielle autonome l'autorisation de gérer un catalogue de données et d'effectuer des lectures à partir du stockage d'objets.

Exigences en matière de données d'identification et de politique pour le catalogue de données OCI :

Exigences relatives aux données d'identification et aux politiques du catalogue de données AWS Glue

Les données d'identification et les politiques d'utilisateur suivantes sont requises pour permettre aux utilisateurs d'Autonomous AI Database d'accéder aux catalogues de données de colle Amazon Web Services (AWS) et de lire à partir du stockage d'objets S3 :

Exemple : Création d'un objet de données d'identification pour l'authentification native OCI

Dans cet exemple, nous créons des données d'identification pour l'authentification native OCI qui peuvent être utilisées lors de la création d'un catalogue de données ou d'un objet de données d'identification de magasin d'objets. Pour plus de détails, voir DBMS_DCAT. Procédure SET_DATA_CATALOG_CREDENTIAL et procédure DBMS_DCAT.SET_OBJECT_STORE_CREDENTIAL respectivement.

Dans l'authentification native OCI, la procédure DBMS_CLOUD.CREATE_CREDENTIAL inclut les paramètres suivants : credential_name, user_ocid, tenancy_ocid, private_key et fingerprint. Voir Procédure DBMS_CLOUD CREATE_CREDENTIAL pour une description complète de cette procédure.

credential_name est le nom de l'objet de données d'identification. Les paramètres user_ocid et tenancy_ocid correspondent respectivement aux OCID de l'utilisateur et de la location.

Le paramètre private_key spécifie la clé privée générée au format PEM. Les clés privées créées avec une phrase secrète ne sont pas prises en charge. Par conséquent, nous devons nous assurer de générer une clé sans phrase secrète. Voir Comment générer une clé de signature d'API pour plus de détails sur la création d'une clé privée sans phrase secrète. En outre, la clé privée que nous fournissons pour ce paramètre ne doit contenir que la clé elle-même sans en-tête ou pied de page (par exemple, '–BEGIN RSA PRIVATE KEY—–', '—–END RSA PRIVATE KEY—–').

Le paramètre fingerprint spécifie l'empreinte numérique obtenue après le chargement de la clé publique dans la console ou à l'aide des commandes OpenSSL. Pour plus de détails sur l'obtention de l'empreinte digitale, voir Comment charger la clé publique et Comment obtenir l'empreinte digitale de la clé.

Une fois que toutes les informations nécessaires sont collectées et que la clé privée est générée, nous sommes prêts à exécuter la procédure CREATE_CREDENTIAL suivante :

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL (
    credential_name => 'OCI_NATIVE_CRED',
    user_ocid              => 'ocid1.user.oc1..aaaaaaaatfn77fe3fxux3o5lego7glqjejrzjsqsrs64f4jsjrhbsk5qzndq',
    tenancy_ocid           => 'ocid1.tenancy.oc1..aaaaaaaapwkfqz3upqklvmelbm3j77nn3y7uqmlsod75rea5zmtmbl574ve6a',
    private_key            => 'MIIEogIBAAKCAQEA...t9SH7Zx7a5iV7QZJS5WeFLMUEv+YbYAjnXK+dOnPQtkhOblQwCEY3Hsblj7Xz7o=',
    fingerprint            => '4f:0c:d6:b7:f2:43:3c:08:df:62:e3:b2:27:2e:3c:7a');
END;
/

Après avoir créé l'objet de données d'identification, il s'affiche dans la table dba_credentials :

SELECT owner, credential_name
FROM dba_credentials
WHERE credential_name LIKE '%NATIVE%';
OWNER CREDENTIAL_NAME
----- ---------------
ADMIN OCI_NATIVE_CRED

Exemple : Utilisation des principaux d'utilisateur

Dans cet exemple, user1 est membre du groupe adb-admins. Tous les membres de ce groupe sont autorisés à gérer tous les catalogues de données dans mycompartment et à lire à partir du magasin d'objets dans mycompartment.

  1. Autoriser les utilisateurs membres de adb-admins à gérer tous les catalogues de données dans mycompartment.

     allow group adb-admins to manage data-catalog-family in compartment mycompartment
    
  2. Autoriser les utilisateurs qui sont membres de adb-admins à lire n'importe quel objet dans n'importe quel seau dans mycompartment.

     allow group adb-admins to read objects in compartment mycompartment