

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# IAM 政策
<a name="iam-policies"></a>

您可以將執行個體角色連接至節點群組。在節點上執行的工作負載會從節點接收 IAM 許可。如需 mroe 資訊，請參閱 [Amazon EC2 的 IAM 角色](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html)。

此頁面列出 eksctl 中可用的預先定義 IAM 政策範本。這些範本可簡化授予 EKS 節點適當 AWS 服務許可的程序，而不必手動建立自訂 IAM 政策。

## 支援的 IAM 附加元件政策
<a name="_supported_iam_add_on_policies"></a>

所有支援的附加元件政策範例：

```
nodeGroups:
  - name: ng-1
    instanceType: m5.xlarge
    desiredCapacity: 1
    iam:
      withAddonPolicies:
        imageBuilder: true
        autoScaler: true
        externalDNS: true
        certManager: true
        appMesh: true
        appMeshPreview: true
        ebs: true
        fsx: true
        efs: true
        awsLoadBalancerController: true
        xRay: true
        cloudWatch: true
```

### 映像建置器政策
<a name="_image_builder_policy"></a>

此`imageBuilder`政策允許完整 ECR （彈性容器登錄檔） 存取。這對於建置需要將映像推送至 ECR 的 CI 伺服器非常有用。

### EBS 政策
<a name="_ebs_policy"></a>

此`ebs`政策會啟用新的 EBS CSI （彈性區塊存放區容器儲存介面） 驅動程式。

### Cert Manager 政策
<a name="_cert_manager_policy"></a>

此`certManager`政策可讓 將記錄新增至 Route 53，以解決 DNS01 挑戰。如需詳細資訊，請參閱[此處](https://cert-manager.io/docs/configuration/acme/dns01/route53/#set-up-a-iam-role)。

## 新增自訂執行個體角色
<a name="_adding_a_custom_instance_role"></a>

此範例會建立節點群組，重複使用來自另一個叢集的現有 IAM 執行個體角色：

```
apiVersion: eksctl.io/v1alpha4
kind: ClusterConfig
metadata:
  name: test-cluster-c-1
  region: eu-north-1

nodeGroups:
  - name: ng2-private
    instanceType: m5.large
    desiredCapacity: 1
    iam:
      instanceProfileARN: "arn:aws:iam::123:instance-profile/eksctl-test-cluster-a-3-nodegroup-ng2-private-NodeInstanceProfile-Y4YKHLNINMXC"
      instanceRoleARN: "arn:aws:iam::123:role/eksctl-test-cluster-a-3-nodegroup-NodeInstanceRole-DNGMQTQHQHBJ"
```

## 連接內嵌政策
<a name="_attaching_inline_policies"></a>

```
nodeGroups:
  - name: my-special-nodegroup
    iam:
      attachPolicy:
        Version: "2012-10-17"
        Statement:
        - Effect: Allow
          Action:
          - 's3:GetObject'
          Resource: 'arn:aws:s3:::example-bucket/*'
```

## 依 ARN 連接政策
<a name="_attaching_policies_by_arn"></a>

```
nodeGroups:
  - name: my-special-nodegroup
    iam:
      attachPolicyARNs:
        - arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy
        - arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy
        - arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly
        - arn:aws:iam::aws:policy/ElasticLoadBalancingFullAccess
        - arn:aws:iam::1111111111:policy/kube2iam
      withAddonPolicies:
        autoScaler: true
        imageBuilder: true
```

**警告**  
如果節點群組包含 `attachPolicyARNs`，則`AmazonEC2ContainerRegistryPullOnly`在此範例中**也必須**包含預設節點政策，例如 `AmazonEKSWorkerNodePolicy``AmazonEKS_CNI_Policy`和 。