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.
En Databricks Runtime 13.3 LTS y versiones posteriores, el catálogo de Unity en allowlist controla qué bibliotecas y scripts de inicialización se pueden ejecutar en computación en modo de acceso estándar. Esto permite a los usuarios aprovechar estos artefactos en servidores configurados con el modo de acceso estándar.
De forma predeterminada, la lista de permitidos está vacía. No se puede deshabilitar esta característica. Para modificar la lista de permitidos, debe ser un administrador de metastore o tener el MANAGE ALLOWLIST privilegio . Consulte ADMINISTRAR LISTA DE PERMITIDOS.
Puede agregar un directorio o archivo a la lista de permitidos aunque aún no se haya creado. Consulte Cargar archivos en un volumen de Unity Catalog.
Importante
Las bibliotecas que se usan como controladores JDBC u orígenes de datos de Spark personalizados en el proceso estándar habilitado para Unity Catalog requieren permisos ANY FILE.
Algunas bibliotecas instaladas almacenan datos de todos los usuarios en un directorio temporal común. Estas bibliotecas podrían poner en peligro el aislamiento del usuario.
Riesgos operativos y de seguridad
Comprender las implicaciones de seguridad de las listas de permitidos es fundamental para mantener el aislamiento del clúster y proteger los datos en el proceso del modo de acceso estándar. El uso adecuado de la lista de permitidos impide que los usuarios agreguen bibliotecas arbitrarias y scripts de inicialización. Esto reduce la probabilidad de problemas de seguridad, inestabilidad del clúster y otro comportamiento imprevisible.
Sea deliberado sobre quién recibe privilegios MANAGE ALLOWLIST. Los usuarios con MANAGE ALLOWLIST privilegios pueden añadir cualquier ruta de acceso o coordenada de Maven a la lista de permitidos, controlando eficazmente qué código se puede ejecutar en el modo de acceso estándar de la computación.
Como administrador de metastore, revise periódicamente los elementos de la lista de permitidos y compruebe que proceden de orígenes de confianza. Los artefactos permitidos pueden acceder a los recursos del clúster y a los datos de usuario, por lo que deben estar sujetos a los mismos controles de seguridad y gobernanza que otros componentes confidenciales.
Databricks recomienda estos procedimientos recomendados para administrar la lista de permitidos:
- Conceda el
MANAGE ALLOWLISTprivilegio solo a los administradores de metastore y a los administradores de plataformas de confianza. Para otros usuarios, concedaMANAGE ALLOWLISTsolo de forma temporal, según sea necesario. - Revise y audite las adiciones a la lista blanca con regularidad.
- Use rutas de acceso específicas y coordenadas de Maven en lugar de patrones amplios.
- Configure ubicaciones de almacenamiento para artefactos permitidos con permisos de solo lectura.
- Implemente un proceso de aprobación formal para las adiciones de listas de permitidos en entornos de producción.
- Pruebe las bibliotecas permitidas y los scripts de inicialización en entornos que no son de producción antes de agregarlas a listas de permitidos de producción.
Cómo agregar elementos a la lista de permitidos
Puede agregar elementos a allowlist con Explorador de catálogo o la API de REST.
Para abrir el cuadro de diálogo para agregar elementos a la lista de permitidos en Explorador de catálogo, haga lo siguiente:
- En el área de trabajo de Azure Databricks, haga clic en
Catálogo.
- Haga clic en el icono de engranaje
- Haga clic en el nombre del metastore para abrir la interfaz de usuario de detalles y permisos de metastore.
- Seleccione JAR/scripts de inicialización permitidos.
- Haga clic en Agregar.
Importante
Esta opción solo se muestra para usuarios con privilegios suficientes. Si no puede acceder a la interfaz de usuario de la lista de permitidos, póngase en contacto con el administrador de metastore para obtener ayuda en las bibliotecas de listas de permitidos y los scripts de inicialización.
Agregar un script de inicialización a la lista de permitidos
Complete los pasos siguientes en el cuadro de diálogo de lista de permitidos para agregar un script de inicialización a la lista de permitidos:
- En Tipo, seleccione Script de inicialización.
- En Tipo de origen, seleccione Volumen o el protocolo de almacenamiento de objetos.
- Especifique la ruta de acceso de origen que se va a agregar a la lista de permitidos. Consulte ¿Cómo se aplican los permisos en las rutas de acceso aplicadas en la lista de permitidos?
Agregar un archivo JAR a la lista de permitidos
Complete los pasos siguientes en el cuadro de diálogo de lista de permitidos para agregar un archivo JAR a la lista de permitidos:
- En Tipo, seleccione JAR.
- En Tipo de origen, seleccione Volumen o el protocolo de almacenamiento de objetos.
- Especifique la ruta de acceso de origen que se va a agregar a la lista de permitidos. Consulte ¿Cómo se aplican los permisos en las rutas de acceso aplicadas en la lista de permitidos?
Adición de coordenadas de Maven a la lista de permitidos
Importante
Antes de agregar coordenadas de Maven a la lista permitida, debe tener los permisos CAN ATTACH TO y CAN MANAGE establecidos en la computadora o servidor donde desea instalar la biblioteca. Consulte Permisos de cálculo.
Complete los pasos siguientes en el cuadro de diálogo de lista de permitidos para agregar coordenadas de Maven a la lista de permitidos:
- En Tipo, seleccione Maven.
- En Tipo de origen, seleccione Coordenadas.
- Escriba las coordenadas con el formato siguiente:
groudId:artifactId:version.- Puede incluir todas las versiones de una biblioteca mediante la lista de permitidos con el siguiente formato:
groudId:artifactId. - Puede incluir todos los artefactos de un grupo mediante la lista de permitidos con el siguiente formato:
groupId.
- Puede incluir todas las versiones de una biblioteca mediante la lista de permitidos con el siguiente formato:
¿Cómo se aplican los permisos en las rutas de acceso aplicadas en la lista de permitidos?
Puede usar la lista de permitidos para conceder acceso a archivos JAR o scripts de inicialización almacenados en volúmenes de Unity Catalog y almacenamiento de objetos. Si agrega una ruta de acceso para un directorio en lugar de un archivo, los permisos de lista de permitidos se propagan a los archivos y directorios contenidos.
La coincidencia de prefijos se usa para todos los artefactos almacenados en volúmenes de Unity Catalog o almacenamiento de objetos. Para evitar la coincidencia de prefijos en un nivel de directorio determinado, incluya una barra diagonal final (/). Por ejemplo, /Volumes/prod-libraries/ no realizará la coincidencia de prefijos para los archivos con el prefijo prod-libraries. En su lugar, todos los archivos y directorios de /Volumes/prod-libraries/ se agregan a la lista de permitidos.
Puede definir permisos en los siguientes niveles:
- Ruta de acceso base para el volumen o el contenedor de almacenamiento.
- Un directorio anidado en cualquier profundidad desde la ruta de acceso base.
- Un único archivo.
Agregar una ruta de acceso a la lista de permitidos solo significa que la ruta de acceso se puede usar para scripts de inicialización o para la instalación de JAR. Azure Databricks sigue comprobando los permisos para acceder a los datos en la ubicación especificada.
La entidad de seguridad usada debe tener permisos READ VOLUME en el volumen especificado. Consulte READ VOLUME.
En el modo de acceso dedicado (anteriormente modo de acceso de usuario único), se usa la identidad de la entidad de seguridad asignada (un usuario o grupo).
En modo de acceso estándar:
- Las bibliotecas usan la identidad del instalador de biblioteca.
- Los scripts de inicialización usan la identidad del propietario del clúster.
Nota:
El modo de acceso compartido sin aislamiento no admite volúmenes, pero usa la misma asignación de identidad que el modo de acceso estándar.
Databricks recomienda configurar todos los privilegios de almacenamiento de objetos relacionados con scripts de inicialización y bibliotecas con permisos de solo lectura. Los usuarios con permisos de escritura en estas ubicaciones pueden modificar código en archivos de biblioteca o scripts de inicialización.
Databricks recomienda usar entidades de servicio de Microsoft Entra ID para administrar el acceso a los archivos JAR o scripts de inicialización almacenados en Azure Data Lake Storage. Use la siguiente documentación vinculada para completar esta configuración:
Cree una entidad de servicio con permisos de lectura y lista en los blobs deseados. Consulte Acceso al almacenamiento mediante una entidad de servicio y Microsoft Entra ID (Azure Active Directory).
Guarde las credenciales mediante secretos. Consulte Administración de secretos.
Establezca las propiedades en la configuración de Spark y las variables de entorno al crear un clúster, como en el ejemplo siguiente:
Configuración de Spark:
spark.hadoop.fs.azure.account.auth.type.<storage-account>.dfs.core.windows.net OAuth spark.hadoop.fs.azure.account.oauth.provider.type.<storage-account>.dfs.core.windows.net org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider spark.hadoop.fs.azure.account.oauth2.client.id.<storage-account>.dfs.core.windows.net <application-id> spark.hadoop.fs.azure.account.oauth2.client.secret.<storage-account>.dfs.core.windows.net {{secrets/<secret-scope>/<service-credential-key>}} spark.hadoop.fs.azure.account.oauth2.client.endpoint.<storage-account>.dfs.core.windows.net https://login.microsoftonline.com/<tenant-id>/oauth2/tokenVariables de entorno:
SERVICE_CREDENTIAL={{secrets/<secret-scope>/<service-credential-key>}}(Opcional) Refactorice los scripts de inicialización mediante azcopy o la CLI de Azure.
Puede hacer referencia a variables de entorno establecidas durante la configuración del clúster dentro de los scripts de inicialización para pasar las credenciales almacenadas como secretos para la validación.
Nota:
Los permisos de lista de permitidos para JAR y scripts de inicialización se administran por separado. Si usa la misma ubicación para almacenar ambos tipos de objetos, debe agregar la ubicación a la lista de permitidos para cada uno de ellos.