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 esta página se describe cómo crear credenciales de almacenamiento en el catálogo de Unity para conectarse a Azure Data Lake Storage. Para obtener información sobre otras opciones de almacenamiento en la nube compatibles con el catálogo de Unity, consulte Opciones de almacenamiento en la nube compatibles con Unity Catalog.
Una credencial de almacenamiento contiene una credencial de nube a largo plazo que proporciona acceso al almacenamiento en la nube. Puede hacer referencia a las credenciales de almacenamiento, junto con la ruta de acceso de almacenamiento en la nube, al crear ubicaciones externas en el catálogo de Unity para controlar el acceso al almacenamiento externo.
Creación de una credencial de almacenamiento que acceda a Azure Data Lake Storage
Puede usar una identidad administrada de Azure o una entidad de servicio como identidad de autorización de acceso al contenedor de almacenamiento. Se recomienda encarecidamente el uso de identidades administradas. Tienen la ventaja de permitir que Unity Catalog acceda a las cuentas de almacenamiento protegidas por reglas de red, lo que no es posible mediante identidades de servicio, y además eliminan la necesidad de administrar y rotar secretos. Si desea usar una entidad de servicio, consulte Creación de un almacenamiento administrado de Unity Catalog mediante una entidad de servicio (heredada).
Requisitos
En Azure Databricks:
- Área de trabajo de Azure Databricks habilitada para Unity Catalog.
- Privilegio
CREATE STORAGE CREDENTIALen el metastore de Unity Catalog asociado al área de trabajo. Los administradores de cuentas y los administradores de metastore tienen este privilegio de manera predeterminada.
En el inquilino de Azure:
Un contenedor de almacenamiento de Azure Data Lake Storage. Para evitar cargos de salida, debe estar en la misma región que el área de trabajo desde la que desea acceder a los datos.
La cuenta de almacenamiento de Azure Data Lake Storage debe tener un espacio de nombres jerárquico.
Colaborador o propietario de un grupo de recursos de Azure.
Propietario o usuario con el rol RBAC de Administrador de acceso de usuario de Azure en la cuenta de almacenamiento.
Creación de la credencial de almacenamiento
En Azure Portal, cree un conector de acceso de Azure Databricks y asígnele permisos en el contenedor de almacenamiento al que desea acceder. Para ello, siga instrucciones que encontrará en Configuración de una identidad administrada para el catálogo de Unity.
Los conectores de acceso de Azure Databricks son recursos de Azure de primera entidad que le permiten conectar identidades administradas a una cuenta de Azure Databricks. Para agregar la credencial de almacenamiento, debe tener el rol Colaborador o superior en el recurso del conector de acceso en Azure.
Anote el identificador de recurso del conector de acceso.
Inicie sesión en el área de trabajo de Azure Databricks habilitada para el catálogo de Unity como usuario que tenga el privilegio
CREATE STORAGE CREDENTIAL.Los roles de administrador de metastore y administrador de cuentas incluyen este privilegio.
Haga clic en
Catálogo.
Haga clic en el botón Datos >externos, vaya a la pestaña Credenciales y seleccione Crear credencial.
Seleccione Credencial de almacenamiento.
Seleccione un tipo de credencial de Azure Managed Identity.
Escriba un nombre para la credencial y escriba el identificador de recurso del conector de acceso en el formato :
/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>(Opcional) Si creó el conector de acceso mediante una identidad administrada asignada por el usuario, escriba el id. de recurso de la identidad administrada en el campo Id. de identidad administrada asignada por el usuario con el siguiente formato:
/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>(Opcional) Si desea que los usuarios tengan acceso de solo lectura a las ubicaciones externas que usan esta credencial de almacenamiento, seleccione Solo lectura. Para obtener más información, consulte Marcar una credencial de almacenamiento como de solo lectura.
Haga clic en Crear.
(Opcional) Enlace la credencial de almacenamiento a áreas de trabajo específicas.
De forma predeterminada, cualquier usuario con privilegios puede usar la credencial de almacenamiento en cualquier área de trabajo asociada al metastore. Si desea permitir el acceso solo desde áreas de trabajo específicas, vaya a la pestaña Áreas de trabajo y asigne áreas de trabajo. Consulte (Opcional) Asignación de una credencial de almacenamiento a áreas de trabajoespecíficas.
Cree una ubicación externa que haga referencia a esta credencial de almacenamiento.
(Opcional) Asignación de una credencial de almacenamiento a áreas de trabajo específicas
De forma predeterminada, se puede acceder a una credencial de almacenamiento desde todas las áreas de trabajo del metastore. Esto significa que si a un usuario se le ha concedido un privilegio (por CREATE EXTERNAL LOCATIONejemplo, ) en esa credencial de almacenamiento, puede ejercer ese privilegio desde cualquier área de trabajo asociada al metastore. Si usa áreas de trabajo para aislar el acceso a datos de usuario, puede permitir el acceso a una credencial de almacenamiento solo desde áreas de trabajo específicas. Esta característica se conoce como enlace del área de trabajo o aislamiento de credenciales de almacenamiento.
Un caso de uso típico para enlazar una credencial de almacenamiento a áreas de trabajo específicas es el escenario en el que un administrador de la nube configura una credencial de almacenamiento mediante una credencial de cuenta en la nube de producción y quiere asegurarse de que los usuarios de Azure Databricks usen esta credencial para crear ubicaciones externas solo en el área de trabajo de producción.
Para obtener más información sobre el enlace del área de trabajo, vea (Opcional) Asignar una ubicación externa a áreas de trabajo específicas y Limitar el acceso de catálogo a áreas de trabajo específicas.
Nota:
Se hace referencia a los enlaces del área de trabajo cuando se ejercen los privilegios con respecto a las credenciales de almacenamiento. Por ejemplo, si un usuario crea una ubicación externa mediante una credencial de almacenamiento, el enlace del área de trabajo en la credencial de almacenamiento solo se comprueba cuando se crea la ubicación externa. Una vez creada la ubicación externa, funcionará independientemente de los enlaces del área de trabajo configurados en la credencial de almacenamiento.
Enlace de una credencial de almacenamiento a una o varias áreas de trabajo
Para asignar una credencial de almacenamiento a áreas de trabajo específicas, puede usar el Explorador de catálogos o la CLI de Databricks.
Permisos necesarios: administrador de metastore, propietario de credenciales de almacenamiento o MANAGE en la credencial de almacenamiento.
Nota:
Los administradores de metastore pueden ver todas las credenciales de almacenamiento en un metastore mediante el Explorador de catálogos y los propietarios de credenciales de almacenamiento pueden ver todas las credenciales de almacenamiento que poseen en un metastore, independientemente de si la credencial de almacenamiento está asignada al área de trabajo actual. Las credenciales de almacenamiento que no están asignadas al área de trabajo aparecen atenuadas.
Explorador de catálogo
Inicie sesión en un área de trabajo vinculada al metastore.
En la barra lateral, haga clic en
Catálogo.
Haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
Seleccione la credencial de almacenamiento y vaya a la pestaña Áreas de trabajo.
En la pestaña Áreas de trabajo, desactive la casilla Todas las áreas de trabajo tienen acceso.
Si el catálogo ya está enlazado a una o varias áreas de trabajo, esta casilla ya está desactivada.
Haga clic en Asignar a áreas de trabajo y escriba o busque las áreas de trabajo que desea asignar.
Para revocar el acceso, vaya a la pestaña Áreas de trabajo, seleccione el área de trabajo y haga clic en Revocar. Para permitir el acceso desde todas las áreas de trabajo, active la casilla Todas las áreas de trabajo tienen acceso.
Interfaz de línea de comandos (CLI)
Hay dos grupos de comandos de la CLI de Databricks y dos pasos necesarios para asignar una credencial de almacenamiento a un espacio de trabajo.
En los ejemplos siguientes, reemplace <profile-name> con el nombre del perfil de configuración de autenticación de Azure Databricks. Debe incluir el valor de un token de acceso personal, además del nombre de la instancia del área de trabajo y el identificador de área de trabajo donde generó el token de acceso personal. Consulte Autenticación de token de acceso personal (en desuso).
Use el comando del grupo
storage-credentialsdeupdatepara establecer las credenciales de almacenamiento deisolation modeaISOLATED.databricks storage-credentials update <my-storage-credential> \ --isolation-mode ISOLATED \ --profile <profile-name>El valor predeterminado de
isolation-modeesOPENpara todas las áreas de trabajo asociadas al metastore.Utiliza el comando
workspace-bindingsdel grupoupdate-bindingspara asignar los espacios de trabajo a la credencial de almacenamiento.databricks workspace-bindings update-bindings storage-credential <my-storage-credential> \ --json '{ "add": [{"workspace_id": <workspace-id>}...], "remove": [{"workspace_id": <workspace-id>}...] }' --profile <profile-name>Use las propiedades
"add"y"remove"para agregar o quitar enlaces de área de trabajo.Nota:
El enlace de solo lectura (
BINDING_TYPE_READ_ONLY) no está disponible para las credenciales de almacenamiento. Por lo tanto, no hay ninguna razón para establecerbinding_typepara el enlace de credenciales de almacenamiento.
Para enumerar todas las asignaciones de área de trabajo de una credencial de almacenamiento, use el workspace-bindings comando del grupo de get-bindings comandos:
databricks workspace-bindings get-bindings storage-credential <my-storage-credential> \
--profile <profile-name>
Desenlace una credencial de almacenamiento de un área de trabajo
Las instrucciones para revocar el acceso del área de trabajo a una credencial de almacenamiento mediante el Explorador de catálogos o el grupo de comandos de la CLI de workspace-bindings se incluyen en Enlazar una credencial de almacenamiento a una o varias áreas de trabajo.
Pasos siguientes
Vea, actualice, elimine y conceda a otros usuarios permiso para usar una credencial de almacenamiento. Consulte Administración de credenciales de almacenamiento.
Defina ubicaciones externas mediante una credencial de almacenamiento. Consulte Creación de una ubicación externa para conectar el almacenamiento en la nube a Azure Databricks.