

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

# Gestione delle identità e degli accessi per AWS CodeDeploy
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) è uno strumento Servizio AWS che aiuta un amministratore a controllare in modo sicuro l'accesso alle AWS risorse. Gli amministratori IAM controllano chi può essere *autenticato* (effettuato l'accesso) e *autorizzato* (disporre delle autorizzazioni) a utilizzare le risorse. CodeDeploy IAM è uno Servizio AWS strumento che puoi utilizzare senza costi aggiuntivi.

**Topics**
+ [Destinatari](#security_iam_audience)
+ [Autenticazione con identità](#security_iam_authentication)
+ [Gestione dell’accesso tramite policy](#security_iam_access-manage)
+ [Come AWS CodeDeploy funziona con IAM](security_iam_service-with-iam.md)
+ [AWS politiche gestite (predefinite) per CodeDeploy](managed-policies.md)
+ [CodeDeploy aggiornamenti alle politiche AWS gestite](managed-policies-updates.md)
+ [AWS CodeDeploy esempi di politiche basate sull'identità](security_iam_id-based-policy-examples.md)
+ [Risoluzione dei problemi AWS CodeDeploy di identità e accesso](security_iam_troubleshoot.md)
+ [CodeDeploy riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md)
+ [Prevenzione del confused deputy tra servizi](security_confused_deputy.md)

## Destinatari
<a name="security_iam_audience"></a>

Il modo in cui utilizzi AWS Identity and Access Management (IAM) varia in base al tuo ruolo:
+ **Utente del servizio**: richiedi le autorizzazioni all’amministratore se non riesci ad accedere alle funzionalità (consulta [Risoluzione dei problemi AWS CodeDeploy di identità e accesso](security_iam_troubleshoot.md))
+ **Amministratore del servizio**: determina l’accesso degli utenti e invia le richieste di autorizzazione (consulta [Come AWS CodeDeploy funziona con IAM](security_iam_service-with-iam.md))
+ **Amministratore IAM**: scrivi policy per gestire l’accesso (consulta [AWS CodeDeploy esempi di politiche basate sull'identità](security_iam_id-based-policy-examples.md))

## Autenticazione con identità
<a name="security_iam_authentication"></a>

L'autenticazione è il modo in cui accedi AWS utilizzando le tue credenziali di identità. Devi autenticarti come utente IAM o assumendo un ruolo IAM. Utente root dell'account AWS

Puoi accedere come identità federata utilizzando credenziali provenienti da una fonte di identità come AWS IAM Identity Center (IAM Identity Center), autenticazione Single Sign-On o credenziali. Google/Facebook Per ulteriori informazioni sull’accesso, consulta [Come accedere all’ Account AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) nella *Guida per l’utente di Accedi ad AWS *.

Per l'accesso programmatico, AWS fornisce un SDK e una CLI per firmare crittograficamente le richieste. Per ulteriori informazioni, consulta [AWS Signature Version 4 per le richieste API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) nella *Guida per l’utente di IAM*.

### Account AWS utente root
<a name="security_iam_authentication-rootuser"></a>

 Quando si crea un Account AWS, si inizia con un'identità di accesso denominata *utente Account AWS root* che ha accesso completo a tutte Servizi AWS le risorse. Consigliamo vivamente di non utilizzare l’utente root per le attività quotidiane. Per le attività che richiedono le credenziali come utente root, consulta [Attività che richiedono le credenziali dell’utente root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) nella *Guida per l’utente di IAM*. 

### Utenti e gruppi
<a name="security_iam_authentication-iamuser"></a>

Un *[utente IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* è una identità che dispone di autorizzazioni specifiche per una singola persona o applicazione. Ti consigliamo di utilizzare credenziali temporanee invece di utenti IAM con credenziali a lungo termine. Per ulteriori informazioni, consulta [Richiedere agli utenti umani di utilizzare la federazione con un provider di identità per accedere AWS utilizzando credenziali temporanee nella Guida](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) per l'*utente IAM*.

Un [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) specifica una raccolta di utenti IAM e semplifica la gestione delle autorizzazioni per gestire gruppi di utenti di grandi dimensioni. Per ulteriori informazioni, consulta [Casi d’uso per utenti IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) nella *Guida per l’utente di IAM*.

### Ruoli IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* è un’identità con autorizzazioni specifiche che fornisce credenziali temporanee. Puoi assumere un ruolo [passando da un ruolo utente a un ruolo IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) o chiamando un'operazione AWS CLI o AWS API. Per ulteriori informazioni, consulta [Metodi per assumere un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) nella *Guida per l’utente di IAM*.

I ruoli IAM sono utili per l’accesso degli utenti federati, le autorizzazioni utente IAM temporanee, l’accesso multi-account, l’accesso multi-servizio e le applicazioni in esecuzione su Amazon EC2. Per maggiori informazioni, consultare [Accesso a risorse multi-account in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) nella *Guida per l’utente IAM*.

## Gestione dell’accesso tramite policy
<a name="security_iam_access-manage"></a>

Puoi controllare l'accesso AWS creando policy e associandole a AWS identità o risorse. Una policy definisce le autorizzazioni quando è associata a un'identità o a una risorsa. AWS valuta queste politiche quando un preside effettua una richiesta. La maggior parte delle politiche viene archiviata AWS come documenti JSON. Per maggiori informazioni sui documenti delle policy JSON, consulta [Panoramica delle policy JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) nella *Guida per l’utente IAM*.

Utilizzando le policy, gli amministratori specificano chi ha accesso a cosa definendo quale **principale** può eseguire **azioni** su quali **risorse** e in quali **condizioni**.

Per impostazione predefinita, utenti e ruoli non dispongono di autorizzazioni. Un amministratore IAM crea le policy IAM e le aggiunge ai ruoli, che gli utenti possono quindi assumere. Le policy IAM definiscono le autorizzazioni indipendentemente dal metodo utilizzato per eseguirle.

### Policy basate sull’identità
<a name="security_iam_access-manage-id-based-policies"></a>

Le policy basate su identità sono documenti di policy di autorizzazione JSON che è possibile collegare a un’identità (utente, gruppo o ruolo). Tali policy controllano le operazioni autorizzate per l’identità, nonché le risorse e le condizioni in cui possono essere eseguite. Per informazioni su come creare una policy basata su identità, consultare [Definizione di autorizzazioni personalizzate IAM con policy gestite dal cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) nella *Guida per l’utente IAM*.

Le policy basate su identità possono essere *policy in linea* (con embedding direttamente in una singola identità) o *policy gestite* (policy autonome collegate a più identità). Per informazioni su come scegliere tra una policy gestita o una policy inline, consulta [Scegliere tra policy gestite e policy in linea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) nella *Guida per l’utente di IAM*.

### Altri tipi di policy
<a name="security_iam_access-manage-other-policies"></a>

AWS supporta tipi di policy aggiuntivi che possono impostare le autorizzazioni massime concesse dai tipi di policy più comuni:
+ **Limiti delle autorizzazioni**: imposta il numero massimo di autorizzazioni che una policy basata su identità ha la possibilità di concedere a un’entità IAM. Per ulteriori informazioni, consulta [Limiti delle autorizzazioni per le entità IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) nella *Guida per l’utente di IAM*.
+ **Politiche di controllo del servizio (SCPs)**: specificano le autorizzazioni massime per un'organizzazione o un'unità organizzativa in. AWS Organizations Per ulteriori informazioni, consultare [Policy di controllo dei servizi](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) nella *Guida per l’utente di AWS Organizations *.
+ **Politiche di controllo delle risorse (RCPs)**: imposta le autorizzazioni massime disponibili per le risorse nei tuoi account. Per ulteriori informazioni, consulta [Politiche di controllo delle risorse (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) nella *Guida per l'AWS Organizations utente*.
+ **Policy di sessione**: policy avanzate passate come parametro quando si crea una sessione temporanea per un ruolo o un utente federato. Per maggiori informazioni, consultare [Policy di sessione](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) nella *Guida per l’utente IAM*.

### Più tipi di policy
<a name="security_iam_access-manage-multiple-policies"></a>

Quando a una richiesta si applicano più tipi di policy, le autorizzazioni risultanti sono più complicate da comprendere. Per scoprire come si AWS determina se consentire o meno una richiesta quando sono coinvolti più tipi di policy, consulta [Logica di valutazione delle policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) nella *IAM User Guide*.

# Come AWS CodeDeploy funziona con IAM
<a name="security_iam_service-with-iam"></a>

Prima di utilizzare IAM per gestire l'accesso a CodeDeploy, è necessario comprendere con quali funzionalità IAM è disponibile l'uso CodeDeploy. Per ulteriori informazioni, consulta [AWS i servizi che funzionano con IAM nella IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) *User Guide*.

**Topics**
+ [CodeDeploy politiche basate sull'identità](#security_iam_service-with-iam-id-based-policies)
+ [CodeDeploy politiche basate sulle risorse](#security_iam_service-with-iam-resource-based-policies)
+ [CodeDeploy Autorizzazione basata sui tag](#security_iam_service-with-iam-tags)
+ [CodeDeploy ruoli IAM](#security_iam_service-with-iam-roles)

## CodeDeploy politiche basate sull'identità
<a name="security_iam_service-with-iam-id-based-policies"></a>

Con le policy basate sull'identità IAM, puoi specificare azioni e risorse consentite o negate e le condizioni in base alle quali le azioni sono consentite o negate. CodeDeploy supporta azioni, risorse e chiavi di condizione. Per informazioni sugli elementi utilizzati in una policy JSON, consulta il [riferimento agli elementi della policy JSON di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) nella *IAM User* Guide.

### Azioni
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento `Action` di una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l’accesso in una policy. Includere le operazioni in una policy per concedere le autorizzazioni di eseguire l’operazione associata.

Le azioni politiche in CodeDeploy uso utilizzano il `codedeploy:` prefisso che precede l'azione. Ad esempio, l'autorizzazione `codedeploy:GetApplication` fornisce all'utente le autorizzazioni per eseguire l'operazione `GetApplication`. Le dichiarazioni politiche devono includere un `NotAction` elemento `Action` or. CodeDeploy definisce il proprio set di azioni che descrivono le attività che è possibile eseguire con questo servizio.

Per specificare più azioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:

```
"Action": [
      "codedeploy:action1",
      "codedeploy:action2"
```

È possibile specificare più azioni tramite caratteri jolly (\$1). Ad esempio, includi la seguente operazione per specificare tutte le operazioni che iniziano con la parola `Describe`:

```
"Action": "ec2:Describe*"
```



Per un elenco di CodeDeploy azioni, consulta [Actions Defined by AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions) nella *IAM User Guide*.

Per una tabella che elenca tutte le azioni CodeDeploy API e le risorse a cui si applicano, consulta[CodeDeploy riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md).

### Resources
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento JSON `Resource` della policy specifica l’oggetto o gli oggetti ai quali si applica l’operazione. Come best practice, specifica una risorsa utilizzando il suo [nome della risorsa Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Per le azioni che non supportano le autorizzazioni a livello di risorsa, si utilizza un carattere jolly (\$1) per indicare che l’istruzione si applica a tutte le risorse.

```
"Resource": "*"
```



Ad esempio, puoi indicare un gruppo di distribuzione (*myDeploymentGroup*) nella tua dichiarazione utilizzando il relativo ARN come segue:

```
"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:myApplication/myDeploymentGroup"
```

È inoltre possibile specificare tutti i gruppi di distribuzione che appartengono a un account utilizzando il carattere jolly (\$1) come segue:

```
"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:*"
```

Per specificare tutte le risorse, o se un'azione API non supporta ARNs, utilizzate il carattere jolly (\$1) nell'`Resource`elemento come segue:

```
"Resource": "*"
```

Alcune azioni CodeDeploy API accettano più risorse (ad esempio,`BatchGetDeploymentGroups`). Per specificare più risorse in una singola istruzione, separale ARNs con virgole, come segue:

```
"Resource": ["arn1", "arn2"]
```

CodeDeploy fornisce una serie di operazioni per utilizzare le CodeDeploy risorse. Per un elenco di operazioni disponibili, consulta la sezione [CodeDeploy riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md).

Per un elenco dei tipi di CodeDeploy risorse e relativi ARNs, consulta [Resources Defined by AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html) nella *IAM User Guide*. Per informazioni sulle azioni in cui è possibile specificare l'ARN di ogni risorsa, vedere [Azioni definite](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions) da. AWS CodeDeploy

#### CodeDeploy risorse e operazioni
<a name="arn-formats"></a>

In CodeDeploy, la risorsa principale è un gruppo di distribuzione. In una policy, utilizzi un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy. CodeDeploy supporta altre risorse che possono essere utilizzate con gruppi di distribuzione, tra cui applicazioni, configurazioni di distribuzione e istanze. e vi si può fare riferimento come risorse secondarie. A queste risorse e sottorisorse sono ARNs associate risorse uniche. Per ulteriori informazioni, consulta [Amazon resource names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) nel *Riferimenti generali di Amazon Web Services*.


| Tipo di risorsa | Formato ARN | 
| --- | --- | 
| Gruppo di distribuzione |  `arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name`  | 
| Applicazione |  `arn:aws:codedeploy:region:account-id:application:application-name`  | 
| Configurazione dell’implementazione |  `arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name`   | 
| Istanza |  `arn:aws:codedeploy:region:account-id:instance/instance-ID`  | 
|  Tutte le CodeDeploy risorse  |  `arn:aws:codedeploy:*`  | 
|  Tutte CodeDeploy le risorse di proprietà dell'account specificato nella regione specificata  |  `arn:aws:codedeploy:region:account-id:*`  | 

**Nota**  
La maggior parte dei servizi in uso AWS considera i due punti (:) o una barra (/) come lo stesso carattere in ARNs. Tuttavia, CodeDeploy utilizza una corrispondenza esatta nei modelli e nelle regole delle risorse. Assicurati di utilizzare i caratteri ARN corretti durante la creazione di modelli di eventi, facendo in modo che corrispondano alla sintassi ARN nella risorsa.

### Chiavi di condizione
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

CodeDeploy non fornisce chiavi di condizione specifiche del servizio, ma supporta l'uso di alcune chiavi di condizione globali. Per ulteriori informazioni, consultare [Chiavi di contesto delle condizioni globali AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) nella *Guida per l'utente IAM*.



### Esempi
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Per visualizzare esempi di politiche basate sull' CodeDeploy identità, vedere. [AWS CodeDeploy esempi di politiche basate sull'identità](security_iam_id-based-policy-examples.md)

## CodeDeploy politiche basate sulle risorse
<a name="security_iam_service-with-iam-resource-based-policies"></a>

CodeDeploy non supporta politiche basate sulle risorse. [Per visualizzare un esempio di una pagina dettagliata delle politiche basate sulle risorse, vedere Utilizzo delle politiche basate sulle risorse per. AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html)

## CodeDeploy Autorizzazione basata sui tag
<a name="security_iam_service-with-iam-tags"></a>

CodeDeploy non supporta l'etichettatura delle risorse o il controllo dell'accesso in base ai tag.

## CodeDeploy ruoli IAM
<a name="security_iam_service-with-iam-roles"></a>

Un [ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) è un'entità nel tuo AWS account che dispone di autorizzazioni specifiche.

### Utilizzo di credenziali temporanee con CodeDeploy
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

È possibile utilizzare credenziali temporanee per effettuare l'accesso con la federazione, assumere un ruolo IAM o un ruolo multi-account. È possibile ottenere credenziali di sicurezza temporanee chiamando operazioni AWS STS API come [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)o. [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) 

CodeDeploy supporta l'uso di credenziali temporanee. 

### Ruoli collegati ai servizi
<a name="security_iam_service-with-iam-roles-service-linked"></a>

CodeDeploy non supporta ruoli collegati ai servizi.

### Ruoli dei servizi
<a name="security_iam_service-with-iam-roles-service"></a>

Questa funzionalità consente a un servizio di assumere un [ruolo di servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli di servizio vengono visualizzati nell' AWS account e sono di proprietà dell'account. Ciò significa che un utente può modificare le autorizzazioni per questo ruolo. Tuttavia, il farlo potrebbe pregiudicare la funzionalità del servizio.

CodeDeploy supporta i ruoli di servizio. 

### Scelta di un ruolo IAM in CodeDeploy
<a name="security_iam_service-with-iam-roles-choose"></a>

Quando crei una risorsa del gruppo di distribuzione in CodeDeploy, devi scegliere un ruolo per consentire l'accesso CodeDeploy ad Amazon EC2 per tuo conto. Se hai creato in precedenza un ruolo del servizio o un ruolo collegato ai servizi, CodeDeploy fornisce un elenco di ruoli tra cui scegliere. È importante scegliere un ruolo che consenta l'accesso per avviare e arrestare le istanze EC2.

# AWS politiche gestite (predefinite) per CodeDeploy
<a name="managed-policies"></a>

AWS affronta molti casi d'uso comuni fornendo policy IAM autonome create e amministrate da AWS. Queste politiche AWS gestite concedono le autorizzazioni per i casi d'uso comuni, in modo da evitare di dover verificare quali autorizzazioni sono necessarie. Per ulteriori informazioni, consultare [Policy gestite da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) nella *Guida per l’utente di IAM*.

**Topics**
+ [Elenco delle politiche gestite per AWS CodeDeploy](#managed-policies-list)
+ [CodeDeploy politiche e notifiche gestite](#notifications-permissions)

## Elenco delle politiche gestite per AWS CodeDeploy
<a name="managed-policies-list"></a>

Le seguenti politiche AWS gestite, che puoi allegare agli utenti del tuo account, sono specifiche per CodeDeploy:
+ `AWSCodeDeployFullAccess`: concede accesso completo a CodeDeploy.

   
**Nota**  
AWSCodeDeployFullAccess non fornisce autorizzazioni per le operazioni in altri servizi necessari per distribuire le tue applicazioni, come Amazon EC2 e Amazon S3, solo per operazioni specifiche di. CodeDeploy
+ `AWSCodeDeployDeployerAccess`: concede l'autorizzazione a registrare e distribuire le revisioni.

   
+ `AWSCodeDeployReadOnlyAccess`: concede accesso in sola lettura a CodeDeploy.

   
+ <a name="ACD-policy"></a>`AWSCodeDeployRole`: Consente di: CodeDeploy 
  + 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 di Amazon EC2 Auto Scaling, i lifecycle hook, le politiche di scalabilità e le funzionalità di warm pool di Amazon EC2
  + pubblicare informazioni su argomenti di Amazon SNS
  + recuperare informazioni sugli allarmi Amazon CloudWatch 
  + leggi e aggiorna le risorse nel servizio Elastic Load Balancing

  La policy contiene il seguente codice:

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

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Effect": "Allow",
        "Action": [
          "autoscaling:CompleteLifecycleAction",
          "autoscaling:DeleteLifecycleHook",
          "autoscaling:DescribeAutoScalingGroups",
          "autoscaling:DescribeLifecycleHooks",
          "autoscaling:PutLifecycleHook",
          "autoscaling:RecordLifecycleActionHeartbeat",
          "autoscaling:CreateAutoScalingGroup",
          "autoscaling:CreateOrUpdateTags",
          "autoscaling:UpdateAutoScalingGroup",
          "autoscaling:EnableMetricsCollection",
          "autoscaling:DescribePolicies",
          "autoscaling:DescribeScheduledActions",
          "autoscaling:DescribeNotificationConfigurations",
          "autoscaling:SuspendProcesses",
          "autoscaling:ResumeProcesses",
          "autoscaling:AttachLoadBalancers",
          "autoscaling:AttachLoadBalancerTargetGroups",
          "autoscaling:PutScalingPolicy",
          "autoscaling:PutScheduledUpdateGroupAction",
          "autoscaling:PutNotificationConfiguration",
          "autoscaling:DescribeScalingActivities",
          "autoscaling:DeleteAutoScalingGroup",
          "autoscaling:PutWarmPool",
          "ec2:DescribeInstances",
          "ec2:DescribeInstanceStatus",
          "ec2:TerminateInstances",
          "tag:GetResources",
          "sns:Publish",
          "cloudwatch:DescribeAlarms",
          "cloudwatch:PutMetricAlarm",
          "elasticloadbalancing:DescribeLoadBalancers",
          "elasticloadbalancing:DescribeLoadBalancerAttributes",
          "elasticloadbalancing:DescribeInstanceHealth",
          "elasticloadbalancing:RegisterInstancesWithLoadBalancer",
          "elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
          "elasticloadbalancing:DescribeTargetGroups",
          "elasticloadbalancing:DescribeTargetGroupAttributes",
          "elasticloadbalancing:DescribeTargetHealth",
          "elasticloadbalancing:RegisterTargets",
          "elasticloadbalancing:DeregisterTargets"
        ],
        "Resource": "*"
      }
    ]
  }
  ```

------

   
+ `AWSCodeDeployRoleForLambda`: concede CodeDeploy l'autorizzazione all'accesso AWS Lambda e a qualsiasi altra risorsa richiesta per una distribuzione.

   
+  `AWSCodeDeployRoleForECS`: concede l' CodeDeploy autorizzazione ad accedere ad Amazon ECS e a qualsiasi altra risorsa richiesta per una distribuzione. 

   
+  `AWSCodeDeployRoleForECSLimited`: concede l' CodeDeployautorizzazione ad accedere ad Amazon ECS e a qualsiasi altra risorsa richiesta per una distribuzione con le seguenti eccezioni: 
  +  Nella `hooks` sezione del AppSpec file, è `CodeDeployHook_` possibile utilizzare solo le funzioni Lambda con nomi che iniziano con. Per ulteriori informazioni, consulta [AppSpec sezione 'hook' per una distribuzione Amazon ECS](reference-appspec-file-structure-hooks.md#appspec-hooks-ecs). 
  +  L'accesso al bucket S3 è limitato ai bucket S3 con un tag di registrazione, `UseWithCodeDeploy`, che ha un valore di `true`. Per ulteriori informazioni, consulta la sezione [Etichettatura degli oggetti](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). 
+ <a name="EC2-policy"></a>`AmazonEC2RoleforAWSCodeDeployLimited`: concede CodeDeploy l'autorizzazione per ottenere ed elencare oggetti in un bucket CodeDeploy Amazon S3. La policy contiene il seguente codice:

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "s3:GetObject",
                  "s3:GetObjectVersion",
                  "s3:ListBucket"
              ],
              "Resource": "arn:aws:s3:::*/CodeDeploy/*"
          },
          {
              "Effect": "Allow",
              "Action": [
                  "s3:GetObject",
                  "s3:GetObjectVersion"
              ],
              "Resource": "*",
              "Condition": {
                  "StringEquals": {
                      "s3:ExistingObjectTag/UseWithCodeDeploy": "true"
                  }
              }
          }
      ]
  }
  ```

------

Le autorizzazioni per alcuni aspetti del processo di distribuzione sono concesse ad altri due tipi di ruolo che agiscono per conto di CodeDeploy:
+ Un *profilo di istanza* IAM è un ruolo IAM che colleghi alle tue istanze Amazon EC2. Questo profilo include le autorizzazioni necessarie per accedere ai bucket GitHub o ai repository Amazon S3 in cui sono archiviate le applicazioni. Per ulteriori informazioni, consulta [Fase 4: crea un profilo di istanza IAM per le tue istanze Amazon EC2](getting-started-create-iam-instance-profile.md).
+ Un *ruolo di servizio è un ruolo* IAM che concede le autorizzazioni a un AWS servizio in modo che possa accedere alle risorse. AWS Le policy associate al ruolo di servizio determinano a quali AWS risorse il servizio può accedere e le azioni che può eseguire con tali risorse. Infatti CodeDeploy, un ruolo di servizio viene utilizzato per quanto segue:
  + Per leggere i tag applicati alle istanze o i nomi dei gruppi Amazon EC2 Auto Scaling associati alle istanze. Ciò consente di CodeDeploy identificare le istanze in cui può distribuire applicazioni.
  + Per eseguire operazioni su istanze, gruppi Amazon EC2 Auto Scaling e sistemi di bilanciamento del carico Elastic Load Balancing.
  + Pubblicare informazioni su argomenti di Amazon SNS in modo che le notifiche possano essere inviate quando si verificano eventi di distribuzione o istanza specifici.
  + Per recuperare informazioni sugli CloudWatch allarmi per configurare il monitoraggio degli allarmi per le distribuzioni.

  Per ulteriori informazioni, consulta [Fase 2: Creare un ruolo di servizio per CodeDeploy](getting-started-create-service-role.md).

Puoi anche creare policy IAM personalizzate per concedere autorizzazioni per azioni e risorse. CodeDeploy Alleghi queste policy personalizzate ai ruoli IAM e poi assegni i ruoli agli utenti o ai gruppi che richiedono le autorizzazioni.

## CodeDeploy politiche e notifiche gestite
<a name="notifications-permissions"></a>

CodeDeploy supporta le notifiche per informare gli utenti di importanti modifiche alle implementazioni. Le politiche gestite CodeDeploy includono dichiarazioni politiche per la funzionalità di notifica. Per ulteriori informazioni, vedere [Cosa sono le notifiche?](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/welcome.html).

### Autorizzazioni per le notifiche nelle politiche gestite ad accesso completo
<a name="notifications-fullaccess"></a>

Le policy gestite `AWSCodeDeployFullAccess` includono le seguenti dichiarazioni per consentire l'accesso completo alle notifiche. Gli utenti a cui viene applicata questa policy gestita possono anche creare e gestire argomenti di Amazon SNS per le notifiche, iscrivere e annullare l'iscrizione degli utenti agli argomenti ed elencare argomenti da scegliere come obiettivi per le regole di notifica.

```
    {
        "Sid": "CodeStarNotificationsReadWriteAccess",
        "Effect": "Allow",
        "Action": [
            "codestar-notifications:CreateNotificationRule",
            "codestar-notifications:DescribeNotificationRule",
            "codestar-notifications:UpdateNotificationRule",
            "codestar-notifications:DeleteNotificationRule",
            "codestar-notifications:Subscribe",
            "codestar-notifications:Unsubscribe"
        ],
        "Resource": "*",
        "Condition" : {
            "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codedeploy:*:*:application:*"} 
        }
    },    
    {
        "Sid": "CodeStarNotificationsListAccess",
        "Effect": "Allow",
        "Action": [
            "codestar-notifications:ListNotificationRules",
            "codestar-notifications:ListTargets",
            "codestar-notifications:ListTagsforResource"
        ],
        "Resource": "*"
    },
    {
        "Sid": "CodeStarNotificationsSNSTopicCreateAccess",
        "Effect": "Allow",
        "Action": [
            "sns:CreateTopic",
            "sns:SetTopicAttributes"
        ],
        "Resource": "arn:aws:sns:*:*:codestar-notifications*"
    },
    {
      "Sid" : "CodeStarNotificationsChatbotAccess",
      "Effect" : "Allow",
      "Action" : [
        "chatbot:DescribeSlackChannelConfigurations"
      ],
      "Resource" : "*"
    },
    {
        "Sid": "SNSTopicListAccess",
        "Effect": "Allow",
        "Action": [
            "sns:ListTopics"
        ],
        "Resource": "*"
    }
```

### Autorizzazioni per le notifiche nelle politiche gestite di sola lettura
<a name="notifications-readonly"></a>

Le policy gestite `AWSCodeDeployReadOnlyAccess` includono le seguenti dichiarazioni per consentire l'accesso in sola lettura alle notifiche. Gli utenti con questa policy gestita applicata possono visualizzare le notifiche per le risorse, ma non possono crearle, gestirle o sottoscriverle. 

```
   {
        "Sid": "CodeStarNotificationsPowerUserAccess",
        "Effect": "Allow",
        "Action": [
            "codestar-notifications:DescribeNotificationRule"
        ],
        "Resource": "*",
        "Condition" : {
            "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codedeploy:*:*:application:*"} 
        }
    },    
    {
        "Sid": "CodeStarNotificationsListAccess",
        "Effect": "Allow",
        "Action": [
            "codestar-notifications:ListNotificationRules"
        ],
        "Resource": "*"
    }
```

### Autorizzazioni per le notifiche in altre politiche gestite
<a name="notifications-deployer"></a>

La politica `AWSCodeDeployDeployerAccess` gestita include le seguenti istruzioni per consentire agli utenti di creare, aggiornare, sottoscrivere e visualizzare le notifiche relative alle risorse, ma non possono eliminarle. Gli utenti a cui viene applicata questa policy gestita possono anche creare e gestire argomenti Amazon SNS per le notifiche.

Questa policy include le autorizzazioni per eseguire le seguenti operazioni:
+ `codestar-notifications:CreateNotificationRule`— Consente ai mandanti di creare notifiche.
+ `codestar-notifications:DescribeNotificationRule`— Consente ai responsabili di recuperare informazioni sulle notifiche.
+ `codestar-notifications:UpdateNotificationRule`— Consente ai mandanti di aggiornare le notifiche.
+ `codestar-notifications:Subscribe`— Consente ai mandanti di sottoscrivere gli aggiornamenti delle notifiche.
+ `codestar-notifications:Unsubscribe`— Consente ai responsabili di annullare l'iscrizione agli aggiornamenti delle notifiche.
+ `codestar-notifications:ListNotificationRules`— Consente ai responsabili di recuperare l'elenco delle regole di notifica.
+ `codestar-notifications:ListTargets`— Consente ai responsabili di recuperare l'elenco degli obiettivi.
+ `codestar-notifications:ListTagsforResource`— Consente ai mandanti di recuperare l'elenco dei tag.
+ `codestar-notifications:ListEventTypes`— Consente ai responsabili di recuperare l'elenco dei tipi di eventi.
+ `chatbot:DescribeSlackChannelConfiguration`— Consente ai responsabili di recuperare informazioni sulle configurazioni dei canali Slack.
+ `sns:ListTopics`— Consente ai responsabili di recuperare l'elenco degli argomenti di Amazon SNS per le notifiche.

```
   {
      "Sid" : "CodeStarNotificationsReadWriteAccess",
      "Effect" : "Allow",
      "Action" : [
        "codestar-notifications:CreateNotificationRule",
        "codestar-notifications:DescribeNotificationRule",
        "codestar-notifications:UpdateNotificationRule",
        "codestar-notifications:Subscribe",
        "codestar-notifications:Unsubscribe"
      ],
      "Resource" : "*",
      "Condition" : {
        "ArnLike" : {
          "codestar-notifications:NotificationsForResource" : "arn:aws:codedeploy:*:*:application:*"
        }
      }
    },
    {
      "Sid" : "CodeStarNotificationsListAccess",
      "Effect" : "Allow",
      "Action" : [
        "codestar-notifications:ListNotificationRules",
        "codestar-notifications:ListTargets",
        "codestar-notifications:ListTagsforResource",
        "codestar-notifications:ListEventTypes"
      ],
      "Resource" : "*"
    },
    {
      "Sid" : "CodeStarNotificationsChatbotAccess",
      "Effect" : "Allow",
      "Action" : [
        "chatbot:DescribeSlackChannelConfigurations"
      ],
      "Resource" : "*"
    },
    {
      "Sid" : "SNSTopicListAccess",
      "Effect" : "Allow",
      "Action" : [
        "sns:ListTopics"
      ],
      "Resource" : "*"
    }
```

Per ulteriori informazioni, consulta [Gestione delle identità e degli accessi per AWS CodeStar Notifications](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/security-iam.html).

# CodeDeploy aggiornamenti alle politiche AWS gestite
<a name="managed-policies-updates"></a>

Visualizza i dettagli sugli aggiornamenti delle politiche AWS gestite CodeDeploy da quando questo servizio ha iniziato a tenere traccia di queste modifiche. Per gli avvisi automatici sulle modifiche apportate a questa pagina, iscriversi al feed RSS alla pagina CodeDeploy [Cronologia dei documenti](document-history.md). 


| Modifica | Descrizione | Data | 
| --- | --- | --- | 
|  `AWSCodeDeployDeployerAccess`politica gestita: aggiornamenti alla politica esistente  |  È stata aggiornata l'`codestar-notifications:NotificationsForResource`azione per supportare le modifiche di convalida delle policy IAM. La risorsa originale `arn:aws:codedeploy:*` è stata aggiornata a. `arn:aws:codedeploy:*:*:application:*` Per ulteriori informazioni su questa policy, consulta [Autorizzazioni per le notifiche in altre politiche gestite](managed-policies.md#notifications-deployer).  |  16 dicembre 2024  | 
|  `AWSCodeDeployReadOnlyAccess`politica gestita: aggiornamenti alla politica esistente  |  È stata aggiornata l'`codestar-notifications:NotificationsForResource`azione per supportare le modifiche di convalida delle policy IAM. La risorsa originale `arn:aws:codedeploy:*` è stata aggiornata a. `arn:aws:codedeploy:*:*:application:*` Per ulteriori informazioni su questa policy, consulta [Autorizzazioni per le notifiche nelle politiche gestite di sola lettura](managed-policies.md#notifications-readonly).  |  16 dicembre 2024  | 
|  `AWSCodeDeployFullAccess`politica gestita: aggiornamenti alla politica esistente  |  È stata aggiornata l'`codestar-notifications:NotificationsForResource`azione per supportare le modifiche di convalida delle policy IAM. La risorsa originale `arn:aws:codedeploy:*` è stata aggiornata a. `arn:aws:codedeploy:*:*:application:*` Per ulteriori informazioni su questa policy, consulta [Autorizzazioni per le notifiche nelle politiche gestite ad accesso completo](managed-policies.md#notifications-fullaccess).  |  16 dicembre 2024  | 
|  `AWSCodeDeployRole`politica gestita: aggiornamenti alla politica esistente  |  Sono state aggiunte le `elasticloadbalancing:DescribeTargetGroupAttributes` azioni `elasticloadbalancing:DescribeLoadBalancerAttributes` e all'informativa sulla politica per supportare le modifiche di Elastic Load Balancing. Per ulteriori informazioni su questa policy, consulta [AWSCodeDeployRole](managed-policies.md#ACD-policy).  |  16 agosto 2023  | 
|  `AWSCodeDeployFullAccess`policy gestita: aggiornamenti alla policy esistente  |  È stata aggiunta l'`chatbot:ListMicrosoftTeamsChannelConfigurations`azione alla dichiarazione politica per supportare le modifiche alle notifiche. Per ulteriori informazioni su questa policy, consulta [AWSCodeDeployRole](managed-policies.md#ACD-policy).  |  11 maggio 2023  | 
|  `AWSCodeDeployRole`politica gestita: aggiornamenti alla politica esistente  |  È stata aggiunta l'` autoscaling:CreateOrUpdateTags`azione alla dichiarazione politica per supportare le modifiche all'autorizzazione di Amazon EC2 Auto Scaling. Per ulteriori informazioni su questa policy, consulta [AWSCodeDeployRole](managed-policies.md#ACD-policy).  |  3 febbraio 2023  | 
|  `AmazonEC2RoleforAWSCodeDeployLimited`politica gestita: aggiornamenti alla politica esistente  |  È stata rimossa l'`s3:ListBucket`azione dalla dichiarazione politica che include la `s3:ExistingObjectTag/UseWithCodeDeploy` condizione. Per ulteriori informazioni su questa policy, consulta [AmazonEC2RoleforAWSCodeDeployLimited](managed-policies.md#EC2-policy).  |  22 novembre 2021  | 
|  `AWSCodeDeployRole`politica gestita: aggiornamenti alla politica esistente  |  È stata aggiunta l'`autoscaling:PutWarmPool`azione per supportare l'[aggiunta di pool caldi ai gruppi Amazon EC2 Auto](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-warm-pools.html#add-warm-pool-console/ec2/userguide/ec2-auto-scaling-warm-pools.html#add-warm-pool-console) Scaling per distribuzioni blu/verdi. Sono state rimosse le azioni duplicate inutili.  |  18 maggio 2021  | 
|  CodeDeploy ha iniziato a tenere traccia delle modifiche  |  CodeDeploy ha iniziato a tenere traccia delle modifiche per le sue politiche AWS gestite.  |  18 maggio 2021  | 

# AWS CodeDeploy esempi di politiche basate sull'identità
<a name="security_iam_id-based-policy-examples"></a>

Per impostazione predefinita, gli utenti non dispongono dell'autorizzazione per creare o modificare risorse. CodeDeploy Inoltre, non possono eseguire attività utilizzando l' AWS API Console di gestione AWS AWS CLI, o. È necessario creare policy IAM che concedano ai ruoli IAM l'autorizzazione a eseguire operazioni API sulle risorse specificate di cui hanno bisogno. È quindi necessario collegare tali ruoli IAM a utenti o gruppi che richiedono tali autorizzazioni.

Per informazioni su come creare una policy basata su identità IAM utilizzando questi documenti di policy JSON di esempio, consultare [Creazione di policy nella scheda JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) nella *Guida per l'utente IAM*.

Nel CodeDeploy, le politiche basate sull'identità vengono utilizzate per gestire le autorizzazioni alle varie risorse relative al processo di distribuzione. È possibile controllare l'accesso a tutti i seguenti tipi di risorse:
+ Applicazioni e revisioni dell'applicazione.
+ Distribuzioni.
+ Configurazioni delle distribuzioni.
+ Istanze e istanze locali.

Le funzionalità controllate dalle policy delle risorse variano a seconda del tipo di risorsa, come illustrato nella seguente tabella:


****  

|  Tipi di risorse  |  Funzionalità  | 
| --- | --- | 
|  Tutti  |  Aprire ed elencare i dettagli sulle risorse  | 
|  Applicazioni Configurazioni della distribuzione Gruppi di distribuzione  |  Creare risorse  Delete resources (Elimina risorse)  | 
|  Distribuzioni  |  Creare distribuzione Arrestare distribuzione  | 
|  Revisioni dell'applicazione​  |  Registrare le revisioni dell'applicazione  | 
|  Applicazioni Gruppi di distribuzione  |  Aggiornare le risorse  | 
|  Istanze on-premises  |  Aggiungere tag alle istanze Rimuovere tag dalle istanze Registrare istanze Annullare registrazione delle istanze  | 

Il seguente esempio mostra una policy di autorizzazioni che consente a un utente di eliminare il gruppo di distribuzione denominato **WordPress\$1DepGroup** associato con l'applicazione denominata **WordPress\$1App** nella regione **us-west-2**.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:DeleteDeploymentGroup"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:deploymentgroup:WordPress_App/WordPress_DepGroup"
      ]
    }
  ]
}
```

------

**Topics**
+ [Esempi di policy gestite dal cliente](#customer-managed-policies)
+ [Best practice per le policy](#security_iam_service-with-iam-policy-best-practices)
+ [Utilizzo della console CodeDeploy](#security_iam_id-based-policy-examples-console)
+ [Consentire agli utenti di visualizzare le loro autorizzazioni](#security_iam_id-based-policy-examples-view-own-permissions)

## Esempi di policy gestite dal cliente
<a name="customer-managed-policies"></a>

In questa sezione, puoi trovare esempi di politiche che concedono autorizzazioni per varie azioni. CodeDeploy Queste politiche funzionano quando si utilizza l' CodeDeploy API o AWS SDKs il AWS CLI. È necessario concedere autorizzazioni aggiuntive per le operazioni eseguite nella console. Per ulteriori informazioni sulla concessione delle autorizzazioni della console, consultare [Utilizzo della console CodeDeploy](#security_iam_id-based-policy-examples-console).



**Nota**  
Tutti gli esempi utilizzano la regione degli Stati Uniti occidentali (Oregon) (`us-west-2`) e contengono account fittizi. IDs

 **Esempi**
+ [Esempio 1: consentire l'autorizzazione a eseguire CodeDeploy operazioni in una singola regione](#identity-based-policies-example-1)
+ [Esempio 2: consenti l'autorizzazione a registrare le revisioni per una singola applicazione](#identity-based-policies-example-2)
+ [Esempio 3: consentire l'autorizzazione a creare distribuzioni per un singolo gruppo di distribuzione](#identity-based-policies-example-3)

### Esempio 1: consentire l'autorizzazione a eseguire CodeDeploy operazioni in una singola regione
<a name="identity-based-policies-example-1"></a>

L'esempio seguente concede le autorizzazioni per eseguire CodeDeploy operazioni solo nella **us-west-2** regione:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:*"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:*"
      ]
    }
  ]
}
```

------

### Esempio 2: consenti l'autorizzazione a registrare le revisioni per una singola applicazione
<a name="identity-based-policies-example-2"></a>

Nell'esempio seguente vengono concesse autorizzazioni per registrare le revisioni dell'applicazione per tutte le applicazioni che iniziano con **Test** nella regione **us-west-2**:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:RegisterApplicationRevision"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:application:Test*"
      ]
    }
  ]
}
```

------

### Esempio 3: consentire l'autorizzazione a creare distribuzioni per un singolo gruppo di distribuzione
<a name="identity-based-policies-example-3"></a>

L'esempio seguente consente l'autorizzazione a creare distribuzioni per il gruppo di distribuzione denominato **WordPress\$1DepGroup** associato all'applicazione denominata**WordPress\$1App**, la configurazione di distribuzione personalizzata denominata e tutte le revisioni dell'applicazione associate all'applicazione **ThreeQuartersHealthy** denominata. **WordPress\$1App** Tutte queste risorse sono nella regione **us-west-2**.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:CreateDeployment"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:deploymentgroup:WordPress_App/WordPress_DepGroup"
      ]
    },
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:GetDeploymentConfig"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:deploymentconfig:ThreeQuartersHealthy"
      ]
    },
    {
      "Effect" : "Allow",
      "Action" : [
        "codedeploy:GetApplicationRevision"
      ],
      "Resource" : [
        "arn:aws:codedeploy:us-west-2:111122223333:application:WordPress_App"
      ]
    }
  ]
}
```

------

## Best practice per le policy
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare risorse nel tuo account. CodeDeploy Queste operazioni possono comportare costi aggiuntivi per l’ Account AWS. Quando si creano o modificano policy basate sull’identità, seguire queste linee guida e raccomandazioni:
+ **Inizia con le policy AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere autorizzazioni** *a utenti e carichi di lavoro, utilizza le politiche gestite che concedono le autorizzazioni per molti casi d'uso comuni.AWS * Sono disponibili nel tuo. Account AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dai AWS clienti specifiche per i tuoi casi d'uso. Per maggiori informazioni, consulta [Policy gestite da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) o [Policy gestite da AWS per le funzioni dei processi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) nella *Guida per l’utente di IAM*.
+ **Applicazione delle autorizzazioni con privilegio minimo** - Quando si impostano le autorizzazioni con le policy IAM, concedere solo le autorizzazioni richieste per eseguire un’attività. È possibile farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come *autorizzazioni con privilegio minimo*. Per maggiori informazioni sull’utilizzo di IAM per applicare le autorizzazioni, consulta [Policy e autorizzazioni in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) nella *Guida per l’utente di IAM*.
+ **Condizioni d’uso nelle policy IAM per limitare ulteriormente l’accesso** - Per limitare l’accesso ad azioni e risorse è possibile aggiungere una condizione alle policy. Ad esempio, è possibile scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzando SSL. Puoi anche utilizzare le condizioni per concedere l'accesso alle azioni del servizio se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio CloudFormation. Per maggiori informazioni, consultare la sezione [Elementi delle policy JSON di IAM: condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) nella *Guida per l’utente di IAM*.
+ **Utilizzo dello strumento di analisi degli accessi IAM per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali** - Lo strumento di analisi degli accessi IAM convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio (JSON) della policy IAM e alle best practice di IAM. Lo strumento di analisi degli accessi IAM offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per maggiori informazioni, consultare [Convalida delle policy per il Sistema di analisi degli accessi IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) nella *Guida per l’utente di IAM*.
+ **Richiedi l'autenticazione a più fattori (MFA**): se hai uno scenario che richiede utenti IAM o un utente root nel Account AWS tuo, attiva l'MFA per una maggiore sicurezza. Per richiedere la MFA quando vengono chiamate le operazioni API, aggiungere le condizioni MFA alle policy. Per maggiori informazioni, consultare [Protezione dell’accesso API con MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) nella *Guida per l’utente di IAM*.

Per maggiori informazioni sulle best practice in IAM, consulta [Best practice di sicurezza in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) nella *Guida per l’utente di IAM*.

## Utilizzo della console CodeDeploy
<a name="security_iam_id-based-policy-examples-console"></a>

Se utilizzi la CodeDeploy console, devi disporre di un set minimo di autorizzazioni che ti consenta di descrivere altre AWS risorse per il tuo AWS account. Per CodeDeploy utilizzarla nella CodeDeploy console, è necessario disporre delle autorizzazioni dei seguenti servizi:
+ Amazon EC2 Auto Scaling
+ AWS CodeDeploy
+ Amazon Elastic Compute Cloud
+ Elastic Load Balancing
+ AWS Identity and Access Management
+ Amazon Simple Storage Service
+ Amazon Simple Notification Service
+ Amazon CloudWatch

Se crei una policy IAM più restrittiva delle autorizzazioni minime richieste, la console non funzionerà come previsto per gli utenti che hanno un ruolo in quella policy IAM. Per garantire che tali utenti possano continuare a utilizzare la CodeDeploy console, collega anche la policy `AWSCodeDeployReadOnlyAccess` gestita al ruolo assegnato all'utente, come descritto in. [AWS politiche gestite (predefinite) per CodeDeploy](managed-policies.md)

Non è necessario consentire autorizzazioni minime per la console per gli utenti che effettuano chiamate solo verso AWS CLI o l' CodeDeploy API.

## Consentire agli utenti di visualizzare le loro autorizzazioni
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono collegate alla relativa identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o utilizzando l'API o a livello di codice. AWS CLI AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

# Risoluzione dei problemi AWS CodeDeploy di identità e accesso
<a name="security_iam_troubleshoot"></a>

Utilizza le seguenti informazioni per aiutarti a diagnosticare e risolvere i problemi più comuni che potresti riscontrare quando lavori con un CodeDeploy IAM.

**Topics**
+ [Non sono autorizzato a eseguire iam: PassRole](#security_iam_troubleshoot-passrole)
+ [Voglio consentire a persone esterne al mio AWS account di accedere alle mie CodeDeploy risorse](#security_iam_troubleshoot-cross-account-access)

## Non sono autorizzato a eseguire iam: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Se ricevi un errore che indica che non sei autorizzato a eseguire l'operazione `iam:PassRole`, le tue policy devono essere aggiornate per poter passare un ruolo a CodeDeploy.

Alcuni Servizi AWS consentono di passare un ruolo esistente a quel servizio invece di creare un nuovo ruolo di servizio o un ruolo collegato al servizio. Per eseguire questa operazione, è necessario disporre delle autorizzazioni per trasmettere il ruolo al servizio.

L'errore di esempio seguente si verifica quando un utente IAM denominato `marymajor` cerca di utilizzare la console per eseguire un'operazione in CodeDeploy. Tuttavia, l'operazione richiede che il servizio disponga delle autorizzazioni concesse da un ruolo di servizio. Mary non dispone delle autorizzazioni per trasmettere il ruolo al servizio.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

In questo caso, le policy di Mary devono essere aggiornate per poter eseguire l’operazione `iam:PassRole`.

Se hai bisogno di aiuto, contatta il tuo AWS amministratore. L’amministratore è la persona che ti ha fornito le credenziali di accesso.

## Voglio consentire a persone esterne al mio AWS account di accedere alle mie CodeDeploy risorse
<a name="security_iam_troubleshoot-cross-account-access"></a>

È possibile creare un ruolo con il quale utenti in altri account o persone esterne all’organizzazione possono accedere alle tue risorse. È possibile specificare chi è attendibile per l’assunzione del ruolo. Per i servizi che supportano politiche basate sulle risorse o liste di controllo degli accessi (ACLs), puoi utilizzare tali politiche per concedere alle persone l'accesso alle tue risorse.

Per maggiori informazioni, consulta gli argomenti seguenti:
+ Per sapere se CodeDeploy supporta queste funzionalità, consulta. [Come AWS CodeDeploy funziona con IAM](security_iam_service-with-iam.md)
+ Per scoprire come fornire l'accesso alle tue risorse attraverso Account AWS le risorse di tua proprietà, consulta [Fornire l'accesso a un utente IAM in un altro Account AWS di tua proprietà](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) nella *IAM User Guide*.
+ Per scoprire come fornire l'accesso alle tue risorse a terze parti Account AWS, consulta [Fornire l'accesso a soggetti Account AWS di proprietà di terze parti](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) nella *Guida per l'utente IAM*.
+ Per informazioni su come fornire l'accesso tramite la federazione delle identità, consulta [Fornire l'accesso a utenti autenticati esternamente (federazione delle identità)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) nella *Guida per l'utente IAM*.
+ Per informazioni sulle differenze di utilizzo tra ruoli e policy basate su risorse per l’accesso multi-account, consulta [Accesso a risorse multi-account in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) nella *Guida per l’utente di IAM*.

# CodeDeploy riferimento alle autorizzazioni
<a name="auth-and-access-control-permissions-reference"></a>

Utilizza la tabella seguente quando configuri politiche di accesso e scrittura delle autorizzazioni che puoi allegare a un'identità IAM (politiche basate sull'identità). La tabella elenca ogni operazione CodeDeploy API, le azioni per le quali è possibile concedere le autorizzazioni per eseguire l'azione e il formato della risorsa ARN da utilizzare per concedere le autorizzazioni. Puoi specificare le operazioni nel campo `Action` della policy. Puoi specificare un ARN, con o senza un carattere jolly (\$1), come valore della risorsa nel campo `Resource` della policy.

Puoi utilizzare le chiavi AWS-wide condition nelle tue CodeDeploy politiche per esprimere condizioni. Per un elenco completo delle chiavi AWS-wide, consulta [Available keys](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys) nella *IAM User Guide*.

Per specificare un'operazione, utilizza il prefisso `codedeploy:` seguito dal nome dell'operazione API (ad esempio, `codedeploy:GetApplication` and `codedeploy:CreateApplication`). Per specificare più operazioni in una sola istruzione, separa ciascuna di esse con una virgola (ad esempio, `"Action": ["codedeploy:action1", "codedeploy:action2"]`).

**Utilizzo di caratteri jolly**

Puoi usare un carattere jolly (\$1) nell'ARN per specificare più operazioni o risorse. Ad esempio, `codedeploy:*` specifica tutte le CodeDeploy azioni e `codedeploy:Get*` specifica tutte le CodeDeploy azioni che iniziano con la parola. `Get` L'esempio seguente consente di concedere l'accesso a tutti i gruppi di distribuzione con nomi che iniziano con `West` e sono associati alle applicazioni che hanno nomi iniziano con `Test`. 

```
arn:aws:codedeploy:us-west-2:444455556666:deploymentgroup:Test*/West*
```

Puoi usare i caratteri jolly solo con le seguenti risorse elencate nella tabella:
+ *application-name*
+ *deployment-group-name*
+ *deployment-configuration-name*
+ *instance-ID*

I caratteri jolly non possono essere usati con o. *region* *account-id* Per ulteriori informazioni sui caratteri jolly, consulta [Identificatori IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) nella *Guida per l'utente IAM*. 

**Nota**  
 Nell'ARN per ciascuna operazione la risorsa è seguita da due punti (:). La risorsa può anche essere seguita da una barra (/). Per ulteriori informazioni, consulta l'[CodeDeployesempio ARNs](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-codedeploy). 

Utilizzare le barre di scorrimento per visualizzare il resto della tabella.


**CodeDeploy Operazioni API e autorizzazioni richieste per le azioni**  

| CodeDeploy Operazioni API | Autorizzazioni necessarie (operazioni API) | Resources | 
| --- | --- | --- | 
|  [AddTagsToOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_AddTagsToOnPremisesInstances.html)  |  `codedeploy:AddTagsToOnPremisesInstances` Richieste per aggiungere tag a una o più istanze locali.  |  arn:aws:codedeploy: ::instance/ *region* *account-id* *instance-ID*  | 
|  [BatchGetApplicationRevisions](https://docs.aws.amazon.com/codedeploy/latest/APIReference/BatchGetApplicationRevisions.html)  |  `codedeploy:BatchGetApplicationRevisions` Richieste per ottenere informazioni sulle diverse revisioni dell'applicazione associate all'utente .  |  arn:aws:codedeploy: ::applicazione: *region* *account-id* *application-name*  | 
|  [BatchGetApplications](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetApplications.html)  |  `codedeploy:BatchGetApplications` Richieste per ottenere informazioni sulle diverse applicazioni associate all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::applicazione: \$1  | 
| [BatchGetDeploymentGroups](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeploymentGroups.html) |  `codedeploy:BatchGetDeploymentGroups` Richieste per ottenere informazioni sui diversi gruppi di distribuzione associate all'utente .  |  arn:aws:codedeploy: *region* ::deploymentgroup:/*account-id**application-name**deployment-group-name*  | 
| [BatchGetDeploymentInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeploymentInstances.html) | codedeploy:BatchGetDeploymentInstancesRichieste per ottenere informazioni su una o più istanze un gruppo di distribuzione. |  arn:aws:codedeploy: *region* *account-id* ::deploymentgroup:/*application-name**deployment-group-name*  | 
|  [BatchGetDeployments](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeployments.html)  |  `codedeploy:BatchGetDeployments` Richieste per ottenere informazioni sulle diverse distribuzioni associate all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::deploymentgroup:/*application-name**deployment-group-name*  | 
|  [BatchGetOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetOnPremisesInstances.html)  |  `codedeploy:BatchGetOnPremisesInstances` Richieste per ottenere informazioni su una o più istanze locali.  |  arn:aws:codedeploy:*region*:: \$1 *account-id*  | 
|  [ContinueDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ContinueDeployment.html)  |  `codedeploy:ContinueDeployment` Necessario durante una blue/green distribuzione per avviare il processo di registrazione delle istanze in un ambiente sostitutivo con un sistema di bilanciamento del carico Elastic Load Balancing.  |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  [CreateApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateApplication.html)  |  `codedeploy:CreateApplication` Richieste per creare un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::applicazione: *application-name*  | 
|  [CreateDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html)¹  |  `codedeploy:CreateDeployment` Richieste per la creazione di una distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  [CreateDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentConfig.html)  |  `codedeploy:CreateDeploymentConfig` Richieste per la creazione di una configurazione della distribuzione personalizzata associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentconfig: *account-id* *deployment-configuration-name*   | 
|  [CreateDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentGroup.html)  |  `codedeploy:CreateDeploymentGroup` Richieste per la creazione di un gruppo di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentgroup:/*account-id**application-name**deployment-group-name*  | 
|  [DeleteApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteApplication.html)  |  `codedeploy:DeleteApplication` Richieste per eliminare un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::applicazione: *application-name*  | 
|  [DeleteDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteDeploymentConfig.html)  |  `codedeploy:DeleteDeploymentConfig` Richieste per eliminare una configurazione della distribuzione personalizzata associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::deploymentconfig: *deployment-configuration-name*   | 
|  [DeleteDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteDeploymentGroup.html)  |  `codedeploy:DeleteDeploymentGroup` Richieste per eliminare un gruppo di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentgroup:/*account-id**application-name**deployment-group-name*  | 
|  [DeregisterOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeregisterOnPremisesInstance.html)  |  `codedeploy:DeregisterOnPremisesInstance` Richieste per l'annullamento della registrazione di un'istanza locale.  |  arn:aws:codedeploy: *region* *account-id* ::instance/ *instance-ID*  | 
|  [GetApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetApplication.html)  |  `codedeploy:GetApplication` Richieste per ottenere informazioni su una singola applicazione associata all'utente .  |  arn:aws:codedeploy: ::applicazione: *region* *account-id* *application-name*  | 
|  [GetApplicationRevision](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetApplicationRevision.html)  |  `codedeploy:GetApplicationRevision` Richieste per ottenere informazioni su una singola revisione dell'applicazione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::applicazione: *application-name*  | 
|  [GetDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeployment.html)  |  `codedeploy:GetDeployment` Richieste per ottenere informazioni su una singola distribuzione a un gruppo di distribuzione associato all'utente .  |  arn:aws:codedeploy: *region* :deploymentgroup*account-id*:/*application-name**deployment-group-name*  | 
|  [GetDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentConfig.html)  |  `codedeploy:GetDeploymentConfig` Richieste per ottenere informazioni su una singola configurazione di distribuzione associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentconfig: *account-id* *deployment-configuration-name*   | 
|  [GetDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentGroup.html)  |  `codedeploy:GetDeploymentGroup` Richieste per ottenere informazioni su un singolo gruppo di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentgroup:/*account-id**application-name**deployment-group-name*  | 
|  [GetDeploymentInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentInstance.html)  |  `codedeploy:GetDeploymentInstance` Richieste per ottenere informazioni su una singola istanza in una distribuzione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::deploymentgroup:/*application-name**deployment-group-name*  | 
|  [GetDeploymentTarget](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentTarget.html)  |  `codedeploy:GetDeploymentTarget` Richieste per ottenere informazioni su un singolo target in una distribuzione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::deploymentgroup:/*application-name**deployment-group-name*  | 
|  [GetOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetOnPremisesInstance.html)  |  `codedeploy:GetOnPremisesInstance` Richieste per ottenere informazioni su una singola istanza locale.  |  arn:aws:codedeploy: *region* *account-id* ::instance/ *instance-ID*  | 
|  [ListApplicationRevisions](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListApplicationRevisions.html)  |  `codedeploy:ListApplicationRevisions` Richieste per ottenere informazioni su tutte le revisioni dell'applicazione per un'applicazione associate all'utente .  |  arn:aws:codedeploy: *region* ::applicazione: \$1 *account-id*  | 
|  [ListApplications](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListApplications.html)  |  `codedeploy:ListApplications` Richieste per ottenere informazioni su tutte le applicazioni associate all'utente .  |  arn:aws:codedeploy: *region* ::applicazione: \$1 *account-id*  | 
|  [ListDeploymentConfigs](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentConfigs.html)  |  `codedeploy:ListDeploymentConfigs` Richieste per ottenere informazioni su tutte le configurazioni di distribuzione associate all'utente .  |  arn:aws:codedeploy: *region* ::deploymentconfig: \$1 *account-id*  | 
|  [ListDeploymentGroups](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentGroups.html)  |  `codedeploy:ListDeploymentGroups` Richieste per ottenere informazioni su tutti i gruppi di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* ::deploymentgroup: /\$1 *account-id* *application-name*  | 
|  [ListDeploymentInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentInstances.html)  |  `codedeploy:ListDeploymentInstances` Necessario per ottenere informazioni su tutte le istanze di una distribuzione associate all'utente o all'account. AWS   |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListDeployments](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeployments.html)  |  `codedeploy:ListDeployments` Necessario per inviare informazioni su tutte le distribuzioni a un gruppo di distribuzione associato all'utente o per ottenere tutte le distribuzioni associate all'utente.  |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListDeploymentTargets](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentTargets.html)  |  `codedeploy:ListDeploymentTargets` Necessario per ottenere informazioni su tutti gli obiettivi di una distribuzione associata all'utente.  |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListGitHubAccountTokenNames](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListGitHubAccountTokenNames.html)  |  `codedeploy:ListGitHubAccountTokenNames` Necessario per ottenere un elenco dei nomi delle connessioni memorizzate agli account. GitHub   |  arn:aws:codedeploy::: \$1 *region* *account-id*  | 
|  [ListOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListOnPremisesInstances.html)  |  `codedeploy:ListOnPremisesInstances` Richieste per ottenere un elenco di uno o più nomi di istanza locali.  |  arn:aws:codedeploy:*region*:*account-id*: \$1  | 
|  PutLifecycleEventHookExecutionStatus  |  `codedeploy:PutLifecycleEventHookExecutionStatus` Richieste per fornire una notifica dello stato del ciclo di vita di esecuzione di un evento hook.  |  arn:aws:codedeploy: *region* *account-id* :deploymentgroup:/*application-name**deployment-group-name*  | 
|  [RegisterApplicationRevision](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RegisterApplicationRevision.html)  |  `codedeploy:RegisterApplicationRevision` Richieste per registrare informazioni su una revisione dell'applicazione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: *region* *account-id* ::applicazione: *application-name*  | 
|  [RegisterOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RegisterOnPremisesInstance.html)  |  `codedeploy:RegisterOnPremisesInstance` Richieste per registrare un'istanza locale con CodeDeploy.  |  arn:aws:codedeploy: *region* :instance/ *account-id* *instance-ID*  | 
|  [RemoveTagsFromOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RemoveTagsFromOnPremisesInstances.html)  |  `codedeploy:RemoveTagsFromOnPremisesInstances` Richieste per rimuovere tag da una o più istanze locali.  |  arn:aws:codedeploy: ::instance/ *region* *account-id* *instance-ID*  | 
|  [SkipWaitTimeForInstanceTermination](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_SkipWaitTimeForInstanceTermination.html)  |  `codedeploy:SkipWaitTimeForInstanceTermination` Richiesto in una blue/green distribuzione per sovrascrivere un tempo di attesa specificato e iniziare immediatamente a terminare le istanze nell'ambiente originale.  |  arn:aws:codedeploy: ::instance/ *region* *account-id* *instance-ID*  | 
|  [StopDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_StopDeployment.html)  |  `codedeploy:StopDeployment` Richieste per arrestare una distribuzione in corso a un gruppo di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: ::deploymentgroup:*region*/*account-id**application-name**deployment-group-name*  | 
|  [UpdateApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_UpdateApplication.html)³  |  `codedeploy:UpdateApplication` Richieste per modificare le informazioni su un'applicazione associata all'utente .  |  arn:aws:codedeploy: ::applicazione: *region* *account-id* *application-name*  | 
|  [UpdateDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_UpdateDeploymentGroup.html)³  |  `codedeploy:UpdateDeploymentGroup` Richieste per modificare le informazioni su un singolo gruppo di distribuzione per un'applicazione associata all'utente .  |  arn:aws:codedeploy: ::deploymentgroup:/*region**account-id**application-name**deployment-group-name*  | 
|  ¹ Quando si specificano le `CreateDeployment` autorizzazioni, è necessario specificare anche le autorizzazioni per la configurazione di distribuzione e/o le autorizzazioni per la revisione dell'`GetDeploymentConfig`applicazione. `GetApplicationRevision` `RegisterApplicationRevision` Inoltre, se includi il `overrideAlarmConfiguration` parametro nella chiamata `CreateDeployment` API, devi specificare l'autorizzazione. `UpdateDeploymentGroup` ² Valido per `ListDeployments` quando si fornisce un gruppo di distribuzione specifico, ma non quando si elencano tutte le distribuzioni associate all'utente. ³ Infatti`UpdateApplication`, è necessario disporre `UpdateApplication` delle autorizzazioni sia per il vecchio che per il nuovo nome dell'applicazione. Per le operazioni `UpdateDeploymentGroup` che comportano la modifica del nome di un gruppo di distribuzione, è necessario disporre delle autorizzazioni`UpdateDeploymentGroup` per i nomi dei gruppi di distribuzione vecchi e nuovi.   | 

# Prevenzione del confused deputy tra servizi
<a name="security_confused_deputy"></a>

Il problema confused deputy è un problema di sicurezza in cui un’entità che non dispone dell’autorizzazione per eseguire un’azione può costringere un’entità maggiormente privilegiata a eseguire l’azione. Nel frattempo AWS, l'impersonificazione tra servizi può causare il confuso problema del vice. La rappresentazione tra servizi può verificarsi quando un servizio (il servizio chiamante) effettua una chiamata a un altro servizio (il servizio chiamato). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare che ciò accada, AWS mette a disposizione strumenti che consentono di proteggere i dati relativi a tutti i servizi con responsabili del servizio a cui è stato concesso l'accesso alle risorse del vostro account. 

Ti consigliamo di utilizzare le chiavi [aws: SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) e [aws: SourceAccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) global condition context nelle politiche delle risorse per limitare le autorizzazioni che CodeDeploy forniscono un altro servizio alla risorsa. Se si utilizzano entrambe le chiavi di contesto delle condizioni globali e il valore `aws:SourceArn` contiene l'ID account, il valore `aws:SourceAccount` e l'account nel valore `aws:SourceArn` deve utilizzare lo stesso ID account nella stessa dichiarazione di policy. Utilizzare `aws:SourceArn` se si desidera consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizza `aws:SourceAccount` se desideri che qualsiasi risorsa in quell'account sia associata all'uso tra servizi.

Per le distribuzioni EC2/on-premise AWS , Lambda e Amazon ECS regolari, il valore di dovrebbe `aws:SourceArn` includere il CodeDeploy gruppo di distribuzione ARN con il quale è consentito assumere il ruolo IAM. CodeDeploy 

Per le [distribuzioni blu/green di Amazon ECS create tramite CloudFormation](deployments-create-ecs-cfn.md), il valore di dovrebbe `aws:SourceArn` includere lo stack CloudFormation ARN con cui CodeDeploy è consentito assumere il ruolo IAM.

Il modo più efficace per proteggersi dal confuso problema del vice è utilizzare la `aws:SourceArn` chiave con l'ARN completo della risorsa. Se non conosci l'ARN completo o se stai specificando più risorse, usa caratteri jolly (\$1) per le parti sconosciute.

Ad esempio, potresti utilizzare la seguente policy di fiducia con una distribuzione EC2/on-premise, AWS Lambda o Amazon ECS normale:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "codedeploy.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:codedeploy:us-east-1:111122223333:deploymentgroup:myApplication/*"
                }
            }
        }
    ]
}
```

------

Per una [distribuzione blu/verde di Amazon ECS creata tramite CloudFormation](deployments-create-ecs-cfn.md), puoi utilizzare:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "codedeploy.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:cloudformation:us-east-1:111122223333:stack/MyCloudFormationStackName/*"
                }
            }
        }
    ]
}
```

------