Questa pagina mostra come visualizzare informazioni sullo stato della distribuzione e sull'applicazione dei criteri in Cloud Audit Logs.
Per scoprire di più sulla terminologia dell'interfaccia utente di Cloud Audit Logs utilizzata in questa pagina, consulta Visualizzazione dei log.
Puoi valutare la tua security posture delle applicazioni, inclusa l'applicazione dei criteri di Autorizzazione binaria, nei prodotti Google Cloud interdipendenti in un'unica dashboard. Per scoprire di più, consulta Monitoraggio della sicurezza.
Panoramica
Quando utilizzi l'autorizzazione binaria per eseguire il deployment di un'immagine container in Google Kubernetes Engine (GKE), GKE scrive i dettagli del deployment nei log di controllo in Google Cloud Observability. Queste voci del log di controllo includono i messaggi di stato dell'applicazione. Puoi visualizzare queste voci di log
nella console Google Cloud o nella riga di comando utilizzando il
comando gcloud logging read
.
Per le ricerche riportate più avanti in questa guida, accedi ad Cloud Audit Logs e seleziona il progetto con gli eventi che vuoi visualizzare.
Per l'accesso generale a Cloud Audit Logs:
Vai alla pagina Logging di Google Cloud Observability > Log (Esplora log) nella console Google Cloud:
Scegli il progetto Google Cloud per cui vuoi visualizzare Cloud Audit Logs.
Messaggi relativi allo stato dell'applicazione
GKE scrive messaggi nel log di controllo per le seguenti condizioni di applicazione:
- Deployment bloccato: il deployment è stato bloccato a causa del criterio di autorizzazione binaria.
- Evento di emergenza: il deployment ha ignorato il controllo dei criteri utilizzando il meccanismo di emergenza. Per ulteriori informazioni, consulta Utilizzare la funzionalità di emergenza.
- Fail open: il deployment è stato consentito perché il backend di Autorizzazione binaria non era disponibile.
- Prova: il deployment è consentito con violazioni dei criteri perché la modalità di prova è stata impostata nel criterio di autorizzazione binaria.
Eventi di deployment bloccati in Cloud Audit Logs
Quando un'immagine container viene bloccata perché viola una norma di Autorizzazione binaria, puoi trovare gli eventi di deployment bloccati in Cloud Audit Logs.
Esegui query su Cloud Audit Logs per gli eventi di deployment bloccato
Questa sezione descrive come eseguire query su Cloud Audit Logs per gli eventi di deployment bloccati.
Esplora log
Per visualizzare gli eventi di deployment bloccati in Esplora log di Cloud Audit Logs, segui questi passaggi:
Vai alla pagina Esplora log.
Inserisci la seguente query nella casella search-query:
resource.type="k8s_cluster" logName:"cloudaudit.googleapis.com%2Factivity" (protoPayload.methodName="io.k8s.core.v1.pods.create" OR protoPayload.methodName="io.k8s.core.v1.pods.update") protoPayload.response.status="Failure" (protoPayload.response.reason="VIOLATES_POLICY" OR protoPayload.response.reason="Forbidden") NOT "kube-system" NOT "istio-system"
Seleziona l'intervallo di tempo nel selettore dell'intervallo di tempo.
gcloud
Per visualizzare gli eventi di violazione dei criteri della settimana precedente in Cloud Audit Logs utilizzando l'interfaccia a riga di comando Google Cloud, esegui il seguente comando:
gcloud logging read --order="desc" --freshness=7d \
'resource.type="k8s_cluster"
logName:"cloudaudit.googleapis.com%2Factivity"
(protoPayload.methodName="io.k8s.core.v1.pods.create" OR
protoPayload.methodName="io.k8s.core.v1.pods.update")
protoPayload.response.status="Failure"
(protoPayload.response.reason="VIOLATES_POLICY" OR
protoPayload.response.reason="Forbidden")
NOT "kube-system"
NOT "istio-system"'
Eventi di emergenza in Cloud Audit Logs
L'autorizzazione binaria ti consente di eseguire l'override del criterio utilizzando un'etichetta per il deployment di emergenza nella specifica del pod. Quando le immagini vengono implementate con il privilegio breakglass, Autorizzazione binaria registra gli eventi breakglass in Cloud Audit Logs. La sezione seguente descrive come eseguire query per questi eventi.
Esegui query su Cloud Audit Logs per i pod con breakglass specificato
Esplora log
Per visualizzare gli eventi di emergenza in Esplora log di Cloud Audit Logs, segui questi passaggi:
Vai alla pagina Esplora log.
Inserisci quanto segue nella casella search-query:
resource.type="k8s_cluster" logName:"cloudaudit.googleapis.com%2Factivity" (protoPayload.methodName="io.k8s.core.v1.pods.create" OR protoPayload.methodName="io.k8s.core.v1.pods.update") "image-policy.k8s.io/break-glass"
Seleziona l'intervallo di tempo nel selettore dell'intervallo di tempo.
gcloud
Per visualizzare gli eventi di accesso di emergenza della settimana precedente in Cloud Audit Logs utilizzando l'interfaccia alla gcloud CLI, esegui il seguente comando:
gcloud logging read --order="desc" --freshness=7d \
'resource.type="k8s_cluster" AND
logName:"cloudaudit.googleapis.com%2Factivity" AND
(protoPayload.methodName="io.k8s.core.v1.pods.create" OR
protoPayload.methodName="io.k8s.core.v1.pods.update") AND
"image-policy.k8s.io/break-glass"'
Eventi di fail open in Cloud Audit Logs
Il fail open si verifica quando viene tentato il deployment di un'immagine container, la verifica dell'autorizzazione binaria non è disponibile o scade e il deployment dell'immagine container è consentito.
In questo caso, il risultato della verifica è sconosciuto e viene registrata una voce di log.
Esegui query sugli eventi di fail open di Cloud Audit Logs
Esplora log
Per visualizzare gli eventi di fail open in Esplora log di Cloud Audit Logs, segui questi passaggi:
Vai alla pagina Esplora log.
Inserisci quanto segue nella casella search-query:
resource.type="k8s_cluster" logName:"cloudaudit.googleapis.com%2Factivity" (protoPayload.methodName="io.k8s.core.v1.pods.create" OR protoPayload.methodName="io.k8s.core.v1.pods.update") ("image-policy.k8s.io/failed-open" OR "imagepolicywebhook.image-policy.k8s.io/failed-open" OR "failed-open.validating.webhook.admission.k8s.io")
Seleziona l'intervallo di tempo nel selettore dell'intervallo di tempo.
gcloud
Per visualizzare gli eventi di fail open della settimana precedente in Cloud Audit Logs utilizzando lgcloud CLI, esegui il seguente comando:
gcloud logging read --order="desc" --freshness=7d \
'resource.type="k8s_cluster"
logName:"cloudaudit.googleapis.com%2Factivity"
(protoPayload.methodName="io.k8s.core.v1.pods.create" OR
protoPayload.methodName="io.k8s.core.v1.pods.update")
("image-policy.k8s.io/failed-open" OR
"imagepolicywebhook.image-policy.k8s.io/failed-open" OR
"failed-open.validating.webhook.admission.k8s.io")'
Eventi di prova in Cloud Audit Logs
La modalità di prova è una modalità di applicazione forzata in un criterio che consente di eseguire il deployment di immagini non conformi, ma scrive i dettagli del deployment nel log di controllo. La modalità di prova ti consente di testare un criterio nel tuo ambiente di produzione prima che venga applicato.
Quando un'immagine del contenitore non supera i controlli richiesti in un criterio, ma è consentito il relativo deployment in modalità di prova, Cloud Audit Logs contieneimagepolicywebhook.image-policy.k8s.io/dry-run: "true"
.
Esegui query su Cloud Audit Logs per gli eventi di prova secca
Esplora log
Per visualizzare gli eventi di prova in Esplora log di Cloud Audit Logs, segui questi passaggi:
Vai alla pagina Esplora log.
Inserisci quanto segue nella casella search-query:
resource.type="k8s_cluster" logName:"cloudaudit.googleapis.com%2Factivity" (protoPayload.methodName="io.k8s.core.v1.pods.create" OR protoPayload.methodName="io.k8s.core.v1.pods.update") labels."imagepolicywebhook.image-policy.k8s.io/dry-run"="true"
Seleziona l'intervallo di tempo nel selettore dell'intervallo di tempo.
gcloud
Per visualizzare gli eventi di deployment di prova della settimana precedente in Cloud Audit Logs utilizzando l'interfaccia alla gcloud CLI, esegui il seguente comando:
gcloud logging read --order="desc" --freshness=7d \
'labels."imagepolicywebhook.image-policy.k8s.io/dry-run"="true"'