

 **Aidez à améliorer cette page** 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien **Modifier cette page sur** qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Rôle IAM du cluster du mode automatique Amazon EKS
<a name="auto-cluster-iam-role"></a>

Un rôle IAM du cluster Amazon EKS est requis pour chaque cluster. Les clusters Kubernetes gérés par Amazon EKS utilisent ce rôle pour automatiser les tâches courantes liées au stockage, à la mise en réseau et à l’autoscaling de la puissance de calcul.

Avant de pouvoir créer des clusters Amazon EKS, vous devez créer un rôle IAM avec les politiques nécessaires pour le mode automatique EKS. Vous pouvez soit joindre les stratégies gérées par AWS IAM suggérées, soit créer des politiques personnalisées avec des autorisations équivalentes.
+  [EKSComputePolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSComputePolicy) 
+  [AmazonEKSBlockStoragePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSBlockStoragePolicy) 
+  [AmazonEKSLoadBalancingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy) 
+  [EKSNetworkingPolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSNetworkingPolicy) 
+  [EKSClusterPolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-amazoneksclusterpolicy) 

## AWS Balises personnalisées pour les ressources EKS Auto
<a name="tag-prop"></a>

Par défaut, les politiques gérées liées au mode automatique d'EKS n'autorisent pas l'application de balises définies par l'utilisateur aux AWS ressources provisionnées en mode automatique. Si vous souhaitez appliquer des balises définies par l'utilisateur aux AWS ressources, vous devez attribuer des autorisations supplémentaires au rôle IAM du cluster avec des autorisations suffisantes pour créer et modifier des balises sur les AWS ressources. Voici un exemple de politique qui autorisera un accès illimité au balisage :

### Voir un exemple de stratégie de balisage personnalisée
<a name="auto-tag-policy"></a>

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Compute",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateFleet",
                "ec2:RunInstances",
                "ec2:CreateLaunchTemplate"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                },
                "StringLike": {
                    "aws:RequestTag/eks:kubernetes-node-class-name": "*",
                    "aws:RequestTag/eks:kubernetes-node-pool-name": "*"
                }
            }
        },
        {
            "Sid": "Storage",
            "Effect": "Allow",
            "Action": [
                "ec2:CreateVolume",
                "ec2:CreateSnapshot"
            ],
            "Resource": [
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:ec2:*:*:snapshot/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                }
            }
        },
        {
            "Sid": "Networking",
            "Effect": "Allow",
            "Action": "ec2:CreateNetworkInterface",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                },
                "StringLike": {
                    "aws:RequestTag/eks:kubernetes-cni-node-name": "*"
                }
            }
        },
        {
            "Sid": "LoadBalancer",
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:CreateLoadBalancer",
                "elasticloadbalancing:CreateTargetGroup",
                "elasticloadbalancing:CreateListener",
                "elasticloadbalancing:CreateRule",
                "ec2:CreateSecurityGroup"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                }
            }
        },
        {
            "Sid": "ShieldProtection",
            "Effect": "Allow",
            "Action": [
                "shield:CreateProtection"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                }
            }
        },
        {
            "Sid": "ShieldTagResource",
            "Effect": "Allow",
            "Action": [
                "shield:TagResource"
            ],
            "Resource": "arn:aws:shield::*:protection/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
                }
            }
        }
    ]
}
```

## Recherche d'un rôle de cluster existant
<a name="auto-cluster-iam-role-check"></a>

Vous pouvez utiliser la procédure suivante pour vérifier si votre compte possède déjà le rôle de cluster Amazon EKS.

1. Ouvrez la console IAM à https://console.aws.amazon.com/iam/ l'adresse.

1. Dans le volet de navigation de gauche, choisissez **Rôles**.

1. Recherchez dans la liste des rôles `AmazonEKSAutoClusterRole`. Si aucun rôle contenant `AmazonEKSAutoClusterRole` n’existe, consultez les instructions dans la section suivante pour créer le rôle. Si un rôle qui inclut `AmazonEKSAutoClusterRole` existe, sélectionnez le rôle pour afficher les politiques attachées.

1. Choisissez **Permissions (Autorisations)**.

1. Assurez-vous que la **EKSClusterpolitique gérée par Amazon** Policy est attachée au rôle. Si la politique est attachée, votre rôle de cluster Amazon EKS est configuré correctement.

1. Sélectionnez l'onglet **Trust relationships** (Relations d'approbation), puis **Edit trust policy** (Modifier la relation d'approbation).

1. Vérifiez que la relation d'approbation contient la politique suivante. Si la relation d'approbation correspond à la politique ci-dessous, sélectionnez **Annuler**. Si la relation d’approbation ne correspond pas, copiez la politique dans la fenêtre **Modifier la politique d’approbation** et sélectionnez **Mettre à jour la politique**.

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow", 
         "Principal": {
           "Service": "eks.amazonaws.com"
         },
         "Action": [
           "sts:AssumeRole",
           "sts:TagSession"
         ]
       }
     ]
   }
   ```

