Upper Networking (UNET)

Emplacement de la charge de travail

Stockage de fichiers et de blocs

Source du journal d'audit

  • Opérations CRUD sur les ressources Kubernetes : journaux d'audit Kubernetes
  • Journaux de flux de nœuds et de charges de travail : périphériques réseau avancés

Opérations auditées

Opérations CRUD sur la règle de réseau du projet

Type de journal : journaux d'audit du plan de gestion de l'API KRM.

Champs de l'entrée de journal contenant des informations d'audit
Métadonnées d'audit Nom du champ d'audit Valeur
Identité de l'utilisateur ou du service user

Par exemple,

"user": {
  "uid": "6e805ff0-3f8c-4073-b4e1-6a0582ff1263",
  "username": "system:serviceaccount:gpc-system:fleet-admin-controller",
  "extra": {
    "authentication.kubernetes.io/pod-uid": [
      "45ce2b16-3584-448e-8caf-49cb299dfb55"
    ],
    "authentication.kubernetes.io/pod-name": [
      "fleet-admin-controller-5b5d848876-764mt"
    ]
  },
  "groups": [
    "system:serviceaccounts",
    "system:serviceaccounts:gpc-system",
    "system:authenticated"
  ]
}

Cible

(Champs et valeurs qui appellent l'API)

requestURI

"requestURI": "/apis/networking.gdc.goog/v1alpha1/namespaces/platform-obs/projectnetworkpolicies"

Action

(Champs contenant l'opération effectuée)

verb

Par exemple,

"verb": "patch"

Code temporel de l'événement requestReceivedTimestamp

Par exemple,

"requestReceivedTimestamp": "2022-12-09T04:21:55.497089Z"

Source de l'action sourceIPs

Par exemple,

"sourceIPs": [
  "10.253.164.215"
]

Résultat stage

Par exemple,

"stage": "ResponseComplete"

Autres champs Non applicable Non applicable

Exemple de journal

{
  "auditID": "ff8266f6-685f-4239-9ab8-c55083d575e0",
  "responseStatus": {
    "code": 200,
    "metadata": {}
  },
  "level": "Metadata",
  "requestURI": "/apis/networking.gdc.goog/v1alpha1/namespaces/platform-obs/projectnetworkpolicies/base-policy-allow-intra-project-traffic/status",
  "user": {
    "uid": "6e805ff0-3f8c-4073-b4e1-6a0582ff1263",
    "username": "system:serviceaccount:gpc-system:fleet-admin-controller",
    "extra": {
      "authentication.kubernetes.io/pod-uid": [
        "45ce2b16-3584-448e-8caf-49cb299dfb55"
      ],
      "authentication.kubernetes.io/pod-name": [
        "fleet-admin-controller-5b5d848876-764mt"
      ]
    },
    "groups": [
      "system:serviceaccounts",
      "system:serviceaccounts:gpc-system",
      "system:authenticated"
    ]
  },
  "_gdch_cluster": "org-1-admin",
  "objectRef": {
    "resource": "projectnetworkpolicies",
    "apiGroup": "networking.gdc.goog",
    "name": "base-policy-allow-intra-project-traffic",
    "apiVersion": "v1alpha1",
    "namespace": "platform-obs",
    "subresource": "status"
  },
  "verb": "patch",
  "kind": "Event",
  "_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-4267r",
  "stage": "ResponseComplete",
  "apiVersion": "audit.k8s.io/v1",
  "requestReceivedTimestamp": "2022-12-09T04:21:55.497089Z",
  "sourceIPs": [
    "10.253.164.215"
  ],
  "userAgent": "fleet-admin-cm/v0.0.0 (linux/amd64) kubernetes/$Format",
  "stageTimestamp": "2022-12-09T04:21:55.505045Z",
  "annotations": {
    "authorization.k8s.io/reason": "RBAC: allowed by ClusterRoleBinding \"fleet-admin-controller\" of ClusterRole \"fleet-admin-controller\" to ServiceAccount \"fleet-admin-controller/gpc-system\"",
    "authorization.k8s.io/decision": "allow"
  },
  "_gdch_service_name": "apiserver"
}

Opérations CRUD sur l'équilibreur de charge

Type de journal : journaux d'audit du plan de gestion de l'API KRM.

Champs de l'entrée de journal contenant des informations d'audit
Métadonnées d'audit Nom du champ d'audit Valeur
Identité de l'utilisateur ou du service user

Par exemple,

"user": {
  "groups": [
    "system:masters",
    "system:authenticated"
  ],
  "username": "kubernetes-admin"
}

Cible

(Champs et valeurs qui appellent l'API)

objectRef.resource

"objectRef": {
  "resource": "services"
}

Action

(Champs contenant l'opération effectuée)

verb

Par exemple,

"verb": "get"

Code temporel de l'événement requestReceivedTimestamp

Par exemple,

"requestReceivedTimestamp": "2022-12-09T04:29:53.577417Z"

Source de l'action sourceIPs

Par exemple,

"sourceIPs": [
  "10.200.0.5"
]

Résultat stage

Par exemple,

"stage": "ResponseComplete"

Autres champs Non applicable Non applicable

Exemple de journal

{
  "apiVersion": "audit.k8s.io/v1",
  "level": "Metadata",
  "_gdch_cluster": "org-1-admin",
  "auditID": "113e562b-0576-4b97-bc5f-168a60428f6d",
  "user": {
    "groups": [
      "system:masters",
      "system:authenticated"
    ],
    "username": "kubernetes-admin"
  },
  "stageTimestamp": "2022-12-09T04:29:53.579903Z",
  "sourceIPs": [
    "10.200.0.5"
  ],
  "responseStatus": {
    "code": 200,
    "metadata": {}
  },
  "annotations": {
    "authorization.k8s.io/decision": "allow",
    "authorization.k8s.io/reason": ""
  },
  "stage": "ResponseComplete",
  "requestURI": "/api/v1/namespaces/harbor-system/services/harbor-harbor-harbor-core",
  "_gdch_fluentbit_pod": "anthos-audit-logs-forwarder-8kc9n",
  "verb": "get",
  "objectRef": {
    "apiVersion": "v1",
    "apiGroup": "UNKNOWN",
    "resource": "services",
    "namespace": "harbor-system",
    "name": "harbor-harbor-harbor-core"
  },
  "userAgent": "root-admin-cm/v0.0.0 (linux/amd64) kubernetes/$Format",
  "kind": "Event",
  "requestReceivedTimestamp": "2022-12-09T04:29:53.577417Z",
  "_gdch_service_name": "apiserver"
}

Journaux de flux de nœuds pour le cluster d'infrastructure de l'organisation et le serveur de l'API Management

Type de journal : plan de données.

Champs de l'entrée de journal contenant des informations d'audit
Métadonnées d'audit Nom du champ d'audit Valeur
Identité de l'utilisateur ou du service src

Par exemple,

"src": {
  "pod_name": "konnectivity-agent-58fdb55d57-5h2gj",
  "workload_kind": "Deployment",
  "workload_name": "konnectivity-agent",
  "pod_namespace": "kube-system",
  "namespace": "kube-system"
}

Cible

(Champs et valeurs qui appellent l'API)

dest

Par exemple,

"dest": {
  "node_name": "xwxwxwx-default-pool-16baec8f-zkjw",
  "workload_kind": "Node"
}

Action

(Champs contenant l'opération effectuée)

Non applicable Non applicable
Code temporel de l'événement timestamp

Par exemple,

"timestamp": "2022-11-21T20:34:32.027881823Z"

Source de l'action src

Par exemple,

"src": {
  "pod_name": "konnectivity-agent-58fdb55d57-5h2gj",
  "workload_kind": "Deployment",
  "workload_name": "konnectivity-agent",
  "pod_namespace": "kube-system",
  "namespace": "kube-system"
}

Résultat disposition

Par exemple,

"disposition": "allow"

Autres champs Non applicable Non applicable

Exemple de journal

{
  "connection": {
    "src_ip": "10.4.0.7",
    "dest_ip": "10.128.0.16",
    "src_port": 52932,
    "dest_port": 10250,
    "protocol": "tcp",
    "direction": "ingress"
  },
  "disposition": "allow",
  "src": {
    "pod_name": "konnectivity-agent-58fdb55d57-5h2gj",
    "workload_kind": "Deployment",
    "workload_name": "konnectivity-agent",
    "pod_namespace": "kube-system",
    "namespace": "kube-system"
  },
  "dest": {
    "node_name": "xwxwxwx-default-pool-16baec8f-zkjw",
    "workload_kind": "Node"
  },
  "count": 1,
  "node_name": "xwxwxwx-default-pool-16baec8f-zkjw",
  "timestamp": "2022-11-21T20:34:32.027881823Z"
}

Journaux de flux de charge de travail pour le cluster d'infrastructure de l'organisation et le serveur de l'API Management

Type de journal : plan de données.

Champs de l'entrée de journal contenant des informations d'audit
Métadonnées d'audit Nom du champ d'audit Valeur
Identité de l'utilisateur ou du service src

Par exemple,

"src": {
  "instance": "10.4.0.1"
}

Cible

(Champs et valeurs qui appellent l'API)

dest

Par exemple,

"dest": {
  "pod_name": "kube-dns-6d5d89dccb-5fjzs",
  "workload_kind": "Deployment",
  "workload_name": "kube-dns",
  "pod_namespace": "kube_system",
  "namespace": "kube-system"
}

Action

(Champs contenant l'opération effectuée)

Non applicable Non applicable
Code temporel de l'événement timestamp

Par exemple,

"timestamp": "2022-11-21T20:34:32.027881823Z"

Source de l'action src

Par exemple,

"src": {
  "instance": "10.4.0.1"
}

Résultat disposition

Par exemple,

"disposition": "allow"

Autres champs Non applicable Non applicable

Exemple de journal

{
  "connection": {
    "src_ip": "10.4.0.1",
    "dest_ip": "10.4.0.9",
    "src_port": 46768,
    "dest_port": 10054,
    "protocol": "tcp",
    "direction": "ingress"
  },
  "disposition": "allow",
  "policies": [
    {
      "kind": "CiliumClusterwideNetworkPolicy",
      "name": "allow-all"
    }
  ],
  "src": {
    "instance": "10.4.0.1"
  },
  "dest": {
    "pod_name": "kube-dns-6d5d89dccb-5fjzs",
    "workload_kind": "Deployment",
    "workload_name": "kube-dns",
    "pod_namespace": "kube_system",
    "namespace": "kube-system"
  },
  "count": 1,
  "node_name": "xwxwxwx-default-pool-16baec8f-zkjw",
  "timestamp": "2022-11-21T20:34:32.027881823Z"
}