Administración de credenciales de servicio
Importante
Esta característica está en versión preliminar pública.
En este artículo se describe cómo enumerar, ver, actualizar, conceder permisos y eliminar credenciales de servicio, que son objetos protegibles del catálogo de Unity que permiten controlar el acceso a servicios en la nube externos.
Consulte también:
- Para obtener una introducción y aprender a crear credenciales de servicio: Administración del acceso a servicios en la nube externos mediante credenciales de servicio
- Para obtener información sobre cómo hacer referencia a las credenciales del servicio en el código y especificar una credencial de servicio predeterminada para un recurso de proceso: use las credenciales de servicio del catálogo de Unity para conectarse a servicios en la nube externos.
Antes de empezar
Para realizar las tareas descritas en este artículo, debe cumplir los siguientes requisitos:
- Un área de trabajo de Azure Databricks habilitada para Unity Catalog.
- Para enumerar o ver una credencial de servicio, debe tener uno de los siguientes privilegios o roles:
BROWSE
privilegios en el catálogo primarioCREATE SERVICE CREDENTIAL
en la tienda de metadatosACCESS
en la credencial del servicio- Propietario de la credencial del servicio
- Administrador de metastore
- Para realizar cualquiera de las demás tareas enumeradas en este artículo, debe ser el propietario de la credencial del servicio o un administrador de metastore.
- Si usa comandos SQL para enumerar, ver o actualizar la credencial del servicio, necesita proceso en Databricks Runtime 15.4 LTS o superior. No hay ningún requisito de versión de Databricks Runtime si usa el Explorador de catálogos o la API REST.
Enumerar las credenciales del servicio
Para ver la lista de todas las credenciales de servicio en un metastore, puede usar el Explorador de catálogos o un comando SQL.
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Ordene las credenciales por propósito (ALMACENAMIENTO o SERVICIO).
SQL
Ejecute el siguiente comando en un cuaderno.
SHOW SERVICE CREDENTIALS;
Visualización de una credencial de servicio
Para ver las propiedades de una credencial de servicio, puede usar el Explorador de catálogos o un comando SQL.
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Haga clic en el nombre de una credencial de servicio para ver sus propiedades.
SQL
Ejecute el siguiente comando en un cuaderno. Reemplace <credential-name>
por el nombre de la credencial.
DESCRIBE SERVICE CREDENTIAL <credential-name>;
Mostrar concesiones en una credencial de servicio
Para mostrar concesiones en una credencial de servicio, use un comando como el siguiente. También puede filtrar los resultados para mostrar únicamente los permisos concedidos con relación a la entidad de seguridad especificada:
SHOW GRANTS [<principal>] ON SERVICE CREDENTIAL <service-credential-name>;
Reemplace los valores de marcador de posición:
<principal>
: la dirección de correo electrónico del usuario de nivel de cuenta o el nombre del grupo de nivel de cuenta al que se concedió el permiso.<service-credential-name>
: el nombre de una credencial de servicio.
Nota:
Si un grupo o nombre de usuario contiene un espacio o @
símbolo, use tics atrás alrededor de él (no apóstrofos). Por ejemplo
, equipo
financiero.
Concesión de permisos para usar una credencial de servicio para acceder a un servicio en la nube externo
Para conceder permiso para usar una credencial de servicio para acceder a un servicio en la nube externo, complete los pasos siguientes. Puede usar el Explorador de catálogos o comandos SQL:
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Haga clic en el nombre de una credencial de servicio para abrir la página de detalles.
- Haga clic en Permisos.
- Para conceder permiso a usuarios o grupos, seleccione cada identidad y, luego, haga clic en Conceder.
- Seleccione ACCESS para conceder la capacidad de usar la credencial de servicio para acceder a un servicio o servicios en la nube externos.
- Seleccione CREATE CONNECTION (CREAR CONEXIÓN ) para conceder la capacidad de crear una conexión de federación de Lakehouse en el catálogo de Unity mediante esta credencial de servicio. Consulte Administración de conexiones para la federación de Lakehouse.
- Para revocar permisos a usuarios o grupos, seleccione de cada identidad y, luego, haga clic en Revocar.
SQL
Para conceder acceso, ejecute uno de los siguientes comandos en un cuaderno y reemplace los valores de marcador de posición:
<principal>
: dirección de correo electrónico del usuario (o nombre del grupo) de nivel de cuenta al que se debe conceder el permiso.<service-credential-name>
: el nombre de una credencial de servicio.
Nota:
Si un grupo o nombre de usuario contiene un espacio, guión (-
) o @
símbolo, use tics atrás alrededor de él (no apóstrofos). Por ejemplo: `finance team`.
GRANT ACCESS ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;
Si quiere conceder la capacidad de crear una conexión de federación de Lakehouse en el catálogo de Unity mediante esta credencial de servicio, use lo siguiente:
GRANT CREATE CONNECTION ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;
Para revocar el acceso, reemplace por GRANT
REVOKE
en estos ejemplos.
Cambiar el propietario de una credencial de servicio
El creador de una credencial de servicio es su propietario inicial. Para cambiar el propietario a otro usuario o grupo de nivel de cuenta, puede usar el Explorador de catálogos o un comando SQL.
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Haga clic en el nombre de una credencial de servicio para abrir el cuadro de diálogo de edición.
- Haga clic junto a Propietario.
- Escriba para buscar una entidad de seguridad y selecciónela.
- Haga clic en Save(Guardar).
SQL
Ejecute el siguiente comando en un cuaderno. Reemplace los valores de marcador de posición:
<credential-name>
: nombre de la credencial.<principal>
: dirección de correo electrónico de un usuario de nivel de cuenta o nombre de un grupo de nivel de cuenta.
ALTER SERVICE CREDENTIAL <credential-name> OWNER TO <principal>;
Cambiar el nombre de una credencial de servicio
Para cambiar el nombre de una credencial de servicio, puede usar el Explorador de catálogos o un comando SQL.
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Haga clic en el nombre de una credencial de servicio para abrir el cuadro de diálogo de edición.
- Cambie el nombre de la credencial del servicio y guárdelo.
SQL
Ejecute el siguiente comando en un cuaderno. Reemplace los valores de marcador de posición:
<credential-name>
: nombre de la credencial.<new-credential-name>
: nuevo nombre de la credencial.
ALTER SERVICE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;
Eliminación de una credencial de servicio
Para eliminar (quitar) una credencial de servicio, debe ser su propietario. Para eliminar una credencial de servicio, puede usar el Explorador de catálogos o un comando SQL.
Explorador de catálogos
- En la barra lateral, haga clic en Catálogo.
- En la página Acceso rápido, haga clic en el botón Datos >externos y vaya a la pestaña Credenciales.
- Haga clic en el nombre de una credencial de servicio para abrir el cuadro de diálogo de edición.
- Haga clic en el botón Eliminar .
SQL
Ejecute el siguiente comando en un cuaderno. Reemplace <credential-name>
por el nombre de la credencial. Las partes del comando que están entre corchetes son opcionales.
IF EXISTS
no devuelve un error si la credencial no existe.
DROP SERVICE CREDENTIAL [IF EXISTS] <credential-name>;