管理 IAM 用户和角色 - Eksctl 用户指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理 IAM 用户和角色

注意

AWS 建议EKS Pod 身份关联从. 迁移到。aws-auth ConfigMap

EKS 集群使用 IAM 用户和角色来控制对集群的访问权限。这些规则是在配置映射中实现的

使用 CLI 命令 ConfigMap 进行编辑

被称为aws-autheksctl提供了读取和编辑此配置映射的命令。

获取所有身份映射:

eksctl get iamidentitymapping --cluster <clusterName> --region=<region>

获取与 arn 匹配的所有身份映射:

eksctl get iamidentitymapping --cluster <clusterName> --region=<region> --arn arn:aws:iam::123456:role/testing-role

创建身份映射:

eksctl create iamidentitymapping --cluster <clusterName> --region=<region> --arn arn:aws:iam::123456:role/testing --group system:masters --username admin

删除身份映射:

eksctl delete iamidentitymapping --cluster <clusterName> --region=<region> --arn arn:aws:iam::123456:role/testing
注意

上面的命令会删除单个映射 FIFO,除非给出--all这种情况,否则它会删除所有匹配项。如果找到更多与此角色匹配的映射,将发出警告。

创建账户映射:

eksctl create iamidentitymapping --cluster <clusterName> --region=<region> --account user-account

删除账户映射:

eksctl delete iamidentitymapping --cluster <clusterName> --region=<region> --account user-account

ConfigMap 使用 ClusterConfig 文件进行编辑

身份映射也可以在以下位置指定: ClusterConfig

--- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: cluster-with-iamidentitymappings region: us-east-1 iamIdentityMappings: - arn: arn:aws:iam::000000000000:role/myAdminRole groups: - system:masters username: admin noDuplicateARNs: true # prevents shadowing of ARNs - arn: arn:aws:iam::000000000000:user/myUser username: myUser noDuplicateARNs: true # prevents shadowing of ARNs - serviceName: emr-containers namespace: emr # serviceName requires namespace - account: "000000000000" # account must be configured with no other options nodeGroups: - name: ng-1 instanceType: m5.large desiredCapacity: 1
eksctl create iamidentitymapping -f cluster-with-iamidentitymappings.yaml