El control de acceso en Cloud Build se controla con Identity and Access Management (IAM). IAM te permite crear y administrar permisos para los recursos de Google Cloud. Cloud Build proporciona un conjunto específico de roles de IAM predefinidos, en el que cada función contiene un conjunto de permisos. Puedes usar estos roles para otorgar acceso más detallado a recursos específicos de Google Cloud y evitar el acceso no deseado a otros recursos. IAM te permite adoptar el principio de seguridad de menor privilegio, de manera que puedes otorgar solo el acceso necesario a tus recursos.
En esta página, se describen las funciones y los permisos de Cloud Build.
Funciones predefinidas de Cloud Build
Con la IAM, cada método de API en la API de Cloud Build requiere que la identidad que realiza la solicitud a la API tenga los permisos adecuados para usar el recurso. Para otorgar los permisos, se configuran políticas que asignan funciones a un principal, un grupo o una cuenta de servicio. Puedes otorgar varias funciones a una principal en el mismo recurso.
En la tabla que se muestra a continuación, se presentan las funciones y los permisos de IAM de Cloud Build que cuentan con las características siguientes:
Función | Descripción | Permisos |
---|---|---|
Nombre: roles/cloudbuild.builds.viewer Título: Visualizador de Cloud Build |
Puede ver Cloud Build
recursos |
cloudbuild.builds.get
|
Nombre: roles/cloudbuild.builds.editor Título: Editor de Cloud Build |
Control total de Cloud Build
recursos |
cloudbuild.builds.create
|
Nombre: roles/cloudbuild.builds.approver Título: Responsable de aprobación de Cloud Build |
Proporcionar acceso para aprobar o
rechazar compilaciones pendientes |
cloudbuild.builds.approve
|
Nombre: roles/cloudbuild.builds.builder Título: Cuenta de servicio heredada de Cloud Build |
Cuando habilitas La API de Cloud Build para un proyecto, la cuenta de servicio heredada de Cloud Build se crea automáticamente en el proyecto y se le otorga este rol para los recursos en el proyecto. La cuenta de servicio heredada de de Cloud Build usa este rol solo como se requiere para realizar acciones cuando ejecuta tu compilación. |
Para obtener una lista de los permisos que contiene este rol, consulta Cuenta de servicio de Cloud Build. |
Nombre: roles/cloudbuild.integrations.viewer Título: Visualizador de integraciones de Cloud Build |
Puede visualizar Cloud Build
Conexiones de host |
cloudbuild.integrations.get
|
Nombre:roles/cloudbuild.integrations.editor Título: Editor de integraciones de Cloud Build |
Control de edición de Cloud Build
Conexiones de host |
cloudbuild.integrations.get
|
Nombre:roles/cloudbuild.integrations.owner Título: Propietario de integraciones de Cloud Build |
Control total de Cloud Build
Conexiones de host |
cloudbuild.integrations.create
|
Nombre:roles/cloudbuild.connectionViewer Título: Visualizador de conexiones de Cloud Build |
Puede ver y enumerar conexiones
y repositorios |
resourcemanager.projects.get
|
Nombre:roles/cloudbuild.connectionAdmin Título: Administrador de conexiones de Cloud Build |
Puede administrar conexiones
y repositorios |
resourcemanager.projects.get
|
Nombre:roles/cloudbuild.readTokenAccessor Título: Descriptor de acceso de tokens de solo lectura de Cloud Build |
Puede ver la conexión, sus repositorios
y acceder a su token de solo lectura |
cloudbuild.connections.get
|
Nombre:roles/cloudbuild.tokenAccessor Título: Acceso a tokens de Cloud Build |
Puede ver la conexión y sus repositorios.
y accedan a sus tokens de solo lectura |
cloudbuild.connections.get
|
Nombre: roles/cloudbuild.workerPoolOwner Título: Propietario del grupo de trabajadores de Cloud Build |
Control total del grupo privado | cloudbuild.workerpools.create
|
Nombre:roles/cloudbuild.workerPoolEditor Título: Editor de grupo de trabajadores de Cloud Build |
Puede actualizar grupos privados | cloudbuild.workerpools.get
|
Nombre: roles/cloudbuild.workerPoolViewer Título: Visualizador de grupos de trabajadores de Cloud Build |
Puede ver grupos privados | cloudbuild.workerpools.get
|
Nombre: roles/cloudbuild.workerPoolUser Título: Usuario de grupo de trabajadores de Cloud Build |
Puede ejecutar compilaciones en el grupo privado. | cloudbuild.workerpools.use |
Además de las funciones predefinidas de Cloud Build mencionadas, las funciones básicas de visualizador, editor y propietario también incluyen permisos relacionados con Cloud Build. Sin embargo, te recomendamos otorgar funciones predefinidas siempre que sea posible para cumplir con el principio de privilegio mínimo de seguridad.
En la siguiente tabla, se enumeran las funciones básicas y las funciones de IAM de Cloud Build que incluyen.
Función | incluye función: |
---|---|
roles/viewer |
roles/cloudbuild.builds.viewer , roles/cloudbuild.integrations.viewer |
roles/editor |
roles/cloudbuild.builds.editor , roles/cloudbuild.integrations.editor |
roles/owner |
roles/cloudbuild.integrations.owner |
Permisos
En la tabla siguiente, se enumeran los permisos que deben tener el emisor para llamar a cada método:
Método de API | Permiso necesario | Título de la función |
---|---|---|
builds.create() triggers.create() triggers.patch() triggers.delete() triggers.run() |
cloudbuild.builds.create |
Editor de Cloud Build |
builds.cancel() |
cloudbuild.builds.update |
Editor de Cloud Build |
builds.get() triggers.get() |
cloudbuild.builds.get |
Editor de Cloud Build, Lector de Cloud Build |
builds.list() triggers.list() |
cloudbuild.builds.list |
Editor de Cloud Build, Lector de Cloud Build |
Permisos para ver los registros de compilación
Para ver los registros de compilación, necesitas permisos adicionales según si almacenas los registros de compilación en el bucket predeterminado de Cloud Storage o en un bucket de Cloud Storage especificado por el usuario. Para obtener más información sobre los permisos necesarios para ver los registros de compilación, consulta Almacena y visualiza registros de compilación.
¿Qué sigue?
- Más información sobre la cuenta de servicio de Cloud Build.
- Obtén más información para configurar el acceso a los recursos de Cloud Build.
- Obtén más información para configurar el acceso a la cuenta de servicio de Cloud Build.
- Obtén información sobre IAM.