Compute Engine puede extraer contenedores directamente de los repositorios de Artifact Registry.
Permisos obligatorios
La cuenta de servicio de Compute Engine necesita acceso a Artifact Registry para extraer imágenes de contenedor.
En función de la configuración de la política de tu organización, es posible que se conceda automáticamente el rol Editor a la cuenta de servicio predeterminada de tu proyecto. Te recomendamos que inhabilites la asignación automática de roles
aplicando la restricción de la política de organización iam.automaticIamGrantsForDefaultServiceAccounts
. Si has creado tu organización después del 3 de mayo del 2024, esta restricción se aplica de forma predeterminada.
Si inhabilitas la concesión automática de roles, debes decidir qué roles quieres conceder a las cuentas de servicio predeterminadas y, a continuación, concederlos tú mismo.
Si la cuenta de servicio predeterminada ya tiene el rol Editor, te recomendamos que lo sustituyas por roles con menos permisos.
A continuación, se muestran algunos ejemplos de los ámbitos de acceso y los roles necesarios para diferentes situaciones:
- Para extraer imágenes de contenedor de los repositorios de Artifact Registry, debes conceder el rol Lector de Artifact Registry (
roles/artifactregistry.reader
) a la cuenta de servicio de Compute Engine. Además, asegúrate de que el ámbito de accesoread-only
esté definido para los cubos de almacenamiento de Cloud Storage. - Quieres que la instancia de VM suba contenido a los repositorios. En este caso, debes configurar un ámbito de acceso con acceso de escritura al almacenamiento:
read-write
,cloud-platform
ofull-control
. - La instancia de VM se encuentra en un proyecto diferente de los repositorios a los que quieres acceder. En el proyecto con los repositorios, concede los permisos necesarios a la cuenta de servicio de la instancia.
- Los repositorios están en el mismo proyecto, pero no quieres que la cuenta de servicio predeterminada tenga el mismo nivel de acceso en todos los repositorios. En este caso, debe conceder los permisos adecuados a nivel de repositorio y revocar los permisos de Artifact Registry a nivel de proyecto.
- La VM está asociada a una cuenta de servicio personalizada. Asegúrate de que la cuenta de servicio tenga los permisos y el ámbito de acceso necesarios.
- Estás usando roles personalizados para conceder permisos y el rol personalizado no incluye los permisos de Artifact Registry necesarios. Añade los permisos necesarios al rol.