第 11 章 LocalSubjectAccessReview [authorization.k8s.io/v1]
- 描述
- LocalSubjectAccessReview 检查一个用户或组是否可以在给定命名空间中执行操作。使用命名空间范围资源可以更容易授予包含权限检查的命名空间范围策略。
- 类型
-
object
- 必填
-
spec
-
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 | |
|
| SubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 之一 |
|
| SubjectAccessReviewStatus |
11.1.1. .spec
- 描述
- SubjectAccessReviewSpec 是访问请求的描述。必须设置 ResourceAuthorizationAttributes 和 NonResourceAuthorizationAttributes 之一
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Extra 对应于验证器中的 user.Info.GetExtra() 方法。由于这是对授权者的输入,因此需要反映在此处。 |
|
| |
|
| Groups 是您要测试的组。 |
|
| nonResourceAttributes 包括可用于对 Authorizer 接口的非资源请求的授权属性 |
|
| ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性 |
|
| 有关请求用户的 UID 信息。 |
|
| 用户是您正在测试的用户。如果您指定了 "User" 而不是 "Groups",那么它将解释为"如果用户不是任何组的成员 |
11.1.2. .spec.extra
- 描述
- Extra 对应于验证器中的 user.Info.GetExtra() 方法。由于这是对授权者的输入,因此需要反映在此处。
- 类型
-
object
11.1.3. .spec.nonResourceAttributes
- 描述
- nonResourceAttributes 包括可用于对 Authorizer 接口的非资源请求的授权属性
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Path 是请求的 URL 路径 |
|
| Verb 是标准 HTTP 动词 |
11.1.4. .spec.resourceAttributes
- 描述
- ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Group 是 Resource 的 API 组。"*"代表所有。 |
|
| Name 是为"get"请求的资源的名称,或删除"delete"。"" (空)表示全部。 |
|
| namespace 是所请求操作的命名空间。目前,对于集群范围的资源 "" (empty),没有命名空间和所有命名空间"" (空)之间的差别,对于集群范围的资源 "" (空)代表"all"表示来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围资源 |
|
| 资源是现有资源类型之一。"*"表示全部。 |
|
| 子资源是现有资源类型之一。""表示 none。 |
|
| verb 是一个 kubernetes 资源 API 动词,如: get, list, watch, create, update, delete, proxy. "*" 表示所有。 |
|
| version 是资源的 API 版本。"*"表示所有。 |
11.1.5. .status
- 描述
- SubjectAccessReviewStatus
- 类型
-
object
- 必填
-
allowed
-
属性 | 类型 | 描述 |
---|---|---|
|
| Allowed 是必需的。True 代表操作被允许,false 代表不允许。 |
|
| Denied 是可选的。如果被拒绝,则为 True,否则为 false。如果 allowed 和 denied 都为 false,则授权器没有对是否授权该操作的建议。如果 Allowed 为 true,则 Denied 可能不是 true。 |
|
| EvaluationError 代表了在授权检查过程中发生了一些错误。完全有可能,在获得错误的情况下,可以继续确定授权状态。例如,RBAC 可能会缺少角色,但仍然存在足够的角色,并绑定到有关请求的原因。 |
|
| reason 是可选的。它表示请求被允许或拒绝的原因。 |