我已经创建了AWS EKS集群,因为使用我的AWS userID创建的我已经被添加到system:masters
组中。但是,当选中ConfigMap aws-auth
时,看不到我的用户ID。 为什么?
我必须授予其他用户访问权限,所以我必须为IAM用户分配适当的AWS策略,然后使用以下映射编辑ConfigMap aws-auth
mapUsers:
----
- userarn: arn:aws:iam::573504862059:user/abc-user
username: abc-user
groups:
- system:masters
到目前为止,我已经了解到某个用户是system:masters
组的成员时,该用户在群集上具有管理员权限。
如何将具有受限特权的新用户添加到特定名称空间?我是否需要为上述用户做同样的事情?如果是这样,那么我应该将新用户添加到哪个组?
答案 0 :(得分:5)
因此您可以创建Role
,因为它们仅限于特定的名称空间。
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: my-namespace
name: full-namespace
rules:
- apiGroups: ["*"]
resources: ["*"]
verbs: ["*"]
然后创建一个RoleBinding
:
$ kubectl create rolebinding my-namespace-binding --role=full-namespace --group=namespacegroup --namespace=my-namespace
或kubectl create -f
:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: my-namespace-binding
namespace: mynamespace
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: full-namespace
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: Group
namespace: mynamespace
然后在您的ConfigMap上
mapUsers:
----
- userarn: arn:aws:iam::573504862059:user/abc-user
username: abc-user
groups:
- namespacegroup