9.5. SubjectAccessReview [authorization.k8s.io/v1]


描述
SubjectAccessReview 检查用户或组是否可以执行操作。
类型
对象
必填
  • spec

9.5.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

元数据

ObjectMeta

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

spec

对象

SubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 之一

status

对象

SubjectAccessReviewStatus

9.5.1.1. .spec

描述
SubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 之一
类型
对象
属性类型描述

额外

对象

额外对应于验证器中的 user.Info.GetExtra ()方法。由于这是授权者的输入,因此这里需要反映出来。

extra{}

数组(字符串)

 

groups

数组(字符串)

组是您正在测试的组。

nonResourceAttributes

对象

nonResourceAttributes 包括可用于对 Authorizer 接口的非资源请求的授权属性

resourceAttributes

对象

resourceAttributes 包括可用于向 Authorizer 接口的资源请求的授权属性

uid

字符串

有关请求用户的 UID 信息。

user

字符串

用户是您正在测试的用户。如果您指定了 "User" 而不是 "Groups",那么它将解释为"如果用户不是任何组的成员

9.5.1.2. .spec.extra

描述
额外对应于验证器中的 user.Info.GetExtra ()方法。由于这是授权者的输入,因此这里需要反映出来。
类型
对象

9.5.1.3. .spec.nonResourceAttributes

描述
nonResourceAttributes 包括可用于对 Authorizer 接口的非资源请求的授权属性
类型
对象
属性类型描述

path

字符串

path 是请求的 URL 路径

verb

字符串

verb 是标准 HTTP 动词

9.5.1.4. .spec.resourceAttributes

描述
resourceAttributes 包括可用于向 Authorizer 接口的资源请求的授权属性
类型
对象
属性类型描述

group

字符串

group 是资源的 API 组。"*"表示全部。

name

字符串

name 是为"get"请求的资源的名称,或删除 "delete". "" (empty)表示 all。

namespace

字符串

namespace 是所请求操作的命名空间。目前,对于集群范围的资源 "" (empty),没有命名空间和所有命名空间"" (空)为 LocalSubjectAccessReviews "" (empty)为空,代表来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围资源"all"

resource

字符串

Resource 是现有资源类型之一。"*"表示全部。

子资源

字符串

子资源是现有资源类型之一。""表示 none。

verb

字符串

verb 是一个 kubernetes 资源 API 动词,如 get, list, watch, create, update, delete, proxy. "*"。

version

字符串

Version 是资源的 API 版本。"*"表示全部。

9.5.1.5. .status

描述
SubjectAccessReviewStatus
类型
对象
必填
  • 允许
属性类型描述

允许

布尔值

需要允许。如果允许该操作,则为 true,否则为 false。

已拒绝

布尔值

拒绝是可选的。如果操作被拒绝,则为 true,否则为 false。如果允许都为 false,并且拒绝为 false,则授权者在是否授权该操作时没有建议。如果允许为 true,则拒绝的可能不是 true。

evaluationError

字符串

EvaluationError 表示在授权检查过程中发生一些错误。完全有可能出错,并且能够继续确定其授权状态。例如,RBAC 可以缺少角色,但仍存在足够的角色并绑定到请求的原因。

reason

字符串

reason 是可选的。它表示为什么允许或拒绝请求。

9.5.2. API 端点

可用的 API 端点如下:

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

    • POST: 创建一个 SubjectAccessReview

9.5.2.1. /apis/authorization.k8s.io/v1/subjectaccessreviews

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

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

字符串

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

pretty

字符串

如果 'true',则输出会输出。

HTTP 方法
POST
描述
创建一个 SubjectAccessReview
表 9.12. 主体参数
参数类型描述

正文(body)

SubjectAccessReview 模式

 
表 9.13. HTTP 响应
HTTP 代码响应正文

200 - OK

SubjectAccessReview 模式

201 - Created

SubjectAccessReview 模式

202 - Accepted

SubjectAccessReview 模式

401 - Unauthorized

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.