Log audit Pencadangan dan Pemulihan (BACK) di Google Distributed Cloud (GDC) dengan air gap memungkinkan Anda melacak operasi perlindungan data untuk cluster Kubernetes dan virtual machine (VM). Log audit API Kubernetes Resource Model (KRM) mencatat identitas pemanggil, resource kustom target, tindakan, stempel waktu, dan status respons untuk rencana pencadangan, pencadangan, pemulihan, dan repositori cadangan.
Cadangan
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "extra":{ "authentication.kubernetes.io/pod-name": ["gpcbackup-controlplane-controller-8557fdb956-47zjb"], "authentication.kubernetes.io/pod-uid": ["f3aa711d-b09e-4863-90d6-3d6e7122f4a3"] }, "username": "system:serviceaccount:gpc-backup-system:gpcbackup-controlplane-manager-sa", "groups": ["system:serviceaccounts","system:serviceaccounts:gpc-backup-system","system:authenticated"],"uid":"e77ab07e-a987-4ba3-ad7d-b3bf002125eb" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"backup.gdc.goog", "resource":"backups", "apiVersion":"v1", "name":"backup-test-2", "namespace":"default" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
BackupPlan
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"backup.gdc.goog", "resource":"backupplans", "apiVersion":"v1", "name":"backupplan-test-2", "namespace":"default" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Pulihkan
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "uid":"e77ab07e-a987-4ba3-ad7d-b3bf002125eb", "username":"system:serviceaccount:gpc-backup-system:gpcbackup-controlplane-manager-sa", "extra":{ "authentication.kubernetes.io/pod-uid":["f3aa711d-b09e-4863-90d6-3d6e7122f4a3"], "authentication.kubernetes.io/pod-name":["gpcbackup-controlplane-controller-8557fdb956-47zjb"] }, "groups":["system:serviceaccounts", "system:serviceaccounts:gpc-backup-system", "system:authenticated"] } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"backup.gdc.goog", "apiVersion":"v1", "name":"restore-test-2", "resource":"restores", "namespace":"default" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
RestorePlan
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "namespace":"default", "apiGroup":"backup.gdc.goog", "resource":"restoreplans", "apiVersion":"v1", "name":"restoreplan-test-2" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
ManualBackupRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "resource":"manualbackuprequests", "namespace":"default", "apiGroup":"backup.gdc.goog", "name":"manualbackuprequest-test-2", "apiVersion":"v1" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
ManualRestoreRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "resource":"manualrestorerequests", "apiGroup":"backup.gdc.goog", "apiVersion":"v1", "name":"manualrestorerequest-test-2", "namespace":"default" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
DeleteBackupRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"backup.gdc.goog", "resource":"deletebackuprequests", "apiVersion":"v1", "name":"deletebackuprequest-test-2", "namespace":"default" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
BackupRepository
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"backup.gdc.goog", "name":"default", "resource":"backuprepositories", "apiVersion":"v1" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
BackupRepositoryManager
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "username":"kubernetes-admin", "groups":["system:masters","system:authenticated"] } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "name":"default", "resource":"backuprepositorymanagers", "apiVersion":"v1", "apiGroup":"backup.gdc.goog" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineBackupPlan
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vmbpt-vm-vm", "namespace":"default", "resource":"virtualmachinebackupplans" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineBackup
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vm-backup-test", "namespace":"default", "resource":"virtualmachinebackups" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineRestore
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vm-restore-test", "namespace":"default", "resource":"virtualmachinerestores" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
MachineBackupPlanTemplate
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vmbpt", "namespace":"default", "resource":"virtualmachinebackupplantemplates" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineBackupRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vmbr-test", "namespace":"default", "resource":"virtualmachinebackuprequests" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineRestoreRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vmrr-test", "namespace":"default", "resource":"virtualmachinerestorerequests" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
VirtualMachineDeleteBackupRequest
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "groups":["system:masters","system:authenticated"], "username":"kubernetes-admin" } |
|
Target (Kolom dan nilai yang memanggil API) |
objectRef |
"objectRef": { "apiGroup":"virtualmachine.gdc.goog", "apiVersion":"v1", "name":"vmdbr", "namespace":"default", "resource":"virtualmachinedeletebackuprequests" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan | _gdch_cluster |
Misalnya,
|
| Hasil | responseStatus |
Misalnya, "responseStatus": { "code":201, "metadata":{} } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Contoh log
{
"api_group": "backup.gdc.goog",
"cluster": "root-admin",
"fluentbit_pod": "anthos-audit-logs-forwarder-h89tv",
"service_name": "apiserver",
"Time": 1692629803549,
"_gdch_cluster": "root-admin",
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-h89tv",
"_gdch_org_id": "root.zone1.google.gdch.test",
"_gdch_org_name": "root",
"_gdch_service_name": "apiserver",
"_gdch_tenant_id": "infra-obs",
"annotations": {
"authorization.k8s.io/decision":"allow","mutation.webhook.admission.k8s.io/round_0_index_2":"{\"configuration\":\"gatekeeper-mutating-webhook-configuration\",\"webhook\":\"mutation.gatekeeper.sh\",\"mutated\":false}","authorization.k8s.io/reason":"RBAC: allowed by ClusterRoleBinding \"gpcbackup-controlplane-manager-role\" of ClusterRole \"gpcbackup-controlplane-manager-role\" to ServiceAccount \"gpcbackup-controlplane-manager-sa/gpc-backup-system\""
},
"apiVersion": "audit.k8s.io/v1",
"auditID": "856f47ac-f022-467f-82ea-55aa08d948e1",
"kind": "Event",
"level": "Metadata",
"objectRef": {
"apiGroup":"backup.gdc.goog",
"resource":"backups",
"apiVersion":"v1",
"name":"backup-test-2",
"namespace":"default"
},
"requestReceivedTimestamp": "2023-08-21T14:56:43.549191Z",
"requestURI": "/apis/backup.gdc.goog/v1/namespaces/default/backups",
"responseStatus": {
"code":201,
"metadata":{}
},
"sourceIPs": ["10.200.0.3"],
"stage": "ResponseComplete",
"stageTimestamp": "2023-08-21T14:56:43.560200Z",
"tsNs": 1692629803549191000,
"user": {
"extra":{
"authentication.kubernetes.io/pod-name":["gpcbackup-controlplane-controller-8557fdb956-47zjb"],
"authentication.kubernetes.io/pod-uid":["f3aa711d-b09e-4863-90d6-3d6e7122f4a3"]
},
"username":"system:serviceaccount:gpc-backup-system:gpcbackup-controlplane-manager-sa",
"groups":["system:serviceaccounts","system:serviceaccounts:gpc-backup-system","system:authenticated"],"uid":"e77ab07e-a987-4ba3-ad7d-b3bf002125eb"
},
"userAgent": "manager/v0.0.0 (linux/amd64) kubernetes/$Format",
"verb": "create"
}