

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Ruolo CodeDeploy IAM di Amazon ECS
<a name="codedeploy_IAM_role"></a>

Prima di poter utilizzare il tipo di distribuzione CodeDeploy blu/verde con Amazon ECS, il CodeDeploy servizio necessita delle autorizzazioni per aggiornare il servizio Amazon ECS per tuo conto. Queste autorizzazioni sono fornite dal ruolo IAM (). CodeDeploy `ecsCodeDeployRole`

**Nota**  
Gli utenti richiedono inoltre le autorizzazioni per l'uso CodeDeploy; queste autorizzazioni sono descritte in. [Autorizzazioni IAM richieste](deployment-type-bluegreen.md#deployment-type-bluegreen-IAM) 

Sono disponibili due policy gestite. Per ulteriori informazioni, consulta una delle seguenti voci nella *Guida di riferimento alle policy gestite da AWS *:
+  [AWSCodeDeployRoleForECS](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSCodeDeployRoleForECS.html): concede CodeDeploy l'autorizzazione ad aggiornare qualsiasi risorsa utilizzando l'azione associata. 
+ [AWSCodeDeployRoleForECSLimited](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSCodeDeployRoleForECSLimited.html)- concede autorizzazioni CodeDeploy più limitate. 

## Creare il ruolo CodeDeploy
<a name="cd-iam-role-create"></a>

Puoi utilizzare le seguenti procedure per creare un CodeDeploy ruolo per Amazon ECS.

------
#### [ Console di gestione AWS ]

**Per creare il ruolo di servizio per CodeDeploy (console IAM)**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel pannello di navigazione della console IAM, scegliere **Ruoli** e quindi **Crea ruolo**.

1. Per **Tipo di entità attendibile**, seleziona **Servizio AWS**.

1. Per **Servizio o caso d'uso**, scegli **CodeDeploy**, quindi scegli il caso d'uso **CodeDeploy - ECS.**

1. Scegli **Next (Successivo)**.

1. Nella sezione **Allega criteri di autorizzazione**, assicurati che sia selezionata la politica **AWSCodeDeployRoleForECS.**

1. Scegli **Next (Successivo)**.

1.  **Per **Nome ruolo**, inserisci ecsCodeDeploy Ruolo.**

1. Verificare il ruolo e quindi scegliere **Create role (Crea ruolo)**.

------
#### [ AWS CLI ]

Sostituisci tutto *user input* con le tue informazioni.

1. Crea un file denominato `codedeploy-trust-policy.json` che contenga la policy di fiducia da utilizzare per il ruolo CodeDeploy IAM.

------
#### [ JSON ]

****  

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

------

1. Crea un ruolo IAM denominato `ecsCodedeployRole` utilizzando la policy di attendibilità creata nel passaggio precedente.

   ```
   aws iam create-role \
         --role-name ecsCodedeployRole \
         --assume-role-policy-document file://codedeploy-trust-policy.json
   ```

1. Collega la policy gestita da `AWSCodeDeployRoleForECS` o da `AWSCodeDeployRoleForECSLimited` al ruolo `ecsTaskRole`.

   ```
   aws iam attach-role-policy \
         --role-name ecsCodedeployRole \
         --policy-arn arn:aws:iam::aws:policy/AWSCodeDeployRoleForECS
   ```

   ```
   aws iam attach-role-policy \
         --role-name ecsCodedeployRole \
         --policy-arn arn:aws:iam::aws:policy/AWSCodeDeployRoleForECSLimited
   ```

------

Quando le attività del tuo servizio richiedono un ruolo di esecuzione delle attività, devi aggiungere al ruolo l'`iam:PassRole`autorizzazione per ogni ruolo di esecuzione dell'attività o sovrascrittura del CodeDeploy ruolo dell'attività come policy. 

### Autorizzazioni del ruolo di esecuzione dell'attività
<a name="cd-iam-role-attach-policy"></a>

Quando le attività del tuo servizio richiedono un ruolo di esecuzione delle attività, devi aggiungere al ruolo l'`iam:PassRole`autorizzazione per ogni ruolo di esecuzione dell'attività o sovrascrittura del ruolo dell'attività al CodeDeploy ruolo come policy. Per ulteriori informazioni, consultare [Ruolo IAM di esecuzione di attività Amazon ECS](task_execution_IAM_role.md) e [Ruolo IAM dell'attività Amazon ECS](task-iam-roles.md). Quindi, si allega tale politica al ruolo CodeDeploy 

Creare la policy 

------
#### [ Console di gestione AWS ]

**Come utilizzare l'editor di policy JSON per creare una policy**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel riquadro di navigazione a sinistra, seleziona **Policies (Policy)**. 

   Se è la prima volta che selezioni **Policy**, verrà visualizzata la pagina **Benvenuto nelle policy gestite**. Seleziona **Inizia**.

1. Nella parte superiore della pagina, scegli **Crea policy**.

1. Nella sezione **Editor di policy**, scegli l'opzione **JSON**.

1. Inserisci il documento di policy JSON seguente:

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "iam:PassRole",
               "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsCodeDeployRole>"]
           }
       ]
   }
   ```

1. Scegli **Next (Successivo)**.
**Nota**  
È possibile alternare le opzioni dell'editor **Visivo** e **JSON** in qualsiasi momento. Se tuttavia si apportano modifiche o si seleziona **Successivo** nell'editor **Visivo**, IAM potrebbe ristrutturare la policy in modo da ottimizzarla per l'editor visivo. Per ulteriori informazioni, consulta [Modifica della struttura delle policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_policies.html#troubleshoot_viseditor-restructure) nella *Guida per l'utente di IAM*.

1. Nella pagina **Rivedi e crea**, inserisci un valore in **Nome policy** e **Descrizione** (facoltativo) per la policy in fase di creazione. Rivedi **Autorizzazioni definite in questa policy** per visualizzare le autorizzazioni concesse dalla policy.

1. Seleziona **Crea policy** per salvare la nuova policy.

Dopo aver creato la policy, associa la policy al CodeDeploy ruolo. Per informazioni su come associare la policy al ruolo, consulta [Aggiorna autorizzazioni per un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-permissions.html) nella *Guida per l'utente di AWS Identity and Access Management *

------
#### [ AWS CLI ]

Sostituisci tutto *user input* con le tue informazioni.

1. Crea un file denominato `blue-green-iam-passrole.json`, con il seguente contenuto:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "iam:PassRole",
               "Resource": ["arn:aws:iam::*:role/code-deploy-role"],
               "Condition": {
                       "StringEquals": {"iam:PassedToService": "ecs.amazonaws.com"}
               }
           }
       ]
   }
   ```

------

1. Usa il seguente comando per creare la policy IAM utilizzando il file del documento della policy JSON.

   ```
   aws iam create-policy \
         --policy-name cdTaskExecutionPolicy \
         --policy-document file://blue-green-iam-passrole.json
   ```

1. Recupera l'ARN della policy IAM che hai creato usando il seguente comando.

   ```
   aws iam list-policies --scope Local --query 'Policies[?PolicyName==`cdTaskExecutionPolicy`].Arn'
   ```

1. Utilizza il seguente comando per allegare la policy al ruolo CodeDeploy IAM.

   ```
   aws iam attach-role-policy \
         --role-name ecsCodedeployRole \
         --policy-arn arn:aws:iam:111122223333:aws:policy/cdTaskExecutionPolicy
   ```

------