0

我想允许用户在 Kubernetes 集群中为 EKS 执行操作,例如:应用部署、创建机密、创建卷等。我不确定要使用哪个角色。我不想让用户:创建集群、删除集群、列出集群只执行集群内的 Kubernetes 操作。

据我所知,集群的权限是使用 Heptio 身份验证器执行的。我相信我在这里遗漏了一些东西,但不知道是什么。

4

2 回答 2

2

链接是将 AWS IAM 用户或 AWS 角色添加到给定 K8S 角色的正确链接。

假设您想创建一个新的 K8S 角色以仅具有读取权限,称为pod-reader

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

创建角色后,您需要授予 IAM 用户代入该角色的权限。这很容易做到:

apiVersion: v1
kind: ConfigMap
metadata:
  name: aws-auth
  namespace: kube-system
data:
  mapUsers: |
    - userarn: arn:aws:iam::270870090353:user/franziska_adler
      username: iam_user_name
      groups:
        - pod-reader

有关 K8S RBAC 授权的更多信息,请单击此处

于 2018-09-12T20:13:19.067 回答
0

看起来您必须在“mapUsers”项下的配置映射中手动添加用户,然后kubectl apply config-map.yml根据第 3 节中的 aws 文档运行。“将您的 IAM 用户、角色或 AWS 账户添加到 configMap。”

https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html

于 2018-09-12T18:11:26.360 回答