Guía de inicio rápido: monitorizar la seguridad de los pods con la validación continua

Consulta cómo empezar a usar la validación continua de la autorización binaria con políticas basadas en comprobaciones. En esta guía de inicio rápido, usarás las siguientes comprobaciones de CV para validar continuamente los pods en ejecución en las siguientes condiciones:

  • Directorio de confianza: comprueba que las imágenes asociadas al pod residan en uno o varios directorios de confianza que especifiques en la política.
  • Actualización de la imagen: comprueba que las imágenes del pod se hayan subido en un plazo de días que especifiques en la política.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  4. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  5. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Binary Authorization and Google Kubernetes Engine APIs:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable container.googleapis.com binaryauthorization.googleapis.com
  8. Install the Google Cloud CLI.

  9. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  10. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  11. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  12. Verify that billing is enabled for your Google Cloud project.

  13. Enable the Binary Authorization and Google Kubernetes Engine APIs:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable container.googleapis.com binaryauthorization.googleapis.com
  14. Instala la herramienta de línea de comandos kubectl.
  15. Si tus políticas de autorización binaria y tus clústeres de GKE están en proyectos diferentes, asegúrate de que la autorización binaria esté habilitada en ambos proyectos.
  16. Crear una política de la plataforma

    Para configurar una política de plataforma de CV de GKE, haz lo siguiente:

    1. Crea el archivo YAML de la política de la plataforma:

      cat << EOF > /tmp/my-policy.yaml
      gkePolicy:
        checkSets:
        - checks:
          - trustedDirectoryCheck:
              trustedDirPatterns:
              - us-central1-docker.pkg.dev/my-project/my-directory
            displayName: My trusted directory check
          - imageFreshnessCheck:
              maxUploadAgeDays: 30
            displayName: My image freshness check
          displayName: My trusted directory and image freshness check set
      EOF
      

      Esta política comprueba las siguientes condiciones:

      • Las imágenes de los pods se almacenan en el repositorio de Artifact Registry llamado us-central1-docker.pkg.dev/my-project/my-directory.

      • Las imágenes de los pods se han subido a los repositorios de Artifact Registry o Container Registry en los últimos 30 días.

    2. Crea la política de la plataforma:

      gcloud beta container binauthz policy create POLICY_ID \
          --platform=gke