

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à.

# Fase 2: Creare un ruolo di servizio per CodeDeploy
<a name="getting-started-create-service-role"></a>

Nel AWS, i ruoli di servizio vengono utilizzati per concedere le autorizzazioni a un AWS servizio in modo che possa accedere alle AWS risorse. Le policy che colleghi al ruolo del servizio determinano le risorse a cui il servizio può accedere e le azioni che può eseguire. 

Al ruolo di servizio per cui crei CodeDeploy devono essere concesse le autorizzazioni richieste per la tua piattaforma di elaborazione. Se esegui la distribuzione su più di una piattaforma di elaborazione, crea un ruolo di servizio per ciascuna. Per aggiungere autorizzazioni, allega una o più delle seguenti politiche fornite: AWS 

Per le distribuzioni EC2/on-premise, allega la policy. **AWSCodeDeployRole** Fornisce le autorizzazioni necessarie al ruolo del servizio per:
+ Leggi i tag sulle tue istanze o identifica le tue istanze Amazon EC2 tramite i nomi dei gruppi di Amazon EC2 Auto Scaling.
+ Leggi, crea, aggiorna ed elimina i gruppi, gli hook del ciclo di vita e le politiche di scalabilità di Amazon EC2 Auto Scaling.
+ Pubblica informazioni su argomenti di Amazon SNS.
+ Recupera informazioni sugli CloudWatch allarmi.
+ Leggi e aggiorna Elastic Load Balancing.
**Nota**  
 Se crei il tuo gruppo Auto Scaling con un modello di avvio, devi aggiungere le seguenti autorizzazioni:   
 `ec2:RunInstances` 
 `ec2:CreateTags` 
 `iam:PassRole` 
