Ce guide explique comment afficher les entrées Cloud Logging générées par la validation continue (CV) avec des règles de plate-forme basées sur des vérifications. Pour afficher les entrées de l'ancienne validation continue (obsolète), consultez la page Afficher les journaux de l'ancienne CV.
La CV consigne les problèmes liés aux entrées podEvent
.
La CV consigne les problèmes de configuration dans les entrées configErrorEvent
, par exemple si une règle de plate-forme ou des rôles IAM sont mal configurés.
Afficher les journaux pour les entrées de CV
Vous pouvez rechercher des entrées Cloud Logging pour identifier les erreurs de configuration de CV et les cas de non-respect de validation des règles de plate-forme de CV.
La CV consigne les erreurs et les cas de non-respect des règles dans Cloud Logging sous 24 heures. Les entrées sont généralement visibles en quelques heures.
Afficher les journaux d'erreurs de configuration de CV
Pour afficher les journaux d'erreurs de configuration de la CV, exécutez la commande suivante :
gcloud logging read \
--order="desc" \
--freshness=7d \
--project=CLUSTER_PROJECT_ID \
'logName:"binaryauthorization.googleapis.com%2Fcontinuous_validation" "configErrorEvent"'
Le résultat suivant affiche une erreur de configuration indiquant qu'une règle de plate-forme de CV est introuvable:
{
"insertId": "141d4f10-72ea-4a43-b3ec-a03da623de42",
"jsonPayload": {
"@type": "type.googleapis.com/google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent",
"configErrorEvent": {
"description": "Cannot monitor cluster 'us-central1-c.my-cluster': Resource projects/123456789/platforms/gke/policies/my-policy does not exist."
}
},
"resource": {
"type": "k8s_cluster",
"labels": {
"cluster_name": "my-cluster",
"location": "us-central1-c",
"project_id": "my-project"
}
},
"timestamp": "2024-05-28T15:31:03.999566Z",
"severity": "WARNING",
"logName": "projects/my-project/logs/binaryauthorization.googleapis.com%2Fcontinuous_validation",
"receiveTimestamp": "2024-05-28T16:30:56.304108670Z"
}
Afficher les cas de non-respect des règles de plate-forme de la CV
Si aucune image n'enfreint les règles de plate-forme que vous avez activées, aucune entrée n'apparaît dans les journaux.
Pour afficher les entrées de journal de la CV des sept derniers jours, exécutez la commande suivante :
gcloud logging read \
--order="desc" \
--freshness=7d \
--project=CLUSTER_PROJECT_ID \
'logName:"binaryauthorization.googleapis.com%2Fcontinuous_validation" "policyName"'
Remplacez CLUSTER_PROJECT_ID
par l'ID du projet de cluster.
Types de test
Les journaux de CV vérifient les informations de violation dans checkResults
. Dans l'entrée, la valeur checkType
indique la vérification. Les valeurs pour chaque vérification sont les suivantes :
ImageFreshnessCheck
SigstoreSignatureCheck
SimpleSigningAttestationCheck
SlsaCheck
TrustedDirectoryCheck
VulnerabilityCheck
Exemple de journal
L'exemple d'entrée de journal CV suivant décrit une image non conforme qui enfreint une vérification de répertoire de confiance :
{
"insertId": "637c2de7-0000-2b64-b671-24058876bb74",
"jsonPayload": {
"podEvent": {
"endTime": "2022-11-22T01:14:30.430151Z",
"policyName": "projects/123456789/platforms/gke/policies/my-policy",
"images": [
{
"result": "DENY",
"checkResults": [
{
"explanation": "TrustedDirectoryCheck at index 0 with display name \"My trusted directory check\" has verdict NOT_CONFORMANT. Image is not in a trusted directory",
"checkSetName": "My check set",
"checkSetIndex": "0",
"checkName": "My trusted directory check",
"verdict": "NON_CONFORMANT",
"checkType": "TrustedDirectoryCheck",
"checkIndex": "0"
}
],
"image": "gcr.io/my-project/hello-app:latest"
}
],
"verdict": "VIOLATES_POLICY",
"podNamespace": "default",
"deployTime": "2022-11-22T01:06:53Z",
"pod": "hello-app"
},
"@type": "type.googleapis.com/google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent"
},
"resource": {
"type": "k8s_cluster",
"labels": {
"project_id": "my-project",
"location": "us-central1-a",
"cluster_name": "my-test-cluster"
}
},
"timestamp": "2022-11-22T01:44:28.729881832Z",
"severity": "WARNING",
"logName": "projects/my-project/logs/binaryauthorization.googleapis.com%2Fcontinuous_validation",
"receiveTimestamp": "2022-11-22T03:35:47.171905337Z"
}
Étapes suivantes
- Utiliser la vérification de fraîcheur d'image
- Utiliser la vérification d'attestation de signature simple
- Utiliser la vérification de signature Sigstore
- Utiliser la vérification SLSA
- Utiliser la vérification du répertoire de confiance
- Utiliser la vérification des failles
- Afficher les journaux CV