Esta página contém políticas de exemplo para a autorização binária especificada no formato YAML. Para ver instruções sobre a configuração de políticas na autorização binária, consulte Configurar uma política através da CLI Google Cloud ou Configurar uma política através da Google Cloud consola.
Permitir todas as implementações
O exemplo seguinte mostra como permitir que todas as imagens de contentores sejam implementadas sem restrições.
name: projects/example-project/policy defaultAdmissionRule: evaluationMode: ALWAYS_ALLOW enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aqui, a regra predefinida tem um
evaluationMode
de ALWAYS_ALLOW
,
o que faz com que a autorização binária permita a implementação de todas as imagens de contentores. O valor predefinido de enforcementMode
está definido como ENFORCED_BLOCK_AND_AUDIT_LOG
, mas, como todas as implementações são permitidas, esta ação nunca é realizada.
Bloqueie (quase) todas as implementações
O exemplo seguinte mostra como impedir a implementação de todas as imagens de contentores, ao mesmo tempo que permite imagens de sistemas mantidas pela Google. Estas imagens de contentores são necessárias para que a maioria dos clusters do Google Kubernetes Engine (GKE) seja iniciada com êxito.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: ALWAYS_DENY enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aqui, o globalPolicyEvaluationMode está ativado para que as imagens necessárias pelo GKE não sejam bloqueadas pela aplicação de políticas.
A regra predefinida tem um
evaluationMode
de ALWAYS_DENY
, o que
faz com que a autorização binária recuse a implementação de todas as imagens de contentores. O valor de
enforcementMode
está definido como
ENFORCED_BLOCK_AND_AUDIT_LOG
, o que faz com que a Autorização binária bloqueie a
implementação e escreva no registo de auditoria.
Exigir que os atestadores assinem antes da implementação
O exemplo seguinte mostra como exigir que os atestadores autorizem uma versão antes de uma imagem de contentor poder ser implementada. A implementação é bloqueada se todos os atestadores não tiverem assinado.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: REQUIRE_ATTESTATION enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG requireAttestationsBy: - projects/example-project/attestors/secure-build
Aqui, a regra predefinida tem um evaluationMode
de REQUIRE_ATTESTATION
, o que faz com que a autorização binária permita a implementação apenas das imagens que foram autorizadas pelos atestadores necessários em requireAttestationsBy
.
Permita implementações no modo de teste
O modo de teste é um modo de aplicação numa política que permite a implementação de imagens não conformes, mas escreve detalhes sobre a violação da política e a implementação no registo de auditoria. O modo de teste permite-lhe testar uma política no seu ambiente de produção antes de entrar em vigor.
O exemplo seguinte mostra como permitir que todas as imagens não conformes sejam implementadas no modo de teste.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: REQUIRE_ATTESTATION enforcementMode: DRYRUN_AUDIT_LOG_ONLY requireAttestationsBy: - projects/example-project/attestors/secure-build
Aqui, a regra predefinida tem um
enforcementMode
de
DRYRUN_AUDIT_LOG_ONLY
, o que permite a implementação de imagens que não foram
autorizadas pelo atestador especificado para implementação, mas escreve informações
sobre a implementação não conforme no registo de auditoria.
Use uma regra específica do cluster
Os exemplos seguintes mostram uma regra específica do cluster que só permite a implementação das imagens de contentores que foram autorizadas pelos atestadores especificados:
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
Aqui, a regra específica do cluster aplica-se apenas às imagens de contentores implementadas em us-east1-a.prod-cluster
. A regra requer atestação por parte de dois atestadores antes de uma imagem poder ser implementada.
Adicione imagens isentas
O exemplo seguinte mostra como adicionar caminhos adicionais no Container Registry ou noutro registo à lista de imagens isentos da 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
Aqui, os padrões correspondentes para imagens isentas adicionais são gcr.io/example-project-1/*
e gcr.io/example-project-2/my-app
.