Información general sobre el control de acceso basado en roles

En esta página se describe la autorización pormenorizada con el control de acceso basado en roles (RBAC) en Cloud Data Fusion.

Si habilitas el control de acceso basado en roles en tus instancias de Cloud Data Fusion, podrás controlar el acceso a las instancias y los espacios de nombres, por ejemplo, quién puede acceder a los recursos de Cloud Data Fusion y qué puede hacer con ellos.

Casos prácticos de RBAC

El control de acceso basado en roles proporciona aislamiento a nivel de espacio de nombres en una sola instancia de Cloud Data Fusion. Se recomienda en los siguientes casos prácticos:

  • Ayudamos a minimizar el número de instancias que usa tu organización.
  • Que varios desarrolladores, equipos o unidades de negocio usen una sola instancia de Cloud Data Fusion.

Con el control de acceso basado en roles de Cloud Data Fusion, las organizaciones pueden hacer lo siguiente:

  • Permite que un usuario solo ejecute una canalización en un espacio de nombres, pero no que modifique artefactos ni perfiles de computación de tiempo de ejecución.
  • Permite que un usuario solo vea la canalización, pero no que la modifique ni la ejecute.
  • Permite que un usuario cree, implemente y ejecute una canalización.

Recomendación: Aunque uses el control de acceso basado en roles, para mantener el aislamiento, la seguridad y la estabilidad del rendimiento, utiliza proyectos e instancias independientes para los entornos de desarrollo y producción.

Limitaciones

  • Se puede conceder a un usuario uno o varios roles a nivel de instancia o de espacio de nombres.
  • El control de acceso basado en roles solo está disponible en la edición Enterprise de Cloud Data Fusion.
  • Número de espacios de nombres: no hay un límite estricto en el número de espacios de nombres por instancia.
  • Para consultar el número máximo de usuarios simultáneos en una instancia con RBAC habilitado, consulta la página Precios.
  • Cuando se usan tokens de acceso de OAuth de cuentas de servicio para acceder a instancias con RBAC de la versión 6.5, se deben especificar los siguientes permisos, especialmente el permiso userinfo.email. Sin ellos, se producirán errores de permiso denegado.
    • https://www.googleapis.com/auth/userinfo.email
    • https://www.googleapis.com/auth/cloud-platform o https://www.googleapis.com/auth/servicecontrol

Role assignments (Asignaciones de roles)

Una asignación de rol consta de tres elementos: principal, definición de rol y ámbito.

Principal

Asigna roles a principales para cambiar su acceso a los recursos de Cloud Data Fusion.

Definición del rol

Un rol contiene un conjunto de permisos que te permiten realizar acciones específicas en los recursos deGoogle Cloud .

Cloud Data Fusion proporciona varios roles predefinidos que puedes usar.

Ejemplos:

  • El rol Administrador de instancias (datafusion.admin) permite a las entidades crear y eliminar espacios de nombres, así como conceder permisos.
  • El rol de desarrollador (datafusion.developer) permite a las entidades crear y eliminar flujos de procesamiento, desplegar flujos de procesamiento y ejecutar vistas previas.

Ámbito

El ámbito es el conjunto de recursos a los que se aplica el acceso. Cuando asignas un rol, puedes limitar aún más las acciones permitidas definiendo un ámbito, como una instancia o un espacio de nombres. Esto resulta útil si quieres asignar el rol de desarrollador a alguien, pero solo para un espacio de nombres.

Recomendaciones de seguridad

