ביומני הביקורת של ניהול הזהויות והרשאות הגישה (IAM) ב-Google Distributed Cloud (GDC) עם air gap מתועדים חילופי מפתחות של טוקנים, שינויים בגישה למשאבים ואירועים של סשנים של משתמשים. רשומות היומן האלה משתמשות ב-Istio, ב-Kubernetes Resource Model (KRM) API ובסכימות בהתאמה אישית של GKE Identity Service כדי לתעד את המטא-נתונים של הזהות, משאב המטרה והפעולה.
חילופי מפתחות לאסימון STS
סכימת יומן: Istio
| שדות ברשומה ביומן שמכילים מידע על הביקורת | ||
|---|---|---|
| מטא-נתונים של ביקורת | שם השדה ביומן הביקורת | ערך |
| זהות המשתמש או השירות | identity |
\"user\":{\"identity\":\"system:serviceaccount:iam-test:service-account\"} |
Target (שדות וערכים ששולחים קריאה ל-API) |
resource |
\"resource\":\"service-accounts.zone1.google.gdch.test\" |
פעולה (שדות שמכילים את הפעולה שבוצעה) |
לא רלוונטי | |
| חותמת הזמן של האירוע | time |
"time": "2022-11-23T18:25:54Z" |
| מקור הפעולה | לא רלוונטי | |
| תוצאה | לא רלוונטי | |
| שדות אחרים | לא רלוונטי | |
יומני ביקורת של פעולות CRUD במשאבים ב-Kubernetes, כולל יצירה של חשבונות שירות וניהול של בקרת גישה.
סכימת היומן: KRM API
| שדות ברשומה ביומן שמכילים מידע על הביקורת | ||
|---|---|---|
| מטא-נתונים של ביקורת | שם השדה ביומן הביקורת | ערך |
| זהות המשתמש או השירות | user/username |
"user": { "groups": [ "system:authenticated" ], "username": "fop-platform-admin@example.com" } |
Target (שדות וערכים ששולחים קריאה ל-API) |
objectRef |
"objectRef": { "resource": "projectserviceaccounts", "apiGroup": "resourcemanager.gdc.goog", "name": "service-accountt", "apiVersion": "v1alpha1", "namespace": "iam-test" } |
פעולה (שדות שמכילים את הפעולה שבוצעה) |
verb |
"verb": "create" |
| חותמת הזמן של האירוע | requestReceivedTimestamp |
"requestReceivedTimestamp": "2022-11-23T18:24:26.514173Z" |
| מקור הפעולה | sourceIPs |
"sourceIPs": [ "10.200.0.2" ] |
| תוצאה | responseStatus |
"responseStatus": { "code": 201, "metadata": {} } |
| שדות אחרים | annotations/authorization.k8s.io/reason |
"annotations": { "authorization.k8s.io/reason": "RBAC: allowed by RoleBinding \"platform-admin-project-iam-admin/iam-test\" of Role \"project-iam-admin\" to User \"fop-platform-admin@example.com\"", "authorization.k8s.io/decision": "allow" } |
יומן ביקורת כשמשתמש יוצא מהחשבון
סכימת היומן: פורמט AIS בהתאמה אישית.
| שדות ברשומה ביומן שמכילים מידע על הביקורת | ||
|---|---|---|
| מטא-נתונים של ביקורת | שם השדה ביומן הביקורת | ערך |
| זהות המשתמש או השירות | payload.user |
"payload": { "expirationTime": "2023-08-29T12:42:36.848454939+00:00", "groups": [], "id": "7a5bea7a-0821-45d8-b4a0-69f24d30ab3f", "issuer": "Google OIDC", "user": "test-user" } |
Target (שדות וערכים ששולחים קריאה ל-API) |
לא רלוונטי | |
פעולה (שדות שמכילים את הפעולה שבוצעה) |
operation |
"operation": "revoke" |
| חותמת הזמן של האירוע | metadata.timestamp |
"timestamp": "2023-08-29T00:42:40.000544813+00:00" |
| מקור הפעולה | לא רלוונטי | |
| תוצאה | לא רלוונטי | |
| שדות אחרים | expirationTime |
"expirationTime": "2023-08-29T12:42:36.848454939+00:00" |
יומן ביקורת כשמשתמש מתחבר לחשבון
סכימת היומן: פורמט AIS בהתאמה אישית.
| שדות ברשומה ביומן שמכילים מידע על הביקורת | ||
|---|---|---|
| מטא-נתונים של ביקורת | שם השדה ביומן הביקורת | ערך |
| זהות המשתמש או השירות | payload.user |
"payload": { "expirationTime": "2023-08-29T05:22:13.350779831+00:00", "groups": [], "id": "dcb7c5d9-c171-4f5b-84b6-5c92bfffb0e0", "issuer": "Azure AD SAML", "user": "test-ais-e2e-saml@byoidcloudaccountgoogle.onmicrosoft.com" } |
Target (שדות וערכים ששולחים קריאה ל-API) |
לא רלוונטי | |
פעולה (שדות שמכילים את הפעולה שבוצעה) |
operation |
"operation": "create" |
| חותמת הזמן של האירוע | metadata.timestamp |
"timestamp": "2023-08-28T17:22:13.351713088+00:00" |
| מקור הפעולה | לא רלוונטי | |
| תוצאה | לא רלוונטי | |
| שדות אחרים | expirationTime |
"expirationTime": "2023-08-29T05:22:13.350779831+00:00" |
יומן ביקורת כש-PA מבטל סשנים של משתמש
סכימת היומן: פורמט AIS בהתאמה אישית.
| שדות ברשומה ביומן שמכילים מידע על הביקורת | ||
|---|---|---|
| מטא-נתונים של ביקורת | שם השדה ביומן הביקורת | ערך |
| זהות המשתמש או השירות | payload.admin / payload.user |
"payload": { "admin": "test-user-1@gdch.com", "numSessionsAffected": 1, "peerWorkloadIdentity": "system:serviceaccount:anthos-identity-service:default", "peerWorkloadIdentityIssuer": "https://kubernetes.default.svc.cluster.local", "user": "test-user-2@gdch.com" } |
Target (שדות וערכים ששולחים קריאה ל-API) |
resource |
"resource": "session" |
פעולה (שדות שמכילים את הפעולה שבוצעה) |
operation |
"operation": "revoke" |
| חותמת הזמן של האירוע | metadata.timestamp |
"timestamp": "2023-08-28T17:22:24.043644569+00:00" |
| מקור הפעולה | לא רלוונטי | |
| תוצאה | לא רלוונטי | |
| שדות אחרים | numSessionsAffected |
"numSessionsAffected": 1 |
דוגמה ליומן IAM
{
"pri": "46",
"_gdch_flbProcessedTimestamp": 1669227957.340494,
"_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-vk6vx",
"time": "2022-11-23T18:25:54Z",
"message": "{\"time\":\"2022-11-23T18:25:54.257503516Z\",\"auditID\":\"d1c33645-bed0-47dc-8180-06b752673109\",\"user\":{\"identity\":\"system:serviceaccount:iam-test:service-accountt\"},\"resource\":\"service-accounts.zone1.google.gdch.test\",\"description\":\"{\\\"keyID\\\":\\\"f9540561-84d5-4113-983f-fd8868501596\\\",\\\"expirationTime\\\":\\\"2022-11-24T06:25:53Z\\\"}\"}",
"ident": "/service-identity-server",
"pid": "1",
"msgid": "audit-log",
"extradata": "-",
"_gdch_cluster": "root-admin",
"host": "serviceidentity-sa-server-55544bd9f5-nwg8m",
"_gdch_service_name": "service-identity-audit-logs"
}