Esta página está dirigida a usuarios de la validación continua heredada (CV heredada) (obsoleta).
La validación continua heredada es una función de la autorización binaria que verifica periódicamente imágenes de contenedor asociadas con Pods en ejecución para el cumplimiento continuo de la política de singleton de tu proyecto de Autorización Binaria. La CV heredada registra los resultados en Cloud Logging.
La CV heredada no finaliza los Pods en ejecución.
Limitaciones
El CV heredado tiene las siguientes limitaciones:
- La CV heredada solo es compatible con los Pods implementados en Google Kubernetes Engine (GKE).
- La CV heredada no admite políticas de Autorización Binaria que especifiquen reglas específicas para identidades de servicio de Cloud Service Mesh, cuentas de servicio de Kubernetes o espacios de nombres de Kubernetes.
Antes de comenzar
Asegúrate de tener configurada la Autorización Binaria para Google Kubernetes Engine en un proyecto. Con la CV heredada, se registran los eventos de cumplimiento de la política de los Pods en todos los clústeres del proyecto.
Asegúrate de que gcloud CLI esté actualizada a la versión más reciente.
Permisos necesarios
Las funciones de Identity and Access Management (IAM) incluyen permisos y se pueden asignar a usuarios, grupos y cuentas de servicio. Las siguientes funciones incluyen los permisos enumerados para CV:
| Nombre de la función | Permisos de CV heredada | Descripción |
|---|---|---|
roles/binaryauthorization.policyEditor |
binaryauthorization.continuousValidationConfig.update |
Inhabilita y habilita la CV. |
Para configurar los permisos de IAM necesarios, ejecuta los siguientes comandos:
PROJECT_NUMBER=$(gcloud projects list \
--filter="projectId:ATTESTATION_PROJECT_ID" \
--format="value(PROJECT_NUMBER)")
SERVICE_ACCOUNT="service-$PROJECT_NUMBER@gcp-sa-binaryauthorization.iam.gserviceaccount.com"
gcloud projects add-iam-policy-binding ATTESTATION_PROJECT_ID \
--member="serviceAccount:$SERVICE_ACCOUNT" \
--role='roles/containeranalysis.occurrences.viewer'
Habilita la CV heredada
Console
Para habilitar la CV heredada con la Google Cloud consola, haz lo siguiente:
En la Google Cloud consola, ve a la página Política de Autorización binaria.
Haz clic en la pestaña Política.
Haz clic en Editar política.
Expande la sección Configuración adicional para implementaciones de GKE y Anthos.
Selecciona la casilla de verificación Habilitar la validación continua.
Haga clic en Save Policy.
API de REST
Para habilitar la CV heredada con la API de REST, haz lo siguiente:
Almacena el ID del proyecto:
DEPLOYER_PROJECT_ID=DEPLOYER_PROJECT_IDReemplaza
DEPLOYER_PROJECT_IDpor el ID del proyecto en el que ejecutas GKE.Obtén el token de OAuth para Google Cloud.
BEARER_TOKEN=$(gcloud auth print-access-token)El token solo es válido durante un período breve.
Habilita la CV heredada:
curl "https://binaryauthorization.googleapis.com/v1alpha2/projects/${DEPLOYER_PROJECT_ID}/continuousValidationConfig" -X PUT -H "authorization: Bearer $BEARER_TOKEN" -H "Content-Type: application/json" --data '{"enforcementPolicyConfig": {"enabled": "true"}}'
La CV heredada ahora está configurada para registrar eventos.
La entrada de registro de Logging es similar al siguiente ejemplo:
{
"insertId": "6054e143-0000-2562-aa64-883d24f57e70",
"jsonPayload": {
"@type": "type.googleapis.com/google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent",
"podEvent": {
"images": [
{
"description": "Image <var>IMAGE_NAME@IMAGE_DIGEST</var> denied by
attestor projects/<var>ATTESTOR_PROJECT_ID</var>/attestors/<var>ATTESTOR_NAME</var>:
No attestations found that were valid and signed by a key trusted by
the attestor",
"image": "<var>IMAGE_NAME@IMAGE_DIGEST</var>",
"result": "DENY"
}
],
"verdict":