69 lines
2.3 KiB
YAML
69 lines
2.3 KiB
YAML
apiVersion: audit.k8s.io/v1 # 这是必填项。
|
|
kind: Policy
|
|
# 不要在 RequestReceived 阶段为任何请求生成审计事件。
|
|
omitStages:
|
|
- "RequestReceived"
|
|
rules:
|
|
# 在日志中用 RequestResponse 级别记录 Pod 变化。
|
|
- level: RequestResponse
|
|
resources:
|
|
- group: ""
|
|
# 资源 "pods" 不匹配对任何 Pod 子资源的请求,
|
|
# 这与 RBAC 策略一致。
|
|
resources: ["pods"]
|
|
# 在日志中按 Metadata 级别记录 "pods/log"、"pods/status" 请求
|
|
- level: Metadata
|
|
resources:
|
|
- group: ""
|
|
resources: ["pods/log", "pods/status"]
|
|
|
|
# 不要在日志中记录对名为 "controller-leader" 的 configmap 的请求。
|
|
- level: None
|
|
resources:
|
|
- group: ""
|
|
resources: ["configmaps"]
|
|
resourceNames: ["controller-leader"]
|
|
|
|
# 不要在日志中记录由 "system:kube-proxy" 发出的对端点或服务的监测请求。
|
|
- level: None
|
|
users: ["system:kube-proxy"]
|
|
verbs: ["watch"]
|
|
resources:
|
|
- group: "" # core API 组
|
|
resources: ["endpoints", "services"]
|
|
|
|
# 不要在日志中记录对某些非资源 URL 路径的已认证请求。
|
|
- level: None
|
|
userGroups: ["system:authenticated"]
|
|
nonResourceURLs:
|
|
- "/api*" # 通配符匹配。
|
|
- "/version"
|
|
|
|
# 在日志中记录 kube-system 中 configmap 变更的请求消息体。
|
|
- level: Request
|
|
resources:
|
|
- group: "" # core API 组
|
|
resources: ["configmaps"]
|
|
# 这个规则仅适用于 "kube-system" 名字空间中的资源。
|
|
# 空字符串 "" 可用于选择非名字空间作用域的资源。
|
|
namespaces: ["kube-system"]
|
|
|
|
# 在日志中用 Metadata 级别记录所有其他名字空间中的 configmap 和 secret 变更。
|
|
- level: Metadata
|
|
resources:
|
|
- group: "" # core API 组
|
|
resources: ["secrets", "configmaps"]
|
|
|
|
# 在日志中以 Request 级别记录所有其他 core 和 extensions 组中的资源操作。
|
|
- level: Request
|
|
resources:
|
|
- group: "" # core API 组
|
|
- group: "extensions" # 不应包括在内的组版本。
|
|
|
|
# 一个抓取所有的规则,将在日志中以 Metadata 级别记录所有其他请求。
|
|
- level: Metadata
|
|
# 符合此规则的 watch 等长时间运行的请求将不会
|
|
# 在 RequestReceived 阶段生成审计事件。
|
|
omitStages:
|
|
- "RequestReceived"
|