Adoptar un modelo de seguridad y adaptarlo a las necesidades y los requisitos de tu organización puede ser complicado. Las siguientes recomendaciones tienen como objetivo ayudarte a simplificar el proceso de adopción del modelo de control de acceso basado en roles de Cloud Data Fusion:

  • El rol Administrador de instancia debe concederse con precaución. Este rol permite el acceso completo a una instancia y a todos sus recursos subyacentes de Cloud Data Fusion. Un principal con este rol puede conceder permisos a otros usuarios mediante la API REST.
  • El rol de administrador de instancias no se debe conceder cuando los principales necesiten tener acceso a espacios de nombres individuales de una instancia de Cloud Data Fusion. En su lugar, asigna el rol Instance Accessor con uno de los roles Viewer, Developer, Operator o Editor concedidos en un subconjunto de los espacios de nombres.
  • Es seguro asignar primero el rol Accesor de instancia, ya que permite que las entidades accedan a la instancia, pero no les concede acceso a ningún recurso de la instancia. Este rol se suele usar junto con uno de los roles Viewer, Developer, Operator o Editor para dar acceso a uno o a un subconjunto de los espacios de nombres de una instancia.
  • Se recomienda asignar el rol Lector a los usuarios o grupos de Google que quieran consultar por sí mismos el estado de las tareas en ejecución o ver las canalizaciones o los registros con instancias de Cloud Data Fusion. Por ejemplo, los consumidores de informes diarios que quieran saber si se ha completado el procesamiento.
  • El rol de desarrollador se recomienda para los desarrolladores de ETL que se encargan de crear, probar y gestionar las canalizaciones.
  • Se recomienda asignar el rol de operador a los usuarios que proporcionan servicios de administrador de operaciones o de DevOps. Pueden realizar todas las acciones que pueden llevar a cabo los desarrolladores (excepto previsualizar las canalizaciones), así como implementar artefactos y gestionar perfiles de computación.
  • El rol Editor de un espacio de nombres es un rol con privilegios que da al usuario o al grupo de Google acceso completo a todos los recursos del espacio de nombres. El rol de editor se puede considerar como la unión de los roles de desarrollador y operador.
  • Los operadores y los administradores deben tener cuidado al instalar complementos o artefactos no fiables, ya que pueden suponer un riesgo para la seguridad.

Solución de problemas

En esta sección de la página se explica cómo resolver problemas relacionados con el control de acceso basado en roles en Cloud Data Fusion.

Una entidad que tenga el rol Lector de Cloud Data Fusion en un espacio de nombres de RBAC puede editar las canalizaciones.

El acceso se basa en una combinación de roles de gestión de identidades y accesos y de control de acceso basado en roles. Los roles de gestión de identidades y accesos tienen prioridad sobre los roles de control de acceso basado en roles. Comprueba si la cuenta principal tiene los roles de gestión de identidades y accesos Editor de proyectos o Administrador de Cloud Data Fusion.

Una entidad que tenga el rol Administrador de instancias en el control de acceso basado en roles no puede ver las instancias de Cloud Data Fusion en la Google Cloud consola

Hay un problema conocido en Cloud Data Fusion que provoca que las entidades con el rol Administrador de instancias no puedan ver las instancias en la consola. Google Cloud Para solucionar el problema, concede al principal el rol Lector de proyectos o uno de los roles de gestión de identidades y accesos de Cloud Data Fusion, además de convertirlo en administrador de una instancia. De esta forma, se concede acceso de lectura al principal para todas las instancias del proyecto.

Impedir que una principal vea espacios de nombres en los que no tiene ningún rol

Para evitar que una entidad vea espacios de nombres en los que no tiene ningún rol, no debe tener el rol Lector de proyectos ni ninguno de los roles de gestión de identidades y accesos de Cloud Data Fusion. En su lugar, solo debes asignar roles de RBAC al principal en el espacio de nombres en el que necesite operar.

La principal con este tipo de acceso no verá la lista de instancias de Cloud Data Fusion en la consola. Google Cloud En su lugar, proporciónales un enlace directo a la instancia, como el siguiente: https://INSTANCE_NAME-PROJECT_ID.REGION_NAME.datafusion.googleusercontent.com/

Cuando el principal abre la instancia, Cloud Data Fusion muestra una lista de espacios de nombres en los que se le ha concedido el rol de RBAC.

Asignar el rol de Accesor de Cloud Data Fusion a una cuenta principal

El rol Accesor se asigna implícitamente a una entidad cuando se le asigna cualquier otro rol de control de acceso basado en roles para cualquier instancia de Cloud Data Fusion. Para verificar si una entidad tiene ese rol en una instancia concreta, consulta el Analizador de políticas de gestión de identidades y accesos.

Siguientes pasos