Esta página contiene políticas de ejemplo para la autorización binaria especificada en formato YAML. Si quieres obtener instrucciones para configurar políticas en la autorización binaria, consulta Configura una política mediante Google Cloud CLI o Configura una política mediante la consola de Google Cloud.
Permite todas las implementaciones
En el siguiente ejemplo, se muestra cómo permitir que se implementen todas las imágenes de contenedor sin restricciones.
name: projects/example-project/policy defaultAdmissionRule: evaluationMode: ALWAYS_ALLOW enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aquí, la regla predeterminada tiene un evaluationMode
de ALWAYS_ALLOW
, que hace que la autorización binaria permita la implementación de todas las imágenes de contenedor. El enforcementMode
predeterminado está configurado como ENFORCED_BLOCK_AND_AUDIT_LOG
, pero como se permiten todas las implementaciones, esta acción nunca se realiza.
Bloquea (casi) todas las implementaciones
En el siguiente ejemplo, se muestra cómo bloquear la implementación de todas las imágenes de contenedor y permitir las imágenes del sistema mantenidas por Google. Estas imágenes de contenedor son necesarias para que la mayoría de los clústeres de Google Kubernetes Engine (GKE) se inicien de manera correcta.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: ALWAYS_DENY enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aquí, se habilita globalPolicyEvaluationMode para que la aplicación de las políticas no bloquee las imágenes que requiere GKE.
La regla predeterminada tiene un evaluationMode
de ALWAYS_DENY
, que hace que la autorización binaria rechace la implementación de todas las imágenes de contenedor. El enforcementMode
está configurado en ENFORCED_BLOCK_AND_AUDIT_LOG
, lo que hace que la autorización binaria bloquee la implementación y escriba en el registro de auditoría.
Exige que los certificadores firmen antes de la implementación
En el siguiente ejemplo, se muestra cómo solicitar a los certificadores que autoricen una versión antes de que se pueda implementar una imagen de contenedor. La implementación se bloquea si ningún certificador firma.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: REQUIRE_ATTESTATION enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG requireAttestationsBy: - projects/example-project/attestors/secure-build
Aquí, la regla predeterminada tiene un evaluationMode
de REQUIRE_ATTESTATION
, que hace que la autorización binaria permita la implementación de solo las imágenes que autorizaron los certificadores requeridos en requireAttestationsBy
.
Permite implementaciones en modo de ejecución de prueba
El modo de ejecución de prueba es un modo de aplicación en una política que permite que se implementen imágenes que no cumplen con las políticas, pero escribe detalles sobre el incumplimiento de la política y la implementación en el registro de auditoría. El modo de ejecución de prueba te permite probar una política en tu entorno de producción antes de que entre en vigor.
En el siguiente ejemplo, se muestra cómo permitir que todas las imágenes que no cumplen con las políticas se implementen en modo de ejecución de prueba.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: REQUIRE_ATTESTATION enforcementMode: DRYRUN_AUDIT_LOG_ONLY requireAttestationsBy: - projects/example-project/attestors/secure-build
Aquí, la regla predeterminada tiene un enforcementMode
de DRYRUN_AUDIT_LOG_ONLY
, que permite la implementación de imágenes que el certificador especificado no autorizó, pero escribe información sobre la implementación que no cumple con la política en el registro de auditoría.
Usa una regla específica del clúster
En los siguientes ejemplos, se muestra una regla específica del clúster que solo permite que se implementen las imágenes de contenedor que los certificadores especificados autorizaron:
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: ALWAYS_DENY enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG clusterAdmissionRules: us-east1-a.prod-cluster: evaluationMode: REQUIRE_ATTESTATION enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG requireAttestationsBy: - projects/example-project/attestors/secure-build - projects/example-project/attestors/prod-qualified
Aquí, la regla específica del clúster solo se aplica a las imágenes de contenedor implementadas en us-east1-a.prod-cluster
. La regla requiere la certificación de dos certificadores antes de que se pueda implementar una imagen.
Agrega imágenes exentas
En el siguiente ejemplo, se muestra cómo agregar rutas adicionales en Container Registry o en otro registro a la lista de imágenes exentas de la política:
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE admissionWhitelistPatterns: - namePattern: gcr.io/example-project-1/* - namePattern: gcr.io/example-project-2/my-app defaultAdmissionRule: evaluationMode: ALWAYS_DENY enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aquí, los patrones de coincidencia de las imágenes exentas adicionales son gcr.io/example-project-1/*
y gcr.io/example-project-2/my-app
.