**Note**  
 AWS ne nécessite pas le nom `AmazonEKSAutoClusterRole` de ce rôle.

## Création du rôle de cluster Amazon EKS
<a name="auto-cluster-iam-role-create"></a>

Vous pouvez utiliser la AWS Management Console ou la AWS CLI pour créer le rôle de cluster.

### AWS Management Console
<a name="auto-cluster-iam-role-console"></a>

1. Ouvrez la console IAM à https://console.aws.amazon.com/iam/ l'adresse.

1. Choisissez **Roles** (Rôles) puis **Create role** (Créer un rôle).

1. Sous **Type d'entité de confiance**, sélectionnez ** AWS service**.

1. Dans la liste déroulante **Cas d'utilisation d'autres AWS services**, sélectionnez **EKS**.

1. Sélectionnez **EKS - Cluster** pour votre cas d'utilisation, puis **Next** (Suivant).

1. Dans l’onglet **Ajouter des autorisations**, sélectionnez les politiques, puis cliquez sur **Suivant**.
   +  [EKSComputePolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSComputePolicy) 
   +  [AmazonEKSBlockStoragePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSBlockStoragePolicy) 
   +  [AmazonEKSLoadBalancingPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSLoadBalancingPolicy) 
   +  [EKSNetworkingPolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSNetworkingPolicy) 
   +  [EKSClusterPolitique d'Amazon](security-iam-awsmanpol.md#security-iam-awsmanpol-amazoneksclusterpolicy) 

1. Pour **Role name** (Nom de rôle), saisissez un nom unique pour votre rôle, par exemple, `AmazonEKSAutoClusterRole`.

1. Pour **Description**, saisissez un texte descriptif tel que `Amazon EKS - Cluster role`.

1. Choisissez **Créer un rôle**.

### AWS CLI
<a name="auto-cluster-iam-role-cli"></a>

1. Copiez le contenu suivant dans un fichier nommé *cluster-trust-policy.json*.

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow", 
         "Principal": {
           "Service": "eks.amazonaws.com"
         },
         "Action": [
           "sts:AssumeRole",
           "sts:TagSession"
         ]
       }
     ]
   }
   ```

1. Créez le rôle. Vous pouvez remplacer *AmazonEKSAutoClusterRole* par n'importe quel nom que vous choisissez.

   ```
   aws iam create-role \
     --role-name AmazonEKSAutoClusterRole \
     --assume-role-policy-document file://"cluster-trust-policy.json"
   ```

1. Attachez les politiques IAM requises au rôle :

 **EKSClusterPolitique d'Amazon** :

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws: iam::aws:policy/AmazonEKSClusterPolicy
```

 **EKSComputePolitique d'Amazon** :

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws: iam::aws:policy/AmazonEKSComputePolicy
```

 **Amazon EKSBlock StoragePolicy** :

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws: iam::aws:policy/AmazonEKSBlockStoragePolicy
```

 **Amazon EKSLoad BalancingPolicy** :

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws: iam::aws:policy/AmazonEKSLoadBalancingPolicy
```

 **EKSNetworkingPolitique d'Amazon** :

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoClusterRole \
    --policy-arn arn:aws: iam::aws:policy/AmazonEKSNetworkingPolicy
```