Restringe el uso de imágenes

De forma predeterminada, los usuarios de tu proyecto pueden crear discos persistentes o copiar imágenes con cualquiera de las imágenes públicas y cualquier imagen a la que los principales pueden acceder mediante las funciones de IAM. Sin embargo, en algunas situaciones, te recomendamos que restrinjas a los principales para que puedan crear discos de arranque solo a partir de imágenes que contengan software aprobado que cumpla con tus requisitos de seguridad o políticas.

Usa la función de imágenes confiables para definir una política de la organización que les permita a los principales crear discos persistentes solo a partir de imágenes en proyectos específicos.

A fin de restringir las ubicaciones en las que se pueden usar las imágenes, consulta la página sobre cómo restringir el uso de las imágenes, instantáneas y discos compartidos.

Antes de comenzar

Limitaciones

  • Las políticas de imágenes confiables no restringen el acceso a las siguientes imágenes:

  • Las políticas de imágenes confiables no evitan que los usuarios creen recursos de imagen en sus proyectos locales.

Configura restricciones de acceso a imágenes

Configura una restricción compute.trustedImageProjects en tu proyecto, tu organización o tu carpeta para aplicar una política de acceso a imágenes. Debes tener permiso para modificar las políticas de la organización a fin de establecer estas restricciones. Por ejemplo, roles/orgpolicy.policyAdmin tiene permiso para configurar estas restricciones. Para obtener más información sobre la administración de políticas a nivel de proyecto, organización o carpeta, consulta Usa restricciones.

Puedes establecer restricciones en todas las imágenes públicas disponibles en Compute Engine. Para obtener una lista de los nombres de los proyectos de imagen, consulta Detalles de los sistemas operativos. También puedes restringir las imágenes de aprendizaje automático (AA) que están disponibles en Compute Engine mediante el proyecto ml-images. Si usas el Acceso a VPC sin servidores, otorga a tu proyecto permiso para usar las imágenes de VM de Compute Engine desde el proyecto serverless-vpc-access-images.

Usa Google Cloud Console o Google Cloud CLI para establecer restricciones en el acceso a imágenes.

Console

Por ejemplo, para establecer una restricción a nivel de proyecto, haz lo siguiente:

  1. Ve a la página Políticas de la organización.

    Ir a Políticas de la organización

  2. En la lista de políticas, haz clic en Definir proyectos de imágenes confiables.
  3. Haz clic en Editar para personalizar tus restricciones de imágenes confiables.
  4. En la página Editar, selecciona Personalizar.
  5. En la lista desplegable Valores de política, selecciona Personalizar para establecer la restricción en proyectos de imagen específicos.
  6. En la lista desplegable Tipo de política, especifica un valor de la siguiente manera:
    • Para restringir los proyectos de imagen especificados, selecciona Rechazar.
    • Para quitar restricciones en los proyectos de imagen especificados, selecciona Permitir.
  7. En el campo Valores personalizados, ingresa los nombres de los proyectos de imagen con el formato projects/IMAGE_PROJECT. Reemplaza IMAGE_PROJECT por el proyecto de imagen en el que deseas establecer una restricción.

    Si configuras restricciones a nivel del proyecto, estas podrían entrar en conflicto con las restricciones existentes establecidas en la organización o carpeta.

  8. Haz clic en Nuevo valor de la política para agregar varios proyectos de imagen.

  9. Haz clic en Guardar para aplicar la restricción.

Para obtener más información sobre cómo crear las políticas de la organización, consulta Crea y administra políticas de la organización.

gcloud

Por ejemplo, para establecer una restricción a nivel de proyecto, haz lo siguiente:

  1. Obtén la configuración de la política existente para tu proyecto mediante el comando resource-manager org-policies describe.

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

    Reemplaza PROJECT_ID con el ID del proyecto.

  2. Abre el archivo policy.yaml en un editor de texto y modifica la restricción compute.trustedImageProjects. Agrega las restricciones que necesitas y quita las que ya no necesitas. Cuando hayas terminado de editar el archivo, guarda los cambios. Por ejemplo, puedes configurar la siguiente entrada de restricción en el archivo de políticas:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects/debian-cloud
        - projects/cos-cloud
     deniedValues:
        - projects/IMAGE_PROJECT
    

    Reemplaza IMAGE_PROJECT por el nombre del proyecto de imagen que deseas restringir en tu proyecto.

    De manera opcional, es posible que desees denegar el acceso a todas las imágenes fuera de las imágenes personalizadas en tu proyecto. En ese caso, usa el siguiente ejemplo:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allValues: DENY
    

  3. Aplica el archivo policy.yaml en tu proyecto. Si tu organización o carpeta tienen restricciones existentes, dichas restricciones podrían entrar en conflicto con las restricciones a nivel de proyecto que establezcas. Para aplicar la restricción, usa el comando resource-manager org-policies set-policy.

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

    Reemplaza PROJECT_ID con el ID del proyecto.

Cuando hayas terminado de configurar las restricciones, pruébalas para asegurarte de que creen las restricciones que necesitas.

¿Qué sigue?