Esta página contém exemplos de políticas para autorização binária especificada no formato YAML. Para instruções sobre como configurar políticas na autorização binária, consulte Configurar uma política usando a Google Cloud CLI ou Configurar uma política usando o Console do Google Cloud.
Permitir todas as implantações
O exemplo a seguir mostra como permitir que todas as imagens de contêiner sejam implantadas sem restrições.
name: projects/example-project/policy defaultAdmissionRule: evaluationMode: ALWAYS_ALLOW enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aqui, a regra padrão tem um evaluationMode
de ALWAYS_ALLOW
, que faz com que a autorização binária permita a implantação de todas as imagens de contêiner. O enforcementMode
padrão é definido como ENFORCED_BLOCK_AND_AUDIT_LOG
, mas como todas as implantações são permitidas, essa ação nunca é realizada.
Bloquear (quase) todas as implantações
O exemplo a seguir mostra como bloquear a implantação de todas as imagens de contêiner e permitir imagens do sistema mantidas pelo Google. Essas imagens de contêiner são necessárias para que a maioria dos clusters do Google Kubernetes Engine (GKE) seja iniciada.
name: projects/example-project/policy globalPolicyEvaluationMode: ENABLE defaultAdmissionRule: evaluationMode: ALWAYS_DENY enforcementMode: ENFORCED_BLOCK_AND_AUDIT_LOG
Aqui, globalPolicyEvaluationMode é ativado para que as imagens exigidas pelo GKE não sejam bloqueadas pela aplicação da política.
A regra padrão tem um evaluationMode
ALWAYS_DENY
, o que faz com que a autorização binária negue a implantação de todas as imagens de contêiner. O enforcementMode
está definido como ENFORCED_BLOCK_AND_AUDIT_LOG
, o que faz com que a autorização binária bloqueie a implantação e grave no registro de auditoria.
Exigir atestadores para assinar antes da implantação
O exemplo a seguir mostra como exigir que atestadores autorizem uma versão antes que uma imagem de contêiner possa ser implantada. A implantação será 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 padrão tem evaluationMode
como REQUIRE_ATTESTATION
, o que faz com que a autorização binária permita a implantação apenas das imagens que foram autorizadas pelos atestadores obrigatórios em requireAttestationsBy
.
Permitir implantações no modo de simulação
O modo de simulação é um modo de aplicação em uma política que permite a implantação de imagens não compatíveis, mas grava detalhes sobre a violação da política e a implantação no registro de auditoria. O modo de simulação permite testar uma política no ambiente de produção antes que ela entre em vigor.
O exemplo a seguir mostra como permitir que todas as imagens não representativas sejam implantadas no modo de simulação.
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 padrão tem um enforcementMode
de DRYRUN_AUDIT_LOG_ONLY
, que permite a implantação de imagens que não foram autorizadas pelo atestador especificado, mas grava informações sobre o não compatível implantação no registro de auditoria.
Usar uma regra específica do cluster
Os exemplos a seguir mostram uma regra específica do cluster que permite a implantação dessas imagens de contêiner 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 se aplica apenas às imagens de contêiner implantadas no us-east1-a.prod-cluster
. A regra exige a confirmação de dois atestadores para que uma imagem possa ser implantada.
Adicionar imagens isentas
O exemplo a seguir mostra como adicionar outros caminhos no Container Registry ou em outro registro à lista de imagens isentas 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
.