Roles y permisos de RBAC

En esta página, se describen los roles y los permisos que usan las instancias de Cloud Data Fusion con el control de acceso basado en roles (RBAC) habilitado.

Para una aplicación de acceso detallada a nivel del espacio de nombres y niveles inferiores, usa estas y permisos del plano de datos con RBAC.

Jerarquía de recursos

Los recursos de Cloud Data Fusion tienen la siguiente jerarquía de recursos:

Jerarquía de recursos del proyecto de Cloud Data Fusion

En esta figura, se muestra la jerarquía de recursos en orden descendente (del más amplio al más estrecho): proyecto de Google Cloud, ubicación, instancia de Cloud Data Fusion y espacios de nombres. Debajo de los espacios de nombres, sin orden, hay conexiones, claves seguras canalizaciones, artefactos (como complementos, controladores y aplicaciones) y servicios de procesamiento perfiles.

Los siguientes recursos son el plano de datos de Cloud Data Fusion recursos que controlas con la API de REST o en Cloud Data Fusion Estudio: espacios de nombres, conexiones, claves seguras, canalizaciones, artefactos y procesamiento perfiles.

Roles predefinidos para el RBAC

RBAC de Cloud Data Fusion incluye varias funciones predefinidas que puedes usar:

Función de acceso a la instancia (datafusion.accessor)
Otorga a la principal acceso a una instancia de Cloud Data Fusion, pero no a ningún recurso dentro de la instancia. Usa este rol en combinación con otros roles específicos del espacio de nombres para proporcionar acceso detallado al espacio de nombres.
Rol de visualizador (datafusion.viewer)
Otorga acceso a una principal en un espacio de nombres para ver las canalizaciones, pero no a las crear o ejecutar canalizaciones.
Función de operador (datafusion.operator)
Otorga acceso a un principal en un espacio de nombres para acceder y ejecutar canalizaciones, cambiar el perfil de procesamiento, crear perfiles de procesamiento o subir artefactos. Puede realizar las mismas acciones que un desarrollador, excepto las siguientes: obtener vistas previas de las canalizaciones.
Rol de desarrollador (datafusion.developer)
Otorga acceso a una principal en un espacio de nombres para crear y modificar modelos limitados. recursos, como las canalizaciones, dentro del espacio de nombres.
Función de editor (datafusion.editor)
Otorga al principal acceso completo a todos los recursos de Cloud Data Fusion en un espacio de nombres dentro de una instancia de Cloud Data Fusion. Este rol se debe otorgar al principal además del rol de descriptor de acceso a instancias. Con este rol, el principal puede crear, borrar y modificar recursos en el espacio de nombres.
Función de administrador de instancias (datafusion.admin)
Otorga acceso a todos los recursos dentro de una instancia de Cloud Data Fusion. Se asigna a través de IAM. No se asigna a nivel del espacio de nombres a través del RBAC.
Operación datafusion.accessor datafusion.viewer datafusion.operator datafusion.developer datafusion.editor datafusion.admin
Instancias
Instancia de acceso
Espacios de nombres
Crear espacio de nombres *
Acceso al espacio de nombres con acceso explícito otorgado
Acceso al espacio de nombres sin acceso explícito otorgado *
Edita el espacio de nombres
Borrar espacios de nombres
Cuenta de servicio del espacio de nombres
Agregar cuenta de servicio
Editar cuenta de servicio
Quitar la cuenta de servicio
Usar la cuenta de servicio
RBAC
Otorgar o revocar permisos para otros principales en el espacio de nombres *
Programas
Crear programa
Mirar el programa
Cambiar programa
Compute profiles
Crea perfiles de procesamiento
Ver perfiles de procesamiento
Cómo editar perfiles de procesamiento
Borrar perfiles de procesamiento
Conexiones
Crear conexiones
Ver conexiones
Edita las conexiones
Borrar conexiones
Usar conexiones
Canalizaciones
Crear canalizaciones
Ver canalizaciones
Editar canalizaciones
Borrar canalizaciones
Cómo obtener una vista previa de las canalizaciones
Implementa canalizaciones
Ejecutar canalizaciones
Llaves seguras
Crea claves seguras
Ver claves seguras
Borra claves seguras
Etiquetas
Crear etiquetas
Visualiza etiquetas
Borrar etiquetas
Centro de Cloud Data Fusion
Implementa complementos
Administración de control de código fuente
Configura el repositorio de control de código fuente
Sincroniza canalizaciones desde un espacio de nombres
Línea de descendencia
Ver linaje
Registros
Visualiza registros

* El principal debe tener el rol de IAM de administrador de Data Fusion, no el rol de RBAC de administrador de instancias.

Para obtener una lista completa de los permisos incluidos en el rol predefinido de Cloud Data Fusion, consulta Funciones predefinidas de Cloud Data Fusion.

Funciones personalizadas para RBAC

Algunos casos de uso no se pueden implementar con los roles predefinidos de Cloud Data Fusion. En estos casos, crea un rol personalizado.

Ejemplos