Per ulteriori informazioni[Fase 2: Creare un ruolo di servizio](#getting-started-create-service-role), consulta [Creazione di un modello di lancio per un gruppo Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) e [Supporto dei modelli di avvio](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-launch-template-permissions.html) nella Guida per l'utente di *Amazon EC2* Auto Scaling. 

Per le implementazioni di Amazon ECS, se desideri l'accesso completo ai servizi di supporto, allega la policy. **AWSCodeDeployRoleForECS** Fornisce le autorizzazioni necessarie al ruolo del servizio per:
+  Leggi, aggiorna ed elimina i set di attività di Amazon ECS. 
+  Aggiorna i gruppi target, gli ascoltatori e le regole di Elastic Load Balancing. 
+  Invoca funzioni AWS Lambda . 
+  Accedi ai file di revisione nei bucket Amazon S3. 
+  Recupera informazioni sugli allarmi. CloudWatch 
+ Pubblica informazioni su argomenti di Amazon SNS.

Per le implementazioni di Amazon ECS, se desideri un accesso limitato ai servizi di supporto, allega la policy. **AWSCodeDeployRoleForECSLimited** Fornisce le autorizzazioni necessarie al ruolo del servizio per:
+  Leggi, aggiorna ed elimina i set di attività di Amazon ECS. 
+  Recupera informazioni sugli CloudWatch allarmi. 
+ Pubblica informazioni su argomenti di Amazon SNS.

Per le distribuzioni AWS Lambda, se desideri consentire la pubblicazione su Amazon SNS, allega la policy. **AWSCodeDeployRoleForLambda** Fornisce le autorizzazioni necessarie al ruolo del servizio per:
+  Leggi, aggiorna e richiama AWS Lambda funzioni e alias. 
+  Accedi ai file di revisione nei bucket Amazon S3. 
+  Recupera informazioni sugli allarmi. CloudWatch 
+  Pubblica informazioni su argomenti di Amazon SNS. 

Per le implementazioni AWS Lambda, se desideri limitare l'accesso ad Amazon SNS, allega la policy. **AWSCodeDeployRoleForLambdaLimited** Fornisce le autorizzazioni necessarie al ruolo del servizio per:
+  Leggi, aggiorna e richiama AWS Lambda funzioni e alias. 
+  Accedi ai file di revisione nei bucket Amazon S3. 
+  Recupera informazioni sugli allarmi. CloudWatch 

Nell'ambito dell'impostazione del ruolo del servizio, si aggiorna anche il suo rapporto di fiducia per specificare gli endpoint a cui si desidera concedere l'accesso.

Puoi creare un ruolo di servizio con la console IAM AWS CLI, o IAM. APIs

**Topics**
+ [Crea un ruolo di servizio (console)](#getting-started-create-service-role-console)
+ [Creare un ruolo di servizio (CLI)](#getting-started-create-service-role-cli)
+ [Ottieni il ruolo di servizio ARN (console)](#getting-started-get-service-role-console)
+ [Ottieni il ruolo di servizio ARN (CLI)](#getting-started-get-service-role-cli)

## Crea un ruolo di servizio (console)
<a name="getting-started-create-service-role-console"></a>

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, scegli **Ruoli** e quindi **Crea ruolo**.

1. Scegli il **AWS servizio** e, in **Caso d'uso**, dall'elenco a discesa, scegli. **CodeDeploy**

1. Scegli il tuo caso d'uso:
   +  Per le implementazioni EC2/on-premise, scegli. **CodeDeploy** 
   +  **Per le implementazioni AWS Lambda, scegli Lambda. CodeDeploy ** 
   +  **Per le implementazioni di Amazon ECS, scegli CodeDeploy - ECS.** 

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

1. Nella pagina **Aggiungi autorizzazioni**, viene visualizzata la politica di autorizzazione corretta per il caso d'uso. Scegli **Next (Successivo)**.

1. Nella pagina **Nome, revisione e creazione**, in **Nome ruolo**, inserisci un nome per il ruolo di servizio (ad esempio,**CodeDeployServiceRole**), quindi scegli **Crea** ruolo.

   Puoi anche inserire una descrizione per questo ruolo di servizio nella **descrizione del ruolo**.

1. Se si intende concedere a questo ruolo del servizio l'autorizzazione per accedere a tutti gli endpoint attualmente supportati, la procedura è terminata.

   Per limitare l'accesso di questo ruolo di servizio ad alcuni endpoint, continua con i passaggi rimanenti di questa procedura.

1. Nell'elenco dei ruoli, cerca e scegli il ruolo che hai appena creato (`CodeDeployServiceRole`).

1. Seleziona la scheda **Relazioni di attendibilità**

1. Seleziona **Modifica policy di attendibilità**.

   Dovrebbero essere visualizzate le seguenti policy, che offrono al ruolo del servizio l'autorizzazione per accedere a tutti gli endpoint supportati:

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

   Per concedere al ruolo di servizio l'accesso solo ad alcuni endpoint supportati, sostituisci il contenuto della casella di testo della politica di fiducia con la seguente politica. Rimuovi le righe relative agli endpoint a cui vuoi impedire l'accesso, quindi scegli **Aggiorna** policy.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "",
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       
                       "codedeploy.us-east-1.amazonaws.com",
                       "codedeploy.us-east-2.amazonaws.com",
                       "codedeploy.us-west-1.amazonaws.com",
                       "codedeploy.us-west-2.amazonaws.com",
                       "codedeploy.ca-central-1.amazonaws.com",
                       "codedeploy.ap-east-1.amazonaws.com",                  
                       "codedeploy.ap-northeast-1.amazonaws.com",
                       "codedeploy.ap-northeast-2.amazonaws.com",
                       "codedeploy.ap-northeast-3.amazonaws.com",
                       "codedeploy.ap-southeast-1.amazonaws.com",
                       "codedeploy.ap-southeast-2.amazonaws.com",
                       "codedeploy.ap-southeast-3.amazonaws.com",
                       "codedeploy.ap-southeast-4.amazonaws.com",
                       "codedeploy.ap-south-1.amazonaws.com",
                       "codedeploy.ap-south-2.amazonaws.com",
                       "codedeploy.ca-central-1.amazonaws.com",
                       "codedeploy.eu-west-1.amazonaws.com",
                       "codedeploy.eu-west-2.amazonaws.com",
                       "codedeploy.eu-west-3.amazonaws.com",
                       "codedeploy.eu-central-1.amazonaws.com",
                       "codedeploy.eu-central-2.amazonaws.com",
                       "codedeploy.eu-north-1.amazonaws.com",
                       "codedeploy.eu-south-1.amazonaws.com",
                       "codedeploy.eu-south-2.amazonaws.com",
                       "codedeploy.il-central-1.amazonaws.com",
                       "codedeploy.me-central-1.amazonaws.com",
                       "codedeploy.me-south-1.amazonaws.com",
                       "codedeploy.sa-east-1.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

Per ulteriori informazioni sulla creazione di ruoli di servizio, consulta [Creazione di un ruolo per delegare le autorizzazioni a un AWS servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-creatingrole-service.html) nella Guida per l'utente *IAM*.

## Creare un ruolo di servizio (CLI)
<a name="getting-started-create-service-role-cli"></a>

1. Nel computer di sviluppo creare un file di testo denominato, ad esempio `CodeDeployDemo-Trust.json`. Questo file viene utilizzato per consentire a CodeDeploy di lavorare per conto dell'utente.

   Esegui una delle seguenti operazioni: 
   + Per concedere l'accesso a tutte le AWS regioni supportate, salva il seguente contenuto nel file:

     ```
     {
         "Version": "2012-10-17",		 	 	 
         "Statement": [
             {
                 "Sid": "",
                 "Effect": "Allow",
                 "Principal": {
                     "Service": [
                         "codedeploy.amazonaws.com"
                     ]
                 },
                 "Action": "sts:AssumeRole"
             }
         ]
     }
     ```
   + Per concedere l'accesso solo ad alcune regioni supportate, digitare il seguente contenuto nel file e rimuovere le righe corrispondenti alle regioni alle quali non si desidera consentire l'accesso:

     ```
     {
         "Version": "2012-10-17",		 	 	 
         "Statement": [
             {
                 "Sid": "",
                 "Effect": "Allow",
                 "Principal": {
                     "Service": [
                         
                         "codedeploy.us-east-1.amazonaws.com",
                         "codedeploy.us-east-2.amazonaws.com",
                         "codedeploy.us-west-1.amazonaws.com",
                         "codedeploy.us-west-2.amazonaws.com",
                         "codedeploy.ca-central-1.amazonaws.com",
                         "codedeploy.ap-east-1.amazonaws.com",                  
                         "codedeploy.ap-northeast-1.amazonaws.com",
                         "codedeploy.ap-northeast-2.amazonaws.com",
                         "codedeploy.ap-northeast-3.amazonaws.com",
                         "codedeploy.ap-southeast-1.amazonaws.com",
                         "codedeploy.ap-southeast-2.amazonaws.com",
                         "codedeploy.ap-southeast-3.amazonaws.com",
                         "codedeploy.ap-southeast-4.amazonaws.com",
                         "codedeploy.ap-south-1.amazonaws.com",
                         "codedeploy.ap-south-2.amazonaws.com",
                         "codedeploy.ca-central-1.amazonaws.com",
                         "codedeploy.eu-west-1.amazonaws.com",
                         "codedeploy.eu-west-2.amazonaws.com",
                         "codedeploy.eu-west-3.amazonaws.com",
                         "codedeploy.eu-central-1.amazonaws.com",
                         "codedeploy.eu-central-2.amazonaws.com",
                         "codedeploy.eu-north-1.amazonaws.com",
                         "codedeploy.eu-south-1.amazonaws.com",
                         "codedeploy.eu-south-2.amazonaws.com",
                         "codedeploy.il-central-1.amazonaws.com",
                         "codedeploy.me-central-1.amazonaws.com",
                         "codedeploy.me-south-1.amazonaws.com",
                         "codedeploy.sa-east-1.amazonaws.com"
                     ]
                 },
                 "Action": "sts:AssumeRole"
             }
         ]
     }
     ```
**Nota**  
Non inserire la virgola dopo l'ultimo endpoint dell'elenco.

1. Dalla stessa directory, chiama il comando **create-role** per creare un ruolo del servizio denominato **CodeDeployServiceRole** in base alle informazioni del file di testo appena creato:

   ```
   aws iam create-role --role-name CodeDeployServiceRole --assume-role-policy-document file://CodeDeployDemo-Trust.json
   ```
**Importante**  
Assicurarsi di includere `file://` prima del nome del file. Questo è obbligatorio in questo comando.

   Nell'output del comando prendere nota del valore della voce `Arn` sotto l'oggetto `Role`. Servirà successivamente al momento della creazione dei gruppi di distribuzione. Se si dimentica il valore, attenersi alle istruzioni in [Ottieni il ruolo di servizio ARN (CLI)](#getting-started-get-service-role-cli). 

1. La policy gestita utilizzata dipende dalla piattaforma di elaborazione.
   + Se la distribuzione è su una piattaforma di elaborazione EC2/on-premise:

     Chiama il **attach-role-policy** comando per assegnare al ruolo di servizio denominato le autorizzazioni in base **CodeDeployServiceRole** alla policy gestita IAM denominata. **AWSCodeDeployRole** Esempio:

     ```
     aws iam attach-role-policy --role-name CodeDeployServiceRole --policy-arn arn:aws:iam::aws:policy/service-role/AWSCodeDeployRole
     ```
   + Se la distribuzione è su una piattaforma di elaborazione AWS Lambda:

     Chiama il **attach-role-policy** comando per assegnare al ruolo di servizio denominato **CodeDeployServiceRole** le autorizzazioni in base alla policy gestita IAM denominata o. **AWSCodeDeployRoleForLambda** **AWSCodeDeployRoleForLambdaLimited** Esempio:

     ```
     aws iam attach-role-policy --role-name CodeDeployServiceRole --policy-arn arn:aws:iam::aws:policy/service-role/AWSCodeDeployRoleForLambda
     ```
   + Se la distribuzione è su una piattaforma di calcolo Amazon ECS:

     Chiama il **attach-role-policy** comando per assegnare al ruolo di servizio denominato **CodeDeployServiceRole** le autorizzazioni in base alla policy gestita IAM denominata or. **AWSCodeDeployRoleForECS** **AWSCodeDeployRoleForECSLimited** Esempio:

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

Per ulteriori informazioni sulla creazione di ruoli di servizio, consulta [Creating a role for an AWS service](https://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-xacct.html) nella *IAM User Guide*.

## Ottieni il ruolo di servizio ARN (console)
<a name="getting-started-get-service-role-console"></a>

Per utilizzare la console IAM per ottenere l'ARN del ruolo di servizio:

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, seleziona **Ruoli**.

1. Nella casella **Filter (Filtro)** digitare **CodeDeployServiceRole** e premere Invio.

1. Scegli **CodeDeployServiceRole**.

1. Prendere nota del valore del campo **Role ARN (ARN ruolo)**.

## Ottieni il ruolo di servizio ARN (CLI)
<a name="getting-started-get-service-role-cli"></a>

Per utilizzare il AWS CLI per ottenere l'ARN del ruolo di servizio, chiama il **get-role** comando sul ruolo di servizio denominato: **CodeDeployServiceRole**

```
aws iam get-role --role-name CodeDeployServiceRole --query "Role.Arn" --output text
```

Il valore restituito è l'ARN del ruolo del servizio.