• K8S之rbac


    一、简介:

    RBAC 使⽤ rbac.authorization.k8s.io API Group 来实现授权决策,允许管理员通过 Kubernetes API 动态配置策略,要启⽤ RBAC ,需要在 apiserver 中添加参数 --authorization-mode=RBAC ,

    如果使⽤的 kubeadm 安装的集群,1.6 版本以上的都默认开启了 RBAC ,可以通过查看 Master 节点上 apiserver 的静态 Pod 定义⽂件:

    $cat  /etc/kubernetes/manifests/kube-apiserver.yaml
         --authorization-mode=Node,RBAC ...
    

    二、Role示例

    下面是一个位于 "default" 名字空间的 Role 的示例,可用来授予对 pods 的读访问权限

    apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      namespace: default
      name: pod-reader
    rules:
    - apiGroups: [""] # "" 标明 core API 组
      resources: ["pods"]
      verbs: ["get", "watch", "list"]
    

    查看所有的role:kubectl get role

    三、ClusterRole 示例

    下面是一个 ClusterRole 的示例,可用来为任一特定名字空间中的 Secret 授予读访问权限, 或者跨名字空间的访问权限(取决于该角色是如何绑定的):

    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      # "namespace" 被忽略,因为 ClusterRoles 不受名字空间限制
      name: secret-reader
    rules:
    - apiGroups: [""]
      # 在 HTTP 层面,用来访问 Secret 对象的资源的名称为 "secrets"
      resources: ["secrets"]
      verbs: ["get", "watch", "list"]
    

      

  • 相关阅读:
    机器学习笔记
    python学习笔记-day8
    python学习笔记-day7
    python学习笔记-day6
    python学习笔记-day5
    python习题
    単語
    bat批处理----copy和xcopy区别
    C#
    VB
  • 原文地址:https://www.cnblogs.com/wuchangblog/p/14164629.html
Copyright © 2020-2023  润新知