En los siguientes ejemplos, se describe cómo crear roles personalizados para la RBAC:

  • Para crear un rol personalizado que solo otorgue acceso a las claves seguras dentro de espacio de nombres, crea un rol personalizado con el datafusion.namespaces.get y Permisos datafusion.secureKeys.*.

  • Para crear un rol personalizado que otorgue acceso de solo lectura a las claves seguras, crea un rol personalizado con los permisos datafusion.namespaces.get, datafusion.secureKeys.getSecret y datafusion.secureKeys.list.

Permisos para acciones comunes

Un solo permiso predefinido puede no ser suficiente para realizar la acción correspondiente. Por ejemplo, para actualizar las propiedades del espacio de nombres, puedes también necesitan el permiso datafusion.namespaces.get. En la siguiente tabla, se describe acciones comunes realizadas dentro de una instancia de Cloud Data Fusion y el los permisos de IAM necesarios:

Acción Permiso necesario
Accede a una instancia datafusion.instances.get
Cree un espacio de nombres datafusion.namespaces.create
Cómo obtener un espacio de nombres datafusion.namespaces.get
Actualiza los metadatos del espacio de nombres (como las propiedades)
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Borrar espacio de nombres (solo con el restablecimiento irrecuperable habilitado)
  • datafusion.namespaces.get
  • datafusion.namespaces.delete
Ver permisos en el espacio de nombres datafusion.namespaces.getIamPolicy
Otorga permisos en el espacio de nombres datafusion.namespaces.setIamPolicy
Cómo extraer canalizaciones de la configuración de SCM del espacio de nombres
  • datafusion.namespaces.get
  • datafusion.namespaces.readRepository
  • datafusion.pipelines.create
Envía canalizaciones al repositorio de SCM para el espacio de nombres
  • datafusion.namespaces.get
  • datafusion.namespaces.writeRepository
Cómo obtener la configuración de SCM del espacio de nombres datafusion.namespaces.get
Actualizar la configuración de SCM del espacio de nombres datafusion.namespaces.updateRepositoryMetadata
Configura una cuenta de servicio para un espacio de nombres
  • datafusion.namespaces.get
  • datafusion.namespaces.setServiceAccount
Anula la configuración de una cuenta de servicio para un espacio de nombres
  • datafusion.namespaces.get
  • datafusion.namespaces.unsetServiceAccount
Aprovisiona una credencial de cuenta de servicio para un espacio de nombres datafusion.namespaces.provisionCredential
Ver un borrador de la canalización datafusion.namespaces.get
Crea o borra un borrador de canalización
  • datafusion.namespaces.get
  • datafusion.namespaces.update
Cómo enumerar perfiles de Compute datafusion.profiles.list
Crea un perfil de Compute datafusion.profiles.create
Ve un perfil de Compute datafusion.profiles.get
Edita un perfil de Compute datafusion.profiles.update
Borra un perfil de Compute datafusion.profiles.delete
Crea una conexión
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.create
Ver una conexión
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.get
Cómo editar una conexión
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.update
Borrar una conexión
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.delete
Explora, prueba o consulta las especificaciones de conexión
  • datafusion.namespaces.get
  • datafusion.pipelineConnections.use
Enumerar canalizaciones datafusion.namespaces.get
Creación de la canalización
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Ver canalización
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Edita la canalización
  • datafusion.namespaces.get
  • datafusion.pipelines.create
Edita las propiedades de la canalización
  • datafusion.namespaces.get
  • datafusion.pipelines.update
Borrar canalizaciones
  • datafusion.namespaces.get
  • datafusion.pipelines.delete
Canalización de vista previa datafusion.pipelines.preview
Ejecutar canalizaciones datafusion.pipelines.execute
Crear programa datafusion.pipelines.execute
Ver programación
  • datafusion.namespaces.get
  • datafusion.pipelines.get
Cambiar programa datafusion.pipelines.execute
Enumerar claves seguras
  • datafusion.namespaces.get
  • datafusion.secureKeys.list
Crea claves de seguridad
  • datafusion.namespaces.get
  • datafusion.secureKeys.update
Ver claves seguras
  • datafusion.namespaces.get
  • datafusion.secureKeys.getSecret
Borra claves seguras
  • datafusion.namespaces.get
  • datafusion.secureKeys.delete
Enumerar artefactos*
  • datafusion.namespaces.get
  • datafusion.artifacts.list
Crea un artefacto*
  • datafusion.namespaces.get
  • datafusion.artifacts.create
  • datafusion.artifacts.update
Obtener un artefacto*
  • datafusion.namespaces.get
  • datafusion.artifacts.get
Borrar un artefacto*
  • datafusion.namespaces.get
  • datafusion.artifacts.delete
Preferencias, etiquetas y metadatos Las preferencias, las etiquetas y los metadatos se establecen a nivel del recurso en particular (datafusion.RESOURCE.update).
Permisos del conjunto de datos (obsoleto) datafusion.namespaces.update

* Los artefactos, como los complementos y los controladores, son elementos que subes a Cloud Data Fusion para desarrollar canalizaciones.

¿Qué sigue?

  • Obtén más información sobre RBAC en Cloud Data Fusion.