Paquete DBMS_DCAT

El paquete DBMS_DCAT proporciona funciones y procedimientos para ayudar a los usuarios de la base de datos de IA autónoma a aprovechar la detección de datos y el sistema centralizado de gestión de metadatos de OCI Data Catalog.

Nota: El soporte para DBMS_DCAT está disponible en Oracle AI Database 19c a partir de la versión 19.30 y en Autonomous AI Database 26ai a partir de la versión 23.26.1.

Data Catalog recopila metadatos de los activos de almacenamiento de objetos de un lago de datos. El proceso de recogida crea entidades lógicas, que se pueden considerar tablas con columnas y tipos de dato asociados. Los procedimientos y las funciones de DBMS_DCAT conectan la base de datos de IA autónoma al catálogo de datos y, a continuación, sincronizan los activos con la base de datos, creando esquemas protegidos y tablas externas. A continuación, puede consultar el almacén de objetos mediante esas tablas externas, uniendo fácilmente los datos externos con los datos almacenados en la base de datos de IA autónoma. Esto simplifica drásticamente el proceso de gestión; hay un único almacén de metadatos gestionado centralmente que se comparte entre varios servicios de OCI (incluidas las bases de datos de IA autónomas). También hay vistas de diccionario de base de datos de IA autónoma que le permiten inspeccionar el contenido de Data Catalog mediante SQL y mostrar cómo estas entidades de Data Catalog se asignan a sus esquemas y tablas de base de datos de IA autónoma.

Usuarios y roles de Data Catalog

El paquete DBMS_DCAT soporta usuarios/esquemas sincronizados, usuarios dcat_admin y usuarios locales. Los usuarios deben tener el rol dcat_sync para poder utilizar este paquete.

Usuarios de Data Catalog

Roles de Data Catalog

Credenciales y políticas de IAM necesarias

En este tema se describen las credenciales de usuario y las políticas de Oracle Cloud Infrastructure Identity and Access Management (IAM) necesarias para otorgar a los usuarios de la base de datos de IA autónoma permiso para gestionar un catálogo de datos y leer desde el almacenamiento de objetos.

Requisitos de políticas y credenciales de OCI Data Catalog:

Requisitos de políticas y credenciales del catálogo de datos de AWS Glue

Las siguientes credenciales y políticas de usuario son necesarias para otorgar a los usuarios de la base de datos de IA autónoma permiso para acceder a los catálogos de datos de pegamento de Amazon Web Services (AWS) y leer desde el almacenamiento de objetos de S3:

Ejemplo: creación de un objeto de credencial de autenticación nativa de OCI

En este ejemplo, creamos una credencial de autenticación nativa de OCI que se puede utilizar al crear un catálogo de datos o un objeto de credencial de almacén de objetos. Para obtener más información, consulte DBMS_DCAT. Procedimiento SET_DATA_CATALOG_CREDENTIAL y procedimiento DBMS_DCAT.SET_OBJECT_STORE_CREDENTIAL, respectivamente.

En la autenticación nativa de OCI, el procedimiento DBMS_CLOUD.CREATE_CREDENTIAL incluye los siguientes parámetros: credential_name, user_ocid, tenancy_ocid, private_key y fingerprint. Consulte Procedimiento CREATE_CREDENTIAL de DBMS_CLOUD para obtener una descripción completa de este procedimiento.

credential_name es el nombre del objeto de credencial. Los parámetros user_ocid y tenancy_ocid corresponden a los OCID del usuario y del arrendamiento, respectivamente.

El parámetro private_key especifica la clave privada generada en formato PEM. Las claves privadas creadas con una frase de contraseñas no están soportadas. Por lo tanto, debemos asegurarnos de generar una clave sin frase de contraseña. Consulte Cómo generar una clave de firma de API para obtener más detalles sobre cómo crear una clave privada sin frase de contraseña. Además, la clave privada que proporcionamos para este parámetro solo debe contener la clave en sí sin ningún encabezado o pie de página (por ejemplo, '—–BEGIN RSA PRIVATE KEY—–', '—END RSA PRIVATE KEY—–').

El parámetro fingerprint especifica la huella que se obtiene después de cargar la clave pública en la consola o mediante los comandos de OpenSSL. Consulte How to Upload the Public Key y How to Get the Key's Fingerprint para obtener más información sobre la obtención de la huella.

Una vez que se recopile toda la información necesaria y se genere la clave privada, estamos listos para ejecutar el siguiente procedimiento CREATE_CREDENTIAL:

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;
/

Después de crear el objeto de credencial, se muestra en la tabla dba_credentials:

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

Ejemplo: uso de principales de usuario

En este ejemplo, user1 es un miembro del grupo adb-admins. Todos los miembros de este grupo tienen permiso para gestionar todos los catálogos de datos en mycompartment y para leer desde el almacén de objetos en mycompartment.

  1. Permite a los usuarios que son miembros de adb-admins gestionar todos los catálogos de datos en mycompartment.

     allow group adb-admins to manage data-catalog-family in compartment mycompartment
    
  2. Permitir a los usuarios que sean miembros de adb-admins leer cualquier objeto de cualquier cubo de mycompartment.

     allow group adb-admins to read objects in compartment mycompartment