×
描述

SelfSubjectAccessReview 检查当前用户是否可以执行某个操作。不填写 spec.namespace 表示“在所有命名空间中”。Self 是一个特殊情况,因为用户应该始终能够检查他们是否可以执行某个操作。

类型

对象

必需
  • spec

规格

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象表示的REST资源。服务器可以从此对象推断客户端提交请求的端点。不能更新。使用驼峰式命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准列表元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

SelfSubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 中的一个。

status

对象

SubjectAccessReviewStatus

.spec

描述

SelfSubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 中的一个。

类型

对象

属性 类型 描述

nonResourceAttributes

对象

NonResourceAttributes 包括可用于对 Authorizer 接口进行非资源请求的授权属性。

resourceAttributes

对象

ResourceAttributes 包括可用于对 Authorizer 接口进行资源请求的授权属性。

.spec.nonResourceAttributes

描述

NonResourceAttributes 包括可用于对 Authorizer 接口进行非资源请求的授权属性。

类型

对象

属性 类型 描述

path

字符串

Path 是请求的URL路径。

verb

字符串

Verb 是标准的HTTP动词。

.spec.resourceAttributes

描述

ResourceAttributes 包括可用于对 Authorizer 接口进行资源请求的授权属性。

类型

对象

属性 类型 描述

group

字符串

Group 是资源的API组。“*”表示所有。

name

字符串

Name 是为“get”请求的资源名称或为“delete”请求删除的资源名称。“”(空)表示所有。

namespace

字符串

Namespace 是请求操作的命名空间。目前,命名空间和所有命名空间之间没有区别。“”(空)对于 LocalSubjectAccessReviews 默认为空。“”(空)对于集群范围的资源为空。“”(空)对于来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围的资源表示“所有”。

resource

字符串

Resource 是现有资源类型之一。“*”表示所有。

subresource

字符串

Subresource 是现有资源类型之一。“”表示无。

verb

字符串

Verb 是kubernetes资源API动词,例如:get、list、watch、create、update、delete、proxy。“*”表示所有。

version

字符串

Version 是资源的API版本。“*”表示所有。

.status

描述

SubjectAccessReviewStatus

类型

对象

必需
  • allowed

属性 类型 描述

allowed

布尔值

Allowed 是必需的。如果允许操作,则为真;否则为假。

denied

布尔值

Denied 是可选的。如果操作被拒绝,则为真;否则为假。如果 allowed 为假且 denied 为假,则授权者对是否授权操作没有意见。如果 Allowed 为真,则 Denied 不能为真。

evaluationError

字符串

EvaluationError 表示授权检查期间发生了一些错误。即使发生错误,也完全有可能继续确定授权状态。例如,RBAC 可能缺少角色,但仍然存在足够的角色并绑定到请求的原因。

reason

字符串

Reason 是可选的。它指示请求被允许或拒绝的原因。

API端点

提供以下API端点

  • /apis/authorization.k8s.io/v1/selfsubjectaccessreviews

    • POST:创建SelfSubjectAccessReview

/apis/authorization.k8s.io/v1/selfsubjectaccessreviews

表1. 全局查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

字段验证

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值为:- Ignore:这将忽略任何从对象中静默删除的未知字段,并将忽略解码器遇到的所有重复字段(只保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为从对象中删除的每个未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则此选项将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

HTTP 方法

POST

描述

创建 SelfSubjectAccessReview

表 2. 请求体参数
参数 类型 描述

请求体

SelfSubjectAccessReview 模式

表 3. HTTP 响应
HTTP 代码 响应体

200 - OK

SelfSubjectAccessReview 模式

201 - 已创建

SelfSubjectAccessReview 模式

202 - 已接受

SelfSubjectAccessReview 模式

401 - 未授权