6.11. SelfSubjectAccessReview [authorization.k8s.io/v1]
- 描述
- SelfSubjectAccessReview 检查当前用户是否可以执行操作。不填写 spec.namespace 表示 "在所有命名空间"。Self 是一个特殊情况,因为用户是否应该始终能够检查他们是否可以执行操作
- 类型
-
对象
- 必填
-
spec
-
6.11.1. 规格 复制链接链接已复制到粘贴板!
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 标准列表元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| SelfSubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 中的一个 |
|
| SubjectAccessReviewStatus |
6.11.1.1. .spec 复制链接链接已复制到粘贴板!
- 描述
- SelfSubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 中的一个
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| nonResourceAttributes 包括可用于 Authorizer 接口的非资源请求的授权属性 |
|
| resourceAttributes 包括可用于 Authorizer 接口的资源请求的授权属性 |
6.11.1.2. .spec.nonResourceAttributes 复制链接链接已复制到粘贴板!
- 描述
- nonResourceAttributes 包括可用于 Authorizer 接口的非资源请求的授权属性
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| path 是请求的 URL 路径 |
|
| verb 是标准 HTTP 动词 |
6.11.1.3. .spec.resourceAttributes 复制链接链接已复制到粘贴板!
- 描述
- resourceAttributes 包括可用于 Authorizer 接口的资源请求的授权属性
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| group 是资源的 API 组。"Demo" 表示所有。 |
|
| name 是为"get"请求的资源的名称,或者针对"delete"删除。"" (空)意味着所有。 |
|
| namespace 是正在请求的操作的命名空间。目前,对于集群范围的资源 "" (空)没有命名空间和所有命名空间 "" (空)与命名空间范围资源不同,对于集群范围的资源 "" (空)意味着,来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围的资源"all"是"all" |
|
| Resource 是现有资源类型之一。"Demo" 代表所有资源。 |
|
| 子资源是现有资源类型之一。"" 表示 none。 |
|
| verb 是一个 kubernetes 资源 API 动词,例如 get, list, watch, create, update, delete, proxy. " the all"。 |
|
| version 是资源的 API 版本。"Demo" 代表所有。 |
6.11.1.4. .status 复制链接链接已复制到粘贴板!
- 描述
- SubjectAccessReviewStatus
- 类型
-
对象
- 必填
-
允许
-
属性 | 类型 | 描述 |
---|---|---|
|
| 需要允许。如果操作被允许,则为 true,否则为 false。 |
|
| denied 是可选的。如果操作被拒绝,则为 true,否则为 false。如果允许都为 false,并且 denied 为 false,则授权者没有建议操作。如果 Allowed 为 true,则拒绝可能为 true。 |
|
| EvaluationError 表示在授权检查过程中发生一些错误。可以得到错误,并能够继续确定授权状态。例如,RBAC 可以被缺少角色,但仍然存在足够的角色,并绑定到有关请求的原因。 |
|
| reason 是可选的。它指示请求被允许或拒绝的原因。 |
6.11.2. API 端点 复制链接链接已复制到粘贴板!
可用的 API 端点如下:
/apis/authorization.k8s.io/v1/selfsubjectaccessreviews
-
POST
:创建一个 SelfSubjectAccessReview
-
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
|
| 如果 'true',则输出被用户友善。 |
- HTTP 方法
-
POST
- 描述
- 创建 SelfSubjectAccessReview
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空 |