kube-apiserver 审计配置 (v1)
资源类型
Event
出现在
事件捕获可以包含在 API 审计日志中的所有信息。
| 字段 | 描述 |
|---|---|
apiVersion字符串 | audit.k8s.io/v1 |
种类字符串 | Event |
级别 [必填]级别 | 生成事件时的审计级别 |
auditID [必填]k8s.io/apimachinery/pkg/types.UID | 唯一的审计 ID,为每个请求生成。 |
阶段 [必填]阶段 | 生成此事件实例时请求处理的阶段。 |
requestURI [必填]字符串 | RequestURI 是客户端发送到服务器的请求 URI。 |
动词 [必填]字符串 | 动词是与请求关联的 Kubernetes 动词。对于非资源请求,这是小写的 HTTP 方法。 |
用户 [必填]身份验证/v1.UserInfo | 经过身份验证的用户信息。 |
模拟用户身份验证/v1.UserInfo | 模拟用户信息。 |
来源 IP[]字符串 | 来源 IP,请求来自哪里以及中间代理。来源 IP 按以下顺序列出
|
用户代理字符串 | UserAgent 记录客户端报告的用户代理字符串。请注意,UserAgent 由客户端提供,并且不得信任。 |
对象引用ObjectReference | 此请求针对的对象引用。不适用于列表类型请求或非资源请求。 |
响应状态元数据/v1.状态 | 响应状态,即使 ResponseObject 不是状态类型也会填充。对于成功的响应,这将仅包括代码和 StatusSuccess。对于非状态类型的错误响应,这将自动填充错误消息。 |
请求对象k8s.io/apimachinery/pkg/runtime.Unknown | 来自请求的 API 对象,采用 JSON 格式。RequestObject 在版本转换、默认设置、准入或合并之前按原样记录在请求中(可能重新编码为 JSON)。它是一个外部版本化的对象类型,并且本身可能不是有效的对象。非资源请求省略。仅在请求级别及更高级别记录。 |
响应对象k8s.io/apimachinery/pkg/runtime.Unknown | 响应中返回的 API 对象,采用 JSON 格式。ResponseObject 在转换为外部类型并序列化为 JSON 后记录。非资源请求省略。仅在响应级别记录。 |
requestReceivedTimestamp元数据/v1.MicroTime | 请求到达 apiserver 的时间。 |
stageTimestamp元数据/v1.MicroTime | 请求到达当前审计阶段的时间。 |
注释map[string]string | 注释是一个非结构化的键值映射,与审计事件一起存储,可以由请求服务链中调用的插件设置,包括身份验证、授权和准入插件。请注意,这些注释用于审计事件,并且与提交对象的 metadata.annotations 不对应。键应该唯一标识通知组件以避免名称冲突(例如 podsecuritypolicy.admission.k8s.io/policy)。值应该简短。注释包含在元数据级别。 |
事件列表
事件列表是审计事件的列表。
| 字段 | 描述 |
|---|---|
apiVersion字符串 | audit.k8s.io/v1 |
种类字符串 | 事件列表 |
元数据元数据/v1.ListMeta | 未提供描述。 |
项目 [必填][]事件 | 未提供描述。 |
策略
出现在
策略定义审计日志记录的配置,以及如何记录不同请求类别的规则。
| 字段 | 描述 |
|---|---|
apiVersion字符串 | audit.k8s.io/v1 |
种类字符串 | 策略 |
元数据元数据/v1.ObjectMeta | 包含 ObjectMeta 以实现与 API 基础结构的互操作性。 有关元数据字段的字段,请参阅 Kubernetes API 文档。 |
规则 [必填][]PolicyRule | 规则指定应记录请求的审计级别。一个请求可以匹配多个规则,在这种情况下,将使用第一个匹配的规则。默认审计级别为“无”,但可以被列表末尾的包罗万象规则覆盖。PolicyRules 是严格排序的。 |
omitStages[]阶段 | OmitStages 是不为其创建事件的阶段列表。请注意,这也可以为每个规则指定,在这种情况下,将省略两者的并集。 |
omitManagedFields布尔值 | OmitManagedFields 指示是否省略将请求和响应主体的托管字段写入 API 审计日志。这用作全局默认值 - 值“true”将省略托管字段,否则托管字段将包含在 API 审计日志中。请注意,这也可以为每个规则指定,在这种情况下,规则中指定的值将覆盖全局默认值。 |
策略列表
策略列表是审计策略的列表。
| 字段 | 描述 |
|---|---|
apiVersion字符串 | audit.k8s.io/v1 |
种类字符串 | 策略列表 |
元数据元数据/v1.ListMeta | 未提供描述。 |
项目 [必填][]策略 | 未提供描述。 |
GroupResources
出现在
GroupResources 表示 API 组中的资源种类。
| 字段 | 描述 |
|---|---|
组字符串 | 组是包含资源的 API 组的名称。空字符串表示核心 API 组。 |
资源[]字符串 | 资源是此规则适用的资源列表。 例如
如果存在通配符,则验证规则将确保资源不会相互重叠。 空列表表示此 API 组中的所有资源和子资源都适用。 |
资源名称[]字符串 | ResourceNames 是策略匹配的资源实例名称列表。使用此字段需要指定资源。空列表表示匹配资源的每个实例。 |
级别
(字符串的别名)
出现在
级别定义在审计期间记录的信息量
ObjectReference
出现在
ObjectReference 包含足够的信息,可以让您检查或修改引用的对象。
| 字段 | 描述 |
|---|---|
资源字符串 | 未提供描述。 |
命名空间字符串 | 未提供描述。 |
名称字符串 | 未提供描述。 |
用户标识k8s.io/apimachinery/pkg/types.UID | 未提供描述。 |
apiGroup字符串 | APIGroup 是包含引用对象的 API 组的名称。空字符串表示核心 API 组。 |
apiVersion字符串 | APIVersion 是包含引用对象的 API 组的版本。 |
资源版本字符串 | 未提供描述。 |
子资源字符串 | 未提供描述。 |
PolicyRule
出现在
PolicyRule 根据元数据将请求映射到审计级别。请求必须匹配每个字段的规则(规则的交集)。
| 字段 | 描述 |
|---|---|
级别 [必填]级别 | 记录与此规则匹配的请求的级别。 |
用户[]字符串 | 此规则适用的用户(按经过身份验证的用户名)。空列表表示每个用户。 |
用户组[]字符串 | 此规则适用的用户组。如果用户是任何 UserGroups 的成员,则认为该用户匹配。空列表表示每个用户组。 |
动词[]字符串 | 与此规则匹配的动词。空列表表示每个动词。 |
资源[]GroupResources | 此规则匹配的资源。空列表表示所有 API 组中的所有种类。 |
命名空间[]字符串 | 此规则匹配的命名空间。空字符串 "" 匹配非命名空间资源。空列表表示每个命名空间。 |
nonResourceURLs[]字符串 | NonResourceURLs 是一组应审计的 URL 路径。允许使用
|
omitStages[]阶段 | OmitStages 是不为其创建事件的阶段列表。请注意,这也可以在策略范围内指定,在这种情况下,将省略两者的并集。空列表表示不适用任何限制。 |
omitManagedFields布尔值 | OmitManagedFields 指示是否省略将请求和响应主体的托管字段写入 API 审计日志。
|
阶段
(字符串的别名)
出现在
阶段定义了在请求处理中可以生成审计事件的阶段。
此页面是自动生成的。
如果您打算报告此页面的问题,请在问题描述中提及此页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。