En este documento se describen los permisos de gestión de identidades y accesos necesarios para ver las 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 laGoogle Cloud consola, debes tener los siguientes roles o un rol con permisos equivalentes:
- Lector de Cloud Build
(
roles/cloudbuild.builds.viewer
): consulta estadísticas de una compilación. - Lector de repeticiones de Artifact Analysis
(
roles/containeranalysis.occurrences.viewer
): consulta vulnerabilidades, procedencia de compilación y otra información sobre dependencias. - Lector de Cloud Run (
roles/run.viewer
): consulta estadísticas de una revisión de Cloud Run. - Lector de clústeres de Kubernetes Engine (
roles/container.clusterViewer
): consulta estadísticas de un clúster de GKE.
Estos permisos proporcionan acceso a las estadísticas, pero no permiten realizar otras acciones, como ejecutar compilaciones en Cloud Build.
- Para obtener más información sobre los permisos obligatorios de un servicio concreto, consulta la documentación de ese servicio.
- Para obtener información sobre cómo conceder permisos, consulta la documentación sobre gestión de identidades y accesos en Conceder permisos a proyectos.
De forma predeterminada, muchos servicios tienen permisos predeterminados para otros servicios del mismo proyecto, pero no pueden acceder a recursos de otro proyecto. Si ejecutas servicios en diferentes proyectos Google Cloud o si usas roles de gestión de identidades y accesos personalizados o cuentas de servicio personalizadas, debes conceder los permisos adecuados.
Conceder 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 cambian. Todos los servicios pueden funcionar conjuntamente sin que se produzcan cambios en los permisos, pero debe conceder permisos a los usuarios que necesiten ver estadísticas en el proyecto.
- Permisos entre servicios
No es necesario hacer ningún cambio:
- La cuenta de servicio de Cloud Build predeterminada tiene permisos para subir y descargar contenido con Artifact Registry, así como para leer datos de estadísticas de Artifact Analysis. De esta forma, el servicio puede firmar imágenes de contenedor con la procedencia de la compilación y subirlas 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 de usuario para ver estadísticas
Debes asignar los roles necesarios a los usuarios de Cloud Build y Cloud Run para que puedan ver las estadísticas.
Conceder permisos cuando los servicios están en proyectos diferentes
Cuando Artifact Registry y Artifact Analysis se ejecutan en un proyecto independiente de otros servicios, debes conceder permisos explícitamente para todas las actividades entre proyectos. Google Cloud 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 de otros proyectos sin conceder explícitamente acceso a las cuentas de servicio que actúan en nombre de estos servicios. Debes conceder los permisos de Artifact Registry y Artifact Analysis adecuados en el proyecto B, donde se almacenan los artefactos y sus metadatos.
En Cloud Build, debes conceder estos roles en el proyecto B:
- Artifact Registry Writer (
roles/artifactregistry.writer
) concede permisos para subir y descargar. - Lector de repeticiones de Artifact Analysis
(
roles/containeranalysis.occurrences.viewer
) otorga permisos para mostrar estadísticas.
- Artifact Registry Writer (
En Cloud Run, debes asignar estos roles en el proyecto B:
- Lector de Artifact Registry (
roles/artifactregistry.reader
) otorga permisos de descarga para las implementaciones. - Lector de repeticiones de Artifact Analysis
(
roles/containeranalysis.occurrences.viewer
) otorga permisos para mostrar estadísticas.
- Lector de Artifact Registry (
- Permisos de usuario para ver estadísticas
En el proyecto B, debes conceder a los usuarios de Cloud Build y Cloud Run los roles necesarios para ver las estadísticas.
Siguientes pasos
- Consulta más información sobre cómo protegen los servicios tu cadena de suministro de software en la Google Cloud descripción general.
- Consulta información sobre las prácticas de seguridad de la cadena de suministro de software y cómo pueden ayudarte los Google Cloud servicios a implementarlas.