En este documento, se describen los permisos de IAM necesarios para ver estadísticas de seguridad de la cadena de suministro de software en la consola de Google Cloud .
Roles obligatorios
Para ver las estadísticas de seguridad de la cadena de suministro de software en la consola deGoogle Cloud , debes tener los siguientes roles o un rol con permisos equivalentes:
- Visualizador de Cloud Build (
roles/cloudbuild.builds.viewer
): Visualiza estadísticas de una compilación. - Visualizador de casos de Artifact Analysis (
roles/containeranalysis.occurrences.viewer
): Consulta vulnerabilidades, procedencia de la compilación y otra información de dependencias. - Visualizador de Cloud Run (
roles/run.viewer
): Visualiza estadísticas de una revisión de Cloud Run. - Visualizador de clústeres de Kubernetes Engine (
roles/container.clusterViewer
): Consulta estadísticas de un clúster de GKE.
Estos permisos brindan acceso a estadísticas, pero no permiten realizar otras acciones, como ejecutar compilaciones en Cloud Build.
- Para obtener detalles sobre los permisos obligatorios para un servicio específico, consulta la documentación de ese servicio.
- Para obtener información sobre cómo otorgar permisos, consulta la documentación de Identity and Access Management sobre cómo otorgar permisos a proyectos.
De forma predeterminada, muchos servicios tienen permisos predeterminados para otros servicios en el mismo proyecto, pero no pueden acceder a recursos en otro proyecto. Si ejecutas servicios en diferentes proyectos de Google Cloud o si usas roles de IAM personalizados o cuentas de servicio personalizadas, debes otorgar los permisos correspondientes por tu cuenta.
Cómo otorgar permisos cuando los servicios están en el mismo proyecto
Si Cloud Build, Artifact Registry, Artifact Analysis y Cloud Run se ejecutan en el mismo proyecto, cada servicio usa la cuenta de servicio predeterminada para actuar en nombre del servicio, y los permisos predeterminados no se modifican. Todos los servicios pueden trabajar juntos sin cambios en los permisos, pero debes otorgar permisos a los usuarios que necesiten ver estadísticas en el proyecto.
- Permisos entre servicios
No se requieren cambios:
- La cuenta de servicio de Cloud Build predeterminada tiene permisos para subir y descargar con Artifact Registry, y para leer datos de estadísticas de Artifact Analysis, de modo que el servicio puede firmar imágenes de contenedor con información de procedencia de la compilación y enviarlas a Artifact Registry.
- Las revisiones de Cloud Run usan la cuenta de servicio predeterminada de Compute Engine para las implementaciones, que tiene permisos para descargar imágenes de Artifact Registry y leer datos de estadísticas de Artifact Analysis.
- Permisos del usuario para ver estadísticas
Debes otorgar a los usuarios de Cloud Build y Cloud Run los roles necesarios para ver estadísticas.
Cómo otorgar permisos cuando los servicios se encuentran en proyectos diferentes
Cuando Artifact Registry y Artifact Analysis se ejecutan en un proyecto independiente de otros servicios de Google Cloud , debes otorgar permisos de forma explícita para todas las actividades entre proyectos. Considera la siguiente configuración del proyecto:
- Cloud Build se ejecuta en el proyecto A
- Artifact Registry y Artifact Analysis se ejecutan en el proyecto B
- Cloud Run se ejecuta en el proyecto C
- Permisos entre servicios
Cloud Build y Cloud Run no pueden acceder a recursos en otros proyectos sin otorgar acceso de forma explícita a las cuentas de servicio que actúan en nombre de estos servicios. Debes otorgar los permisos de Artifact Registry y los permisos de Artifact Analysis adecuados en el proyecto B en el que se almacenan los artefactos y los metadatos de artefactos.
En el caso de Cloud Build, debes otorgar estos roles en el proyecto B:
- El rol de escritor de Artifact Registry (
roles/artifactregistry.writer
) otorga permisos para subir y descargar. - El rol de Visualizador de casos de Artifact Analysis (
roles/containeranalysis.occurrences.viewer
) otorga permisos para mostrar estadísticas.
- El rol de escritor de Artifact Registry (
En el caso de Cloud Run, debes otorgar estos roles en el proyecto B:
- El rol de lector de Artifact Registry (
roles/artifactregistry.reader
) otorga permisos de descarga para las implementaciones. - El rol de Visualizador de casos de Artifact Analysis (
roles/containeranalysis.occurrences.viewer
) otorga permisos para mostrar estadísticas.
- El rol de lector de Artifact Registry (
- Permisos del usuario para ver estadísticas
En el proyecto B, debes otorgar a los usuarios de Cloud Build y Cloud Run con los roles requeridos la capacidad de ver estadísticas.
¿Qué sigue?
- Obtén más información sobre cómo los servicios de Google Cloud protegen tu cadena de suministro de software en la descripción general.
- Obtén información sobre las prácticas de seguridad de la cadena de suministro de software y cómo los Google Cloud servicios pueden ayudarte a implementarlas.