SelfSubjectRulesReview

SelfSubjectRulesReview 枚举了当前用户在一个名字空间内可以执行的一系列动作。

apiVersion: authorization.k8s.io/v1

import "k8s.io/api/authorization/v1"

SelfSubjectRulesReview

SelfSubjectRulesReview 枚举了当前用户在一个名字空间内可以执行的一系列动作。返回的动作列表可能不完整,具体取决于服务器的授权模式以及评估过程中遇到的任何错误。SelfSubjectRulesReview 应该被 UI 用来显示/隐藏动作,或者让终端用户快速了解其权限。它不应被外部系统用来驱动授权决策,因为这会引起混淆代理、缓存生命周期/撤销以及正确性问题。SubjectAccessReview 和 LocalAccessReview 是将授权决策委托给 API Server 的正确方式。


  • apiVersion: authorization.k8s.io/v1

  • kind: SelfSubjectRulesReview

  • metadata (ObjectMeta)

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

  • spec (SelfSubjectRulesReviewSpec), 必填

    Spec 包含了待评估请求的信息。

  • status (SubjectRulesReviewStatus)

    Status 由服务器填写,表示用户可以执行的一系列动作。

    SubjectRulesReviewStatus 包含规则检查的结果。此检查可能不完整,具体取决于服务器配置的授权器集合以及评估过程中遇到的任何错误。由于授权规则是累加的,如果某个规则出现在列表中,可以安全地假设该主体拥有该权限,即使该列表不完整。

    • status.incomplete (boolean), 必填

      当此调用返回的规则不完整时,Incomplete 为 true。这最常见于授权器(例如外部授权器)不支持规则评估的情况。

    • status.nonResourceRules ([]NonResourceRule), 必填

      Atomic: 合并时将被替换

      NonResourceRules 是主体允许对非资源执行的动作列表。列表顺序不重要,可能包含重复项,也可能不完整。

      NonResourceRule 包含描述非资源规则的信息。

      • status.nonResourceRules.verbs ([]string), 必填

        Atomic: 合并时将被替换

        Verb 是 Kubernetes 非资源 API 动词列表,例如:get, post, put, delete, patch, head, options。"*" 表示全部。

      • status.nonResourceRules.nonResourceURLs ([]string)

        Atomic: 合并时将被替换

        NonResourceURLs 是一组部分 URL,用户应该能够访问这些 URL。允许使用 *,但只能作为路径中完整、最后的步骤。"*" 表示全部。

    • status.resourceRules ([]ResourceRule), 必填

      Atomic: 合并时将被替换

      ResourceRules 是主体允许对资源执行的动作列表。列表顺序不重要,可能包含重复项,也可能不完整。

      ResourceRule 是主体允许对资源执行的动作列表。列表顺序不重要,可能包含重复项,也可能不完整。

      • status.resourceRules.verbs ([]string), 必填

        Atomic: 合并时将被替换

        Verb 是 Kubernetes 资源 API 动词列表,例如:get, list, watch, create, update, delete, proxy。"*" 表示全部。

      • status.resourceRules.apiGroups ([]string)

        Atomic: 合并时将被替换

        APIGroups 是包含资源的 APIGroup 的名称。如果指定了多个 API 组,则允许对任何指定 API 组中的任何枚举资源执行任何请求的动作。"*" 表示全部。

      • status.resourceRules.resourceNames ([]string)

        Atomic: 合并时将被替换

        ResourceNames 是规则适用的可选名称白名单。空集表示允许所有内容。"*" 表示全部。

      • status.resourceRules.resources ([]string)

        Atomic: 合并时将被替换

        Resources 是此规则适用的资源列表。"*" 表示指定 apiGroups 中的所有资源。"* / foo" 表示指定 apiGroups 中所有资源的子资源 'foo'。

    • status.evaluationError (string)

      EvaluationError 可能与 Rules 结合出现。它表示规则评估过程中发生了错误,例如某个授权器不支持规则评估,以及 ResourceRules 和/或 NonResourceRules 可能不完整。

SelfSubjectRulesReviewSpec

SelfSubjectRulesReviewSpec 定义了 SelfSubjectRulesReview 的规范。


  • namespace (string)

    评估规则的名字空间。必填。

操作


create 创建 SelfSubjectRulesReview

HTTP 请求

POST /apis/authorization.k8s.io/v1/selfsubjectrulesreviews

参数

响应

200 (SelfSubjectRulesReview): OK

201 (SelfSubjectRulesReview): 已创建 (Created)

202 (SelfSubjectRulesReview): 已接受 (Accepted)

401: 未授权 (Unauthorized)

此页面为自动生成。

如果您打算报告此页面的问题,请在问题描述中提及此页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。

最后修改于 2024 年 8 月 28 日太平洋时间下午 6:01:更新为 v1.31 生成的 API 参考 (8ba98c79c1)