Configura el acceso a la cuenta de servicio de Cloud Build

Cloud Build usa una cuenta de servicio especial para ejecutar compilaciones a tu nombre. Cuando habilitas la API de Cloud Build en un proyecto de Google Cloud, la cuenta de servicio de Cloud Build se crea automáticamente y se le otorga la función de cuenta de servicio de Cloud Build para el proyecto. Esta función le otorga a la cuenta de servicio permisos para realizar varias tareas. Sin embargo, puedes otorgar más permisos a la cuenta de servicio a fin de realizar tareas adicionales. En esta página, se explica cómo otorgar y revocar permisos a la cuenta de servicio de Cloud Build.

Antes de comenzar

Otorga un rol a la cuenta de servicio de Cloud Build mediante la página Configuración

Puedes otorgar ciertos roles de IAM de uso común a la cuenta de servicio de Cloud Build mediante la página Configuración de Cloud Build en la consola de Google Cloud:

  1. Abre la página Configuración (Settings) de Cloud Build:

    Abrir la página Configuración (Settings) de Cloud Build

    Verás la página Permisos de cuenta de servicio (Service account permissions):

    Captura de pantalla de la página Permisos de la cuenta de servicio

  2. Establece el estado del rol que deseas agregar en Habilitar.

Otorga un rol a la cuenta de servicio de Cloud Build mediante la página IAM

Si el rol que deseas otorgar no aparece en la página Configuración de Cloud Build en la consola de Google Cloud, usa la página de IAM para otorgar el rol:

  1. Abrir la página de IAM

    Abrir la página IAM

  2. Selecciona tu proyecto de Google Cloud.

  3. Sobre la tabla de permisos, selecciona la casilla de verificación Incluir asignaciones de funciones proporcionadas por Google.

    Verás que aparecen más filas en la tabla de permisos.

  4. En la tabla de permisos, busca la fila con la dirección de correo electrónico que termina en @cloudbuild.gserviceaccount.com. Esta es tu cuenta de servicio de Cloud Build.

  5. Haz clic en el ícono de lápiz.

  6. Selecciona el rol que deseas otorgar a la cuenta de servicio de Cloud Build.

  7. Haz clic en Guardar.

Revoca una función desde la cuenta de servicio de Cloud Build

  1. Abrir la página de IAM

    Abrir la página IAM

  2. Selecciona tu proyecto de Google Cloud.

  3. Sobre la tabla de permisos, selecciona la casilla de verificación Incluir asignaciones de funciones proporcionadas por Google.

    Verás que aparecen más filas en la tabla de permisos.

  4. En la tabla de permisos, busca la fila con la dirección de correo electrónico que termina en @cloudbuild.gserviceaccount.com. Esta es tu cuenta de servicio de Cloud Build.

  5. Haz clic en el ícono de lápiz.

  6. Encuentra la función que deseas revocar y haz clic en la papelera de borrado que aparece junto a ella.

Otorga una función al agente de servicio de Cloud Build

Además de la cuenta de servicio de Cloud Build, Cloud Build tiene otra cuenta de servicio administrada por Google llamada agente de servicio de Cloud Build que permite que otros servicios de Google Cloud accedan a tus recursos. Cuando habilitas la API de Cloud Build, el agente de servicio se crea automáticamente en el proyecto de Google Cloud. El agente de servicio tiene el siguiente formato, en el que PROJECT_NUMBER es tu número de proyecto:

     service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com

Para ver el agente de servicio de un proyecto, ve a la página de IAM en la consola de Google Cloud y selecciona la casilla de verificación Mostrar cuentas de servicio administradas por Google.

Si borraste de tu proyecto por accidente el agente de servicio de Cloud Build, puedes agregarlo de forma manual siguiendo estos pasos:

Console

  1. Abre la página IAM en la consola de Google Cloud:

    Abrir la página IAM

  2. Haz clic en Grant access.

  3. Agrega la siguiente principal, en el que PROJECT_NUMBER es tu número de proyecto:

    service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com
    
  4. Selecciona Agente de servicio > Agente de servicio de Cloud Build como tu función.

  5. Haz clic en Guardar.

gcloud

Otorga la función de IAM roles/cloudbuild.serviceAgent al agente de servicio de Cloud Build:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-cloudbuild.iam.gserviceaccount.com" \
    --role="roles/cloudbuild.serviceAgent"

Reemplaza los valores de marcador de posición en el comando por los siguientes:

  • PROJECT_ID: El ID del proyecto
  • PROJECT_NUMBER: El número del proyecto

¿Qué sigue?