Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Agregue tablas de Catálogo de Unity como recursos de Databricks Apps para que la aplicación pueda consultar y modificar los datos almacenados en el Catálogo de Unity con gobernanza y control de acceso. Las tablas de Catálogo de Unity proporcionan almacenamiento de datos estructurados con permisos específicos, por lo que la aplicación puede leer y escribir datos de forma segura sin necesidad de codificar credenciales.
Requisitos de privilegios
Para acceder a una tabla de catálogo de Unity, el principal de servicio de la aplicación debe tener el USE CATALOG privilegio en el catálogo primario, el USE SCHEMA privilegio en el esquema primario y el privilegio SELECT o MODIFY en la tabla. Al agregar el recurso de tabla, Azure Databricks concede automáticamente estos privilegios a la entidad de servicio de la aplicación.
Para que esta concesión automática se realice correctamente, uno de los siguientes valores debe ser verdadero para cada privilegio.
-
Para
USE CATALOG: todos los usuarios de la cuenta tienen elUSE CATALOGprivilegio en el catálogo, o todos tienen elMANAGEprivilegio en el catálogo. -
Para
USE SCHEMA: o todos los usuarios de la cuenta tienen elUSE SCHEMAprivilegio en el esquema, o usted tiene elMANAGEprivilegio en el esquema. -
Para
SELECToMODIFY: o todos los usuarios de la cuenta tienen el privilegioSELECTo el privilegioMODIFYen la tabla, o bien usted tiene elMANAGEprivilegio en la tabla.
Consulte Referencia de privilegios del catálogo de Unity.
Adición de un recurso de tabla de Catálogo de Unity
Antes de agregar una tabla como recurso, revise los requisitos previos del recurso de la aplicación.
- Al crear o editar una aplicación, vaya al paso Configurar .
- En la sección Recursos de la aplicación, haga clic en + Agregar recurso.
- Seleccione Tabla UC como tipo de recurso.
- Elija una tabla de Unity Catalog entre las tablas disponibles en su área de trabajo. La tabla ya debe existir en el catálogo de Unity.
- Seleccione el nivel de permiso adecuado para la aplicación:
- Seleccione: Concede al aplicación permiso para consultar y leer datos de la tabla. Esto es adecuado para las aplicaciones que solo necesitan leer datos.
-
Modificar: Concede permiso a la aplicación para insertar, actualizar y eliminar datos en la tabla. Este permiso incluye
SELECTimplícitamente , por lo que la aplicación también puede leer datos.
- (Opcional) Especifique una clave de recurso personalizada, que es la forma en que hace referencia a la tabla en la configuración de la aplicación. La clave predeterminada es
table.
Nota:
MODIFY no está disponible para todos los tipos de tabla. Por ejemplo, las vistas no admiten el MODIFY privilegio. Si la tabla no admite MODIFY, solo SELECT está disponible.
Variables de entorno
Al implementar una aplicación con un recurso de tabla de Catálogo de Unity, Azure Databricks expone el nombre completo de tres niveles de la tabla a través de variables de entorno a las que puede hacer referencia mediante el valueFrom campo .
Configuración de ejemplo:
env:
- name: UC_TABLE_NAME
valueFrom: table # Use your custom resource key if different
Utilizando la tabla en tu aplicación:
import os
from databricks.sdk import WorkspaceClient
# Access the table name
table_name = os.getenv("UC_TABLE_NAME")
# Initialize workspace client
w = WorkspaceClient()
# Query the table using a SQL warehouse resource
result = w.statement_execution.execute_statement(
warehouse_id=os.getenv("DATABRICKS_WAREHOUSE_ID"), # Requires a SQL warehouse resource
statement=f"SELECT * FROM {table_name} LIMIT 10"
)
Para obtener más información, consulte Uso de variables de entorno para acceder a los recursos.
Eliminación de un recurso de tabla de catálogo de Unity
Al quitar un recurso de tabla de Catálogo de Unity de una aplicación, la entidad de servicio de la aplicación pierde las concesiones SELECT, MODIFY y ALL PRIVILEGES en la tabla. Azure Databricks también intenta revocar permisos jerárquicos de catálogo y esquema. La propia tabla permanece sin cambios y sigue estando disponible para otros usuarios y aplicaciones que tienen los permisos adecuados.
Procedimientos recomendados
Tenga en cuenta lo siguiente al trabajar con recursos de tabla de Catálogo de Unity:
- Conceda permisos mínimos. Use
SELECTa menos que la aplicación necesite escribir datos en la tabla. - Combine recursos de tabla con un recurso de SQL Warehouse cuando la aplicación necesite ejecutar consultas SQL en la tabla.
- Use recursos de tabla independientes para distintas tablas en lugar de conceder acceso amplio de nivel de esquema, de modo que pueda aplicar el principio de privilegios mínimos.
- Considere la posibilidad de usar volúmenes de Catálogo de Unity para datos no estructurados y tablas de Catálogo de Unity para datos estructurados.