Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
Importante
Esta característica está en versión preliminar pública.
Sugerencia
Para obtener información sobre cómo leer datos de Azure Databricks mediante Microsoft Fabric, consulte Uso de Microsoft Fabric para leer datos registrados en Unity Catalog.
En esta página se describe cómo la funcionalidad de vending de credenciales de Unity Catalog admite el acceso a los datos de Azure Databricks desde motores de procesamiento externos.
La expendición de credenciales admite sistemas externos que se conectan a Unity Catalog mediante la API REST de Unity y el catálogo REST de Apache Iceberg. Consulte Leer tablas de Databricks de clientes Delta y Acceder a datos de Databricks mediante sistemas externos.
¿Qué es la emisión de credenciales de Unity Catalog?
La emisión de credenciales concede credenciales de corta duración mediante la API REST de Unity Catalog. Las credenciales otorgadas heredan los privilegios del principal de Azure Databricks utilizado para configurar la integración.
La vending de credenciales de tabla proporciona acceso a los datos registrados en el metastore del catálogo de Unity.
La vending de credenciales de ruta de acceso proporciona acceso a ubicaciones externas en el metastore del catálogo de Unity.
Vending de credenciales de tabla
Para recibir una credencial temporal para una tabla, la entidad de seguridad de Azure Databricks solicitante (usuario, grupo o entidad de servicio) debe tener el EXTERNAL USE SCHEMA privilegio en el esquema que contiene la tabla. El metastore del catálogo de Unity también debe estar habilitado explícitamente para el acceso externo. Consulte Habilitar el acceso de datos externos a Unity Catalog.
Las credenciales incluyen una cadena de token de acceso de corta duración y una dirección URL de ubicación de almacenamiento en la nube que el motor externo puede usar para acceder a los datos y metadatos de la tabla desde la ubicación de almacenamiento en la nube.
Nota:
Table Unity Catalog credential vending admite lo siguiente:
- Acceso de solo lectura a las tablas delta administradas de Unity Catalog.
- Acceso de lectura y escritura a las tablas de Iceberg gestionadas por Unity Catalog.
- Acceso de solo lectura a las tablas Delta configuradas para lecturas de Iceberg.
- Cree acceso a tablas externas del catálogo de Unity.
- Acceso de lectura y escritura a tablas externas de Unity Catalog.
Algunos clientes admiten el acceso a las tablas respaldadas por Delta Lake, mientras que otras requieren que habilite las lecturas de Iceberg (UniForm) en tablas. Consulte Leer tablas Delta con clientes de Iceberg.
Requisitos
- Debe configurar el acceso externo en el metastore y otorgar
EXTERNAL USE SCHEMAal principal que configura la conexión. Consulte Habilitar el acceso de datos externos a Unity Catalog. - Para acceder al área de trabajo de Azure Databricks mediante las API abiertas del Catálogo de Unity o las API REST de Iceberg, la URL del área de trabajo debe ser accesible para el motor que realiza la solicitud. Esto incluye áreas de trabajo que usan listas de acceso IP o Azure Private Link.
- Para acceder a la ubicación de almacenamiento en la nube subyacente para objetos de datos registrados en Unity Catalog, las direcciones URL de almacenamiento generadas por la API de credenciales temporales de Unity Catalog deben ser accesibles para el motor que realiza la solicitud. Esto significa que el motor debe estar habilitado en las listas de control de acceso de red y del firewall para las cuentas subyacentes de almacenamiento en la nube.
Solicitud de una credencial de tabla temporal para el acceso a datos externos
El soporte para la gestión de credenciales varía según el cliente externo. Donde sea compatible, el cliente debe aprovechar automáticamente las credenciales proporcionadas cuando se configura una conexión.
En esta sección se proporciona un ejemplo de cómo llamar explícitamente al punto de conexión de la API de dispensación de credenciales. Es posible que algunos clientes externos necesiten establecer explícitamente configuraciones para acceder a datos y metadatos en el almacenamiento de objetos en la nube que respaldan las tablas de Unity Catalog. Puede usar los valores devueltos por el suministro de credenciales para configurar el acceso.
Nota:
Puede recuperar una lista de tablas que admiten la provisión de credenciales invocando la API ListTables con la opción habilitada include_manifest_capabilities. Solo las tablas marcadas con HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT o HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT son aptas para hacer referencia en la API temporary-table-credentials. Consulte GET /api/2.1/unity-catalog/tables.
En el ejemplo siguiente curl se solicita explícitamente una credencial temporal para el acceso a datos externos. Esta solicitud debe completarse mediante un principal del área de trabajo con privilegios suficientes.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-table-credentials \
-d '{"table_id": "<string>", "operation_name": "<READ|READ_WRITE>"}'
Para obtener más información, consulte POST /api/2.1/unity-catalog/temporary-table-credentials en la referencia de la API REST de Azure Databricks.
Limitaciones
Existen las siguientes limitaciones:
- No todos los clientes externos admiten la distribución de credenciales, y la compatibilidad puede variar dependiendo del almacenamiento de objetos en la nube subyacente.
- Solo se admiten las tablas administradas por el catálogo de Unity y las tablas externas de Unity Catalog.
- Las tablas habilitadas para lecturas de Iceberg comparten este requisito. Consulte Leer tablas Delta con clientes de Iceberg.
- Los clientes lectores de Delta Lake solo pueden leer tablas respaldadas por Delta Lake y deben admitir todos los protocolos de lector o escritor habilitados en la tabla. Consulte Compatibilidad y protocolos de características de Delta Lake.
- Las tablas externas que no usan Delta Lake no proporcionan garantías transaccionales.
- No se admiten los siguientes tipos de tabla o tablas con características habilitadas:
- Tablas con filtros de fila o máscaras de columna.
- Tablas compartidas con Delta Sharing.
- Tablas federadas de la plataforma Lakehouse (tablas externas).
- Vistas.
- Vistas materializadas.
- Tablas de streaming de las canalizaciones declarativas de Lakeflow Spark.
- Tablas en línea.
- Índices de vector de búsqueda.
- La actualización de credenciales no se admite en Iceberg 1.9.0. Utiliza la versión más reciente de Iceberg para la actualización de credenciales.
Vending de credenciales de ruta de acceso
Para recibir una credencial temporal para una ruta de acceso, se debe conceder la entidad de seguridad de Azure Databricks que solicita:
- Privilegio
EXTERNAL USE LOCATIONen la ubicación externa. - Privilegio
EXTERNAL USE SCHEMAen el esquema, si tiene acceso a una tabla externa.
Al igual que con la vending de credenciales de tabla, el metastore de Catálogo de Unity debe estar habilitado explícitamente para el acceso externo. Consulte Habilitar el acceso de datos externos a Unity Catalog.
Las credenciales emitidas permiten el acceso directo a la ubicación de almacenamiento en la nube, con ámbito a la ruta de acceso pertinente. Son válidos durante un tiempo limitado y no conceden acceso más amplio más allá de la ubicación o tabla definidas.
Requisitos
- El metastore del catálogo de Unity debe tener habilitado el acceso externo y se debe conceder
EXTERNAL USE LOCATIONa la entidad de seguridad solicitante . Si tiene acceso a una tabla externa, también debe concederseEXTERNAL USE SCHEMA. Consulte Habilitar el acceso de datos externos a Unity Catalog. - El motor externo debe poder acceder a la dirección URL del área de trabajo de Azure Databricks. Esto se aplica a las áreas de trabajo mediante listas de acceso IP o Azure Private Link.
- Las direcciones URL de almacenamiento en la nube generadas por la API de vending de credenciales deben ser accesibles para el motor externo. Asegúrese de que el motor está permitido por el firewall y los controles de acceso a la red en las cuentas de almacenamiento en la nube subyacentes.
Solicitud de una credencial de ruta de acceso temporal para el acceso a datos externos
El soporte para la gestión de credenciales varía según el cliente externo. Donde sea compatible, el cliente debe aprovechar automáticamente las credenciales proporcionadas cuando se configura una conexión.
En esta sección se proporciona un ejemplo de cómo llamar explícitamente al punto de conexión de la API de dispensación de credenciales. Es posible que algunos clientes externos necesiten establecer explícitamente configuraciones para acceder a datos y metadatos en el almacenamiento de objetos en la nube que respaldan las tablas de Unity Catalog. Puede usar los valores devueltos por el suministro de credenciales para configurar el acceso.
En el ejemplo siguiente curl se solicita explícitamente una credencial temporal para el acceso a datos externos. Esta solicitud debe completarse mediante un principal del área de trabajo con privilegios suficientes.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-path-credentials \
-d '{"url": "<string>", "operation": <PATH_READ|PATH_READ_WRITE|PATH_CREATE_TABLE>"}'
Para más información, consulte Generación de una credencial de ruta de acceso temporal en la referencia de la API REST de Azure Databricks.