Log audit Logging dan Audit Logging (LOG dan AL) di
peralatan Google Distributed Cloud (GDC) dengan air gap memungkinkan Anda melacak operasi akses data dan administratif
untuk pipeline logging dan pemantauan di workload root dan
organisasi. Log audit Kubernetes dan logger audit kemampuan observasi mencatat
identitas pengguna atau layanan, resource target, dan kolom payload JSON untuk
resource kustom LoggingTarget, AuditLoggingTarget, LoggingRule, dan
ObservabilityPipeline serta untuk kueri Loki dan Prometheus.
Menjalankan kueri LogQL atau mengekspor log menggunakan antarmuka pengguna instance pemantauan
| Sumber log audit |
Server proxy |
| Jenis log |
Bidang data |
| Kolom dalam entri log yang berisi informasi audit | ||
|---|---|---|
| Metadata audit | Nama kolom audit | Nilai |
| Identitas pengguna atau layanan | user |
Misalnya, "user": { "issuer": "https://ais-core.org-1.zone1.google.gdch.test", "identity": "fop-infrastructure-operator@example.com" } |
|
Target (Kolom dan nilai yang memanggil API) |
resource |
Misalnya,
|
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
action |
Nilai yang memungkinkan:
|
| Stempel waktu peristiwa |
time
|
Misalnya,
|
| Sumber tindakan |
|
Misalnya, "sourceIPs": [ [ "10.253.165.26", "127.0.0.6" ], "_gdch_service_name": "grafana" |
| Hasil | response |
Misalnya,
|
| Kolom lain | description |
Nilai description berisi kueri lengkap. Untuk mengetahui informasi selengkapnya, lihat Contoh log. |
Contoh log
{
"sourceIPs": [
"10.253.165.26",
"127.0.0.6"
],
"description": "{
\"queries\":
[{
\"refId\":\"A\",
\"datasource\":
{
\"uid\":\"P762A5DD6F13C8B7A\",
\"type\":\"loki\"
},
\"editorMode\":\"builder\",
\"expr\":\"{service_name=\\\"grafana\\\"} |= ``\",
\"queryType\":\"range\",
\"key\":\"Q-fd978c0c-86fd-4c70-bb38-07737a3be3ad-0\",
\"maxLines\":1000,
\"legendFormat\":\"\",
\"datasourceId\":3,
\"intervalMs\":500,
\"maxDataPoints\":1688
}],
\"range\":
{
\"from\":\"2022-12-02T21:22:03.496Z\",
\"to\":\"2022-12-02T21:37:03.496Z\",
\"raw\":{\"from\":\"now-15m\",\"to\":\"now\"}
},
\"from\":\"1670016123496\",
\"to\":\"1670017023496\"
}",
"response": "Successful: 200 OK",
"_gdch_namespace": "infra-obs-obs-system",
"numBytesSent": 190079,
"time": "2022-12-02T21:37:03.657277582Z",
"user": {
"issuer": "https://ais-core.org-1.zone1.google.gdch.test",
"identity": "fop-infrastructure-operator@example.com"
},
"_gdch_service_name": "grafana",
"_gdch_service_tenant": "infra-obs",
"numBytesReceived": 3172,
"resource": "/infra-obs/grafana/api/ds/query",
"auditID": "b519ec65-d906-4a79-bcfe-a4e1984045fe",
"action": "QUERY",
"_gdch_cluster": "org-1-admin",
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-9x9pd"
}
Melakukan tindakan pada resource kustom LoggingTarget
| Sumber log audit | |
| Jenis log |
Bidang kontrol |
| 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": [ "fleet-admin-controller-875778d98-99l6n" ], "authentication.kubernetes.io/pod-uid": [ "4800e06c-c96d-4e17-ae1a-b5a74eedf6ee" ] }, "uid": "b18e586e-db0e-417e-9dff-1a722ab36bf4", "username": "system:serviceaccount:gpc-system:fleet-admin-controller", "groups": [ "system:serviceaccounts", "system:serviceaccounts:gpc-system", "system:authenticated" ] } |
|
Target (Kolom dan nilai yang memanggil API) |
|
Misalnya, "requestURI": "/apis/logging.gdc.goog/v1/namespaces/obs-system/loggingtargets/lt-cfg1", "objectRef": { "uid": "2e540720-ed23-4665-8c40-c399cb6be624", "namespace": "obs-system", "name": "lt-cfg1", "resource": "loggingtargets", "apiVersion": "v1", "apiGroup": "logging.gdc.goog", "resourceVersion": "5326570" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
Nilai yang memungkinkan:
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan |
|
Misalnya, "sourceIPs": [ "10.253.164.209" ], "_gdch_service_name": "apiserver" |
| Hasil | responseStatus |
Misalnya, "responseStatus": { "metadata": {}, "code": 200 } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Contoh log
{
"level": "Metadata",
"auditID": "94c2106f-1fd1-428b-adbc-80ac48ef479e",
"_gdch_cluster": "org-1-admin",
"requestURI": "/apis/logging.gdc.goog/v1/namespaces/obs-system/loggingtargets/lt-cfg1",
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-4gwpn",
"verb": "update",
"userAgent": "fleet-admin-cm/v0.0.0 (linux/amd64) kubernetes/$Format",
"responseStatus": {
"metadata": {},
"code": 200
},
"user": {
"extra": {
"authentication.kubernetes.io/pod-name": [
"fleet-admin-controller-875778d98-99l6n"
],
"authentication.kubernetes.io/pod-uid": [
"4800e06c-c96d-4e17-ae1a-b5a74eedf6ee"
]
},
"uid": "b18e586e-db0e-417e-9dff-1a722ab36bf4",
"username": "system:serviceaccount:gpc-system:fleet-admin-controller",
"groups": [
"system:serviceaccounts",
"system:serviceaccounts:gpc-system",
"system:authenticated"
]
},
"annotations": {
"authorization.k8s.io/decision": "allow",
"authorization.k8s.io/reason": "RBAC: allowed by ClusterRoleBinding \"fleet-admin-common-controller\" of ClusterRole \"fleet-admin-common-controllers-role\" to ServiceAccount \"fleet-admin-controller/gpc-system\""
},
"sourceIPs": [
"10.253.164.209"
],
"stage": "ResponseComplete",
"kind": "Event",
"apiVersion": "audit.k8s.io/v1",
"stageTimestamp": "2022-12-06T14:37:41.035715Z",
"objectRef": {
"uid": "2e540720-ed23-4665-8c40-c399cb6be624",
"namespace": "obs-system",
"name": "lt-cfg1",
"resource": "loggingtargets",
"apiVersion": "v1",
"apiGroup": "logging.gdc.goog",
"resourceVersion": "5326570"
},
"requestReceivedTimestamp": "2022-12-06T14:37:40.942762Z",
"_gdch_service_name": "apiserver"
}
Melakukan tindakan pada resource kustom AuditLoggingTarget
| Sumber log audit | |
| Jenis log |
Bidang kontrol |
| 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) |
|
Misalnya, "requestURI": "/apis/logging.private.gdc.goog/v1/namespaces/obs-system/auditloggingtargets/audit-logging-config-qwerty", "objectRef": { "name": "audit-logging-config-qwerty", "namespace": "obs-system", "resource": "auditloggingtargets", "apiGroup": "logging.private.gdc.goog", "apiVersion": "v1" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
Nilai yang memungkinkan:
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan |
|
Misalnya, "sourceIPs": [ "10.200.0.7" ], "_gdch_service_name": "apiserver" |
| Hasil | responseStatus |
Misalnya, "responseStatus": { "metadata": {}, "code": 200 } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Contoh log
{
"level": "Metadata",
"auditID": "1fd8d531-c488-4478-8341-47346b1b6eda",
"stageTimestamp": "2022-12-05T19:09:56.861278Z",
"stage": "RequestReceived",
"_gdch_cluster": "org-1-admin",
"verb": "delete",
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-56tbb",
"requestReceivedTimestamp": "2022-12-05T19:09:56.861278Z",
"objectRef": {
"name": "audit-logging-config-qwerty",
"namespace": "obs-system",
"resource": "auditloggingtargets",
"apiGroup": "logging.private.gdc.goog",
"apiVersion": "v1"
},
"user": {
"groups": [
"system:masters",
"system:authenticated"
],
"username": "kubernetes-admin"
},
"sourceIPs": [
"10.200.0.7"
],
"kind": "Event",
"userAgent": "k9s/v0.0.0 (linux/amd64) kubernetes/$Format",
"apiVersion": "audit.k8s.io/v1",
"requestURI": "/apis/logging.private.gdc.goog/v1/namespaces/obs-system/auditloggingtargets/audit-logging-config-qwerty",
"_gdch_service_name": "apiserver"
}
Melakukan tindakan pada resource kustom LoggingRule
| Sumber log audit | |
| Jenis log |
Bidang kontrol |
| 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": [ "fleet-admin-controller-875778d98-99l6n" ], "authentication.kubernetes.io/pod-uid": [ "4800e06c-c96d-4e17-ae1a-b5a74eedf6ee" ] }, "uid": "b18e586e-db0e-417e-9dff-1a722ab36bf4", "username": "system:serviceaccount:gpc-system:fleet-admin-controller", "groups": [ "system:serviceaccounts", "system:serviceaccounts:gpc-system", "system:authenticated" ] } |
|
Target (Kolom dan nilai yang memanggil API) |
|
Misalnya, "requestURI": "/apis/logging.gdc.goog/v1/namespaces/obs-system/loggingrules/lr-cfg1", "objectRef": { "uid": "2e540720-ed23-4665-8c40-c399cb6be624", "namespace": "obs-system", "name": "lr-cfg1", "resource": "loggingrules", "apiVersion": "v1", "apiGroup": "logging.gdc.goog", "resourceVersion": "5326570" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
Nilai yang memungkinkan:
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan |
|
Misalnya, "sourceIPs": [ "10.253.164.209" ], "_gdch_service_name": "apiserver" |
| Hasil | responseStatus |
Misalnya, "responseStatus": { "metadata": {}, "code": 200 } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Contoh log
{
"level": "Metadata",
"auditID": "94c2106f-1fd1-428b-adbc-80ac48ef479e",
"_gdch_cluster": "org-1-admin",
"requestURI": "/apis/logging.gdc.goog/v1/namespaces/obs-system/loggingrules/lr-cfg1",
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-4gwpn",
"verb": "update",
"userAgent": "fleet-admin-cm/v0.0.0 (linux/amd64) kubernetes/$Format",
"responseStatus": {
"metadata": {},
"code": 200
},
"user": {
"extra": {
"authentication.kubernetes.io/pod-name": [
"fleet-admin-controller-875778d98-99l6n"
],
"authentication.kubernetes.io/pod-uid": [
"4800e06c-c96d-4e17-ae1a-b5a74eedf6ee"
]
},
"uid": "b18e586e-db0e-417e-9dff-1a722ab36bf4",
"username": "system:serviceaccount:gpc-system:fleet-admin-controller",
"groups": [
"system:serviceaccounts",
"system:serviceaccounts:gpc-system",
"system:authenticated"
]
},
"annotations": {
"authorization.k8s.io/decision": "allow",
"authorization.k8s.io/reason": "RBAC: allowed by ClusterRoleBinding \"fleet-admin-common-controller\" of ClusterRole \"fleet-admin-common-controllers-role\" to ServiceAccount \"fleet-admin-controller/gpc-system\""
},
"sourceIPs": [
"10.253.164.209"
],
"stage": "ResponseComplete",
"kind": "Event",
"apiVersion": "audit.k8s.io/v1",
"stageTimestamp": "2022-12-06T14:37:41.035715Z",
"objectRef": {
"uid": "2e540720-ed23-4665-8c40-c399cb6be624",
"namespace": "obs-system",
"name": "lr-cfg1",
"resource": "loggingrules",
"apiVersion": "v1",
"apiGroup": "logging.gdc.goog",
"resourceVersion": "5326570"
},
"requestReceivedTimestamp": "2022-12-06T14:37:40.942762Z",
"_gdch_service_name": "apiserver"
}
Melakukan tindakan pada resource kustom ObservabilityPipeline
| Sumber log audit | |
| Jenis log |
Bidang kontrol |
| 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) |
|
Misalnya, "requestURI": "/apis/observability.gdc.goog/v1/namespaces/obs-system/observabilitypipelines/default", "objectRef": { "apiGroup": "observability.gdc.goog", "apiVersion": "v1", "name": "default", "resource": "observabilitypipelines", "namespace": "obs-system" } |
|
Tindakan (Kolom yang berisi operasi yang dilakukan) |
verb |
Nilai yang memungkinkan:
|
| Stempel waktu peristiwa |
requestReceivedTimestamp
|
Misalnya,
|
| Sumber tindakan |
|
Misalnya, "sourceIPs": [ "10.200.0.7" ], "_gdch_service_name": "apiserver" |
| Hasil | responseStatus |
Misalnya, "responseStatus": { "metadata": {}, "code": 200 } |
| Kolom lain | Tidak berlaku | Tidak berlaku |
Contoh log
{
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-sff9t",
"requestURI": "/apis/observability.gdc.goog/v1/namespaces/obs-system/observabilitypipelines/default",
"stage": "RequestReceived",
"verb": "get",
"user": {
"username": "kubernetes-admin",
"groups": [
"system:masters",
"system:authenticated"
]
},
"objectRef": {
"apiGroup": "observability.gdc.goog",
"apiVersion": "v1",
"name": "default",
"resource": "observabilitypipelines",
"namespace": "obs-system"
},
"requestReceivedTimestamp": "2022-12-06T14:58:03.742024Z",
"stageTimestamp": "2022-12-06T14:58:03.742024Z",
"level": "Metadata",
"auditID": "f5a473cf-65c9-4706-aa0e-e657c9f308f7",
"_gdch_cluster": "org-1-admin",
"userAgent": "kubectl/v1.25.4 (linux/amd64) kubernetes/872a965",
"sourceIPs": [
"10.200.0.7"
],
"kind": "Event",
"apiVersion": "audit.k8s.io/v1",
"_gdch_service_name": "apiserver"
}