

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

# Identity and Access Management in Amazon SQS
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) è un sistema Servizio AWS che aiuta un amministratore a controllare in modo sicuro l'accesso alle AWS risorse. Gli amministratori IAM controllano chi può essere *autenticato* (accesso effettuato) e *autorizzato* (dispone di autorizzazioni) per utilizzare le risorse Amazon SQS. IAM è un software Servizio AWS che puoi utilizzare senza costi aggiuntivi.

## 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 di identità e accesso ad Amazon Simple Queue Service](security_iam_troubleshoot.md))
+ **Amministratore del servizio**: determina l’accesso degli utenti e invia le richieste di autorizzazione (consulta [Come funziona Amazon Simple Queue Service con IAM](security_iam_service-with-iam.md))
+ **Amministratore IAM**: scrivi policy per gestire l’accesso (consulta [Best practice per le policy](sqs-basic-examples-of-iam-policies.md#security_iam_id-based-policy-examples))

## 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 dell’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 IAM*. 

### Identità federata
<a name="security_iam_authentication-federated"></a>

Come procedura ottimale, richiedi agli utenti umani di utilizzare la federazione con un provider di identità per accedere Servizi AWS utilizzando credenziali temporanee.

Un'*identità federata* è un utente della directory aziendale, del provider di identità Web o Directory Service che accede Servizi AWS utilizzando le credenziali di una fonte di identità. Le identità federate assumono ruoli che forniscono credenziali temporanee.

Per la gestione centralizzata degli accessi, si consiglia di utilizzare AWS IAM Identity Center. Per ulteriori informazioni, consulta [Che cos’è il Centro identità IAM?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) nella *Guida per l’utente di AWS IAM Identity Center *.

### Utenti e gruppi IAM
<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](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) nella Guida 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*.

### Policy basate sulle risorse
<a name="security_iam_access-manage-resource-based-policies"></a>

Le policy basate su risorse sono documenti di policy JSON che è possibile collegare a una risorsa. Gli esempi includono le *policy di trust dei ruoli* IAM e le *policy dei bucket* di Amazon S3. Nei servizi che supportano policy basate sulle risorse, gli amministratori dei servizi possono utilizzarli per controllare l’accesso a una risorsa specifica. In una policy basata sulle risorse è obbligatorio [specificare un’entità principale](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html).

Le policy basate sulle risorse sono policy inline che si trovano in tale servizio. Non è possibile utilizzare le policy AWS gestite di IAM in una policy basata sulle risorse.

### 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*.

# Panoramica sulla gestione degli accessi in Amazon SQS
<a name="sqs-overview-of-managing-access"></a>

Ogni AWS risorsa è di proprietà di un Account AWS utente e le autorizzazioni per creare o accedere a una risorsa sono regolate da politiche di autorizzazione. Un amministratore account può collegare le autorizzazioni di policy a identità IAM (utenti, gruppi e ruoli) e alcuni servizi (ad esempio Amazon SQS) supportano anche il collegamento delle policy di autorizzazione alle risorse.

**Nota**  
Un *amministratore account* (o un utente amministratore) è un utente con privilegi di amministratore. Per ulteriori informazioni, consulta [Best practice IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) nella *Guida per l'utente di IAM*.

Nel concedere le autorizzazioni, devi specificare quali utenti riceveranno le autorizzazioni, la risorsa per cui acquisiscono le autorizzazioni e le azioni specifiche che desideri consentire sulla risorsa.

## Risorse e operazioni di Amazon Simple Queue Service
<a name="sqs-resource-and-operations"></a>

In Amazon SQS, l'unica risorsa è la *coda*. In una policy, utilizza un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy stessa. La seguente risorsa dispone di un ARN univoco associato:


| Tipo di risorsa | Formato ARN | 
| --- | --- | 
| Queue | arn:aws:sqs:region:account\$1id:queue\$1name | 

Di seguito sono elencati alcuni esempi di formato ARN per le code:
+ Un ARN per una coda denominata `my_queue` nella regione Stati Uniti orientali (Ohio), appartenente all'account 123456789012: AWS 

  ```
  arn:aws:sqs:us-east-2:123456789012:my_queue
  ```
+ Un ARN per una coda denominata `my_queue` in ciascuna delle diverse regioni che Amazon SQS supporta:

  ```
  arn:aws:sqs:*:123456789012:my_queue
  ```
+ Un ARN che utilizza `*` o `?` come carattere jolly per il nome della coda. Nei seguenti esempi, l'ARN corrisponde a tutte le code con prefisso `my_prefix_`:

  ```
  arn:aws:sqs:*:123456789012:my_prefix_*
  ```

Puoi ottenere il valore ARN per una coda esistente chiamando l'azione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html). Il valore dell'attributo `QueueArn` è l'ARN della coda. [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

Amazon SQS offre un set di azioni che funzionano con la risorsa della coda. Per ulteriori informazioni, consulta [Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse](sqs-api-permissions-reference.md).

## Informazioni sulla proprietà delle risorse
<a name="sqs-understanding-resource-ownership"></a>

 Account AWS Possiede le risorse create nell'account, indipendentemente da chi le ha create. Nello specifico, il proprietario della risorsa è l' Account AWS dell'*entità principale* (ovvero l'account root, un utente IAM o un ruolo IAM) che autentica la richiesta di creazione della risorsa. Negli esempi seguenti viene illustrato il funzionamento:
+ Se utilizzi le credenziali dell'account root del tuo account Account AWS per creare una coda Amazon SQS, Account AWS sei il proprietario della risorsa (in Amazon SQS, la risorsa è la coda Amazon SQS).
+ Se crei un utente nel tuo Account AWS e concedi le autorizzazioni per creare una coda all'utente, l'utente può creare la coda. Tuttavia, tieni presente che Account AWS (a cui appartiene l'utente) è il proprietario della risorsa della coda.
+ Se crei un ruolo IAM Account AWS con le autorizzazioni per creare una coda Amazon SQS, chiunque possa assumere il ruolo può creare una coda. Il tuo Account AWS (a cui appartiene il ruolo) possiede la risorsa della coda. 

## Gestione dell'accesso alle risorse
<a name="sqs-managing-access-to-resources"></a>

Una *policy di autorizzazioni* descrive le autorizzazioni concesse agli account. Nella sezione seguente vengono descritte le opzioni disponibili per la creazione di policy relative alle autorizzazioni.

**Nota**  
 In questa sezione viene descritto IAM nel contesto di Amazon SQS. Non vengono fornite informazioni dettagliate sul servizio IAM. Per la documentazione di IAM completa, consulta la pagina [Che cos'è IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) nella *Guida per l'utente di IAM*. Per informazioni sulla sintassi delle policy IAM e le rispettive descrizioni, consulta [Riferimento alle policy IAM di AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) nella *Guida per l'utente di IAM*. 

Le policy collegate a un'identità IAM vengono definite policy *basate su identità* (policy IAM), mentre quelle collegate a una risorsa vengono definite policy *basate su risorse*.

### Policy basate sull’identità
<a name="sqs-identity-based-features-of-sqs-policies"></a>

Sono disponibili due modi per offrire agli utenti autorizzazioni per le code Amazon SQS: tramite il sistema di policy Amazon SQS e il sistema di policy IAM. Puoi usare uno dei due sistemi, oppure entrambi, per collegare policy a utenti o ruoli. Nella maggior parte dei casi, puoi ottenere lo stesso risultato utilizzando uno dei due sistemi. Ad esempio, puoi eseguire le operazioni seguenti:
+ **Collegare una policy di autorizzazione a un utente o a un gruppo nel tuo account**: per concedere a un utente le autorizzazioni per creare una coda Amazon SQS, puoi associare una policy di autorizzazioni a un utente o a un gruppo a cui appartiene l'utente.
+ **Allega una politica di autorizzazione a un utente in un altro Account AWS**: puoi allegare una politica di autorizzazioni a un utente di un altro utente Account AWS per consentirgli di interagire con una coda Amazon SQS. Tuttavia, le autorizzazioni per più account non si applicano alle seguenti azioni:

  Le autorizzazioni per più account non sono applicabili alle azioni seguenti:
  + `[AddPermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html)`
  + `[CancelMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CancelMessageMoveTask.html)`
  + `[CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html)`
  + `[DeleteQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html)`
  + `[ListMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html)`
  + `[ListQueues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html)`
  + `[ListQueueTags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html)`
  + `[RemovePermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html)`
  + `[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`
  + `[StartMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_StartMessageMoveTask.html)`
  + `[TagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_TagQueue.html)`
  + `[UntagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_UntagQueue.html)`

  Per concedere l'accesso a queste azioni, l'utente deve appartenere allo stesso Account AWS proprietario della coda Amazon SQS.
+ **Associa una politica di autorizzazione a un ruolo (concedi autorizzazioni per più account): per concedere autorizzazioni** su più account a una coda SQS, devi combinare sia le politiche IAM che quelle basate sulle risorse:

  1. **Nell'account A (che possiede la coda):**
     + Allega una **policy basata sulle risorse** alla coda SQS. Questa policy deve concedere esplicitamente le autorizzazioni necessarie (ad esempio [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html), [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html)) al principale dell'**Account B** (come un ruolo IAM).

  1. Nell'**Account A**, crea un ruolo IAM:
     + Una **politica di fiducia** che consente all'**account B** o an Servizio AWS di assumere il ruolo.
**Nota**  
Se desideri che un Servizio AWS (come Lambda oEventBridge) assuma il ruolo, specifica il principale del servizio (ad esempio,lambda.amazonaws.com) nella politica di fiducia.
     + Una **politica basata sull'identità** che concede al ruolo assunto le autorizzazioni per interagire con la coda.

  1. **Nell'**Account B**, concedi il permesso di assumere il ruolo nell'Account A.**

È necessario configurare la politica di accesso della coda per consentire il collegamento principale tra account. Le policy basate sull'identità IAM da sole non sono sufficienti per l'accesso tra account diversi alle code SQS.

Per ulteriori informazioni sull'uso di IAM per delegare le autorizzazioni, consulta [Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) nella *IAM User Guide* (Guida per l'utente di IAM).

Anche se utilizza le policy IAM, Amazon SQS ha una propria infrastruttura di policy. Puoi utilizzare una policy Amazon SQS con una coda per specificare quali AWS account hanno accesso alla coda. Puoi specificare il tipo e le condizioni di accesso (per esempio, una condizione che consente di concedere autorizzazioni per l'utilizzo di `SendMessage`, `ReceiveMessage` se la richiesta viene effettuata prima del 31 dicembre 2010). Le azioni specifiche per cui puoi concedere autorizzazioni sono un sottoinsieme dell'intero elenco di azioni Amazon SQS. Quando scrivi una policy Amazon SQS e specifichi `*` per "consentire tutte le azioni Amazon SQS", significa che un utente può eseguire tutte le azioni in questo sottogruppo.

Il seguente diagramma mostra il concetto di una di queste policy Amazon SQS di base che copre il sottoinsieme di azioni. La policy è destinata `queue_xyz` e concede all' AWS Account 1 e all' AWS Account 2 le autorizzazioni per utilizzare qualsiasi azione consentita con la coda specificata. 

**Nota**  
La risorsa nella politica è specificata come`123456789012/queue_xyz`, dove `123456789012` è l'ID AWS account dell'account proprietario della coda.

![\[Una policy di Amazon SQS che copre il sottoinsieme di azioni\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/SQS_BasicPolicy.png)


Con l'introduzione di IAM e i concetti di *Users* e *Amazon Resource Names (ARNs)*, alcune cose sono cambiate nelle policy SQS. La tabella e il diagramma seguenti descrivono le modifiche.

![\[IAM e Amazon Resource Names aggiunti alla policy di Amazon SQS.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/SQS_PolicyWithNewFeatures.png)


![\[Number one in the diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-1-red.png)*Per informazioni su come concedere le autorizzazioni agli utenti in diversi account, consulta il [tutorial: Delegare l'accesso tra AWS account utilizzando ruoli IAM nella IAM User](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html) Guide.*

![\[Number two in the diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-2-red.png) Il sottoinsieme di operazioni incluse in `*` si è ampliato. Per un elenco di operazioni consentite, consulta [Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse](sqs-api-permissions-reference.md).

![\[Number three in the diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-3-red.png) Puoi specificare la risorsa utilizzando il nome della risorsa Amazon (ARN), la modalità standard di specificare le risorse in policy IAM. Per maggiori informazioni sul formato ARN per le code Amazon SQS, consulta [Risorse e operazioni di Amazon Simple Queue Service](#sqs-resource-and-operations).

Ad esempio, in base alla politica di Amazon SQS nel diagramma precedente, chiunque possieda le credenziali di sicurezza per l' AWS Account 1 o l'Account 2 può accedere. AWS `queue_xyz` Inoltre, gli utenti Bob e Susan nell'account AWS (con ID `123456789012`) possono accedere alla coda.

Prima dell'introduzione di IAM, Amazon SQS forniva automaticamente al creatore di una coda il controllo completo sulla stessa (ovvero, l'accesso a tutte le azioni Amazon SQS possibili su tale coda). Questo non è più vero, a meno che il creatore non usi le credenziali di sicurezza AWS . Qualsiasi utente che dispone di autorizzazioni per creare una coda deve disporre anche delle autorizzazioni per utilizzare altre azioni Amazon SQS al fine di eseguire qualsiasi operazione con le code create.

Di seguito è riportato un esempio di policy che consente a un utente di utilizzare tutte le azioni Amazon SQS, ma solo con le code i cui nomi hanno come prefisso la stringa letterale `bob_queue_`.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:*:123456789012:bob_queue_*"
   }]
}
```

------

Per ulteriori informazioni, consulta [Utilizzo delle politiche con Amazon SQS](sqs-using-identity-based-policies.md) e [Identità (utenti, gruppi e ruoli)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) nella *Guida per l’utente IAM*.

## Specifica degli elementi delle policy: operazioni, effetti, risorse ed entità
<a name="sqs-specifying-policy-elements"></a>

Per ogni [risorsa Amazon Simple Queue Service](#sqs-resource-and-operations), il servizio definisce un set di [azioni](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_Operations.html). Per concedere le autorizzazioni per queste azioni, Amazon SQS definisce un set di azioni che puoi specificare in una policy.

**Nota**  
L'esecuzione di un'azione può richiedere le autorizzazioni per più di un'azione. Quando si concedono autorizzazione per operazioni specifiche, si identifica anche la risorsa per cui le operazioni sono concesse o negate.

Di seguito sono elencati gli elementi di base di una policy:
+ **Risorsa**: in una policy si utilizza il nome della risorsa Amazon (ARN) per identificare la risorsa a cui si applica la policy stessa.
+ **Operazione**: si utilizzano parole chiave per identificare le azioni sulla risorsa da consentire o rifiutare. Ad esempio, l'autorizzazione `sqs:CreateQueue` consente all'utente di eseguire l'azione Amazon Simple Queue Service `CreateQueue`.
+ **Effetto**: l'effetto prodotto quando l'utente richiede l'operazione specifica, ovvero un'autorizzazione o un rifiuto. Se non concedi esplicitamente l'accesso a una risorsa, l'accesso viene implicitamente rifiutato. È anche possibile rifiutare esplicitamente l'accesso a una risorsa, per garantire che un utente non sia in grado di accedervi, anche se l'accesso viene concesso da un'altra policy.
+ **Principale**: nelle policy basate su identità (policy IAM), l'utente a cui la policy è collegata è il principale implicito. Per policy basate su risorse, specifichi l'utente, l'account, il servizio o un'altra entità che desideri riceva le autorizzazioni (si applica solo alle policy basate su risorse). 

Per ulteriori informazioni sulla sintassi e le descrizioni delle policy Amazon SQS, consulta [Riferimento alle policy IAM AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) nella *Guida per l'utente di IAM*.

Per una tabella che mostra tutte le azioni Amazon Simple Queue Service e le risorse a cui si applicano, consulta [Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse](sqs-api-permissions-reference.md).

# Come funziona Amazon Simple Queue Service con IAM
<a name="security_iam_service-with-iam"></a>

Prima di utilizzare IAM per gestire l'accesso ad Amazon SQS, scopri quali funzionalità IAM sono disponibili per l'uso con Amazon SQS.






**Funzionalità IAM utilizzabili con Amazon Simple Queue Service**  

| Funzionalità IAM | Supporto per Amazon SQS | 
| --- | --- | 
|  [Policy basate sull’identità](#security_iam_service-with-iam-id-based-policies)  |   Sì  | 
|  [Policy basate su risorse](#security_iam_service-with-iam-resource-based-policies)  |  Sì  | 
|  [Operazioni di policy](#security_iam_service-with-iam-id-based-policies-actions)  |   Sì  | 
|  [Risorse relative alle policy](#security_iam_service-with-iam-id-based-policies-resources)  |   Sì  | 
|  [Chiavi di condizione della policy (specifica del servizio)](#security_iam_service-with-iam-id-based-policies-conditionkeys)  |   Sì  | 
|  [ACLs](#security_iam_service-with-iam-acls)  |   No   | 
|  [ABAC (tag nelle policy)](#security_iam_service-with-iam-tags)  |   Parziale  | 
|  [Credenziali temporanee](#security_iam_service-with-iam-roles-tempcreds)  |   Sì  | 
|  [Inoltro delle sessioni di accesso (FAS)](#security_iam_service-with-iam-principal-permissions)  |   Sì  | 
|  [Ruoli di servizio](#security_iam_service-with-iam-roles-service)  |   Sì  | 
|  [Ruoli collegati al servizio](#security_iam_service-with-iam-roles-service-linked)  |   No   | 

Per avere una visione di alto livello di come Amazon SQS e AWS altri servizi funzionano con la maggior parte delle funzionalità IAM, [AWS consulta i servizi che funzionano con](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) IAM nella IAM User *Guide*.

## Controllo accessi
<a name="access-control"></a>

Le liste di controllo degli accessi (ACLs) controllano quali principali (membri dell'account, utenti o ruoli) dispongono delle autorizzazioni per accedere a una risorsa. ACLs sono simili alle politiche basate sulle risorse, sebbene non utilizzino il formato del documento di policy JSON.

Amazon S3 e Amazon VPC sono esempi di servizi che supportano. AWS WAF ACLs Per ulteriori informazioni ACLs, consulta la [panoramica della lista di controllo degli accessi (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) nella *Amazon Simple Storage Service Developer Guide*.

**Nota**  
È importante capire che tutti Account AWS possono delegare le proprie autorizzazioni agli utenti tramite i propri account. L'accesso su più account ti consente di condividere l'accesso alle tue AWS risorse senza dover gestire utenti aggiuntivi. Per ulteriori informazioni sull'utilizzo dell'accesso multi-account, consultare la sezione relativa all'[abilitazione dell'accesso multiaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/Delegation.html) nella *Guida dell’utente IAM*.   
Per ulteriori dettagli sulle autorizzazioni per più contenuti e sui codici di condizione all'interno delle policy personalizzate di Amazon SQS, consulta [Limitazioni delle politiche personalizzate di Amazon SQS](sqs-limitations-of-custom-policies.md). 

## Policy basate sull'identità per Amazon SQS
<a name="security_iam_service-with-iam-id-based-policies"></a>

**Supporta le policy basate sull’identità:** sì

Le policy basate sull'identità sono documenti di policy di autorizzazione JSON che è possibile allegare a un'identità (utente, gruppo di utenti o ruolo IAM). Tali policy definiscono le operazioni che utenti e ruoli possono eseguire, su quali risorse e in quali condizioni. Per informazioni su come creare una policy basata su identità, consulta [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 di IAM*.

Con le policy basate sull’identità di IAM, è possibile specificare quali operazioni e risorse sono consentite o respinte, nonché le condizioni in base alle quali le operazioni sono consentite o respinte. Per informazioni su tutti gli elementi utilizzabili in una policy JSON, consulta [Guida di riferimento agli elementi delle policy JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) nella *Guida per l’utente IAM*.

### Esempi di policy basate su identità per Amazon SQS
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Per visualizzare degli esempi di policy basate sull'identità di Amazon SQS, consulta la pagina [Best practice per le policy](sqs-basic-examples-of-iam-policies.md#security_iam_id-based-policy-examples).

## Policy basate sulle risorse all'interno di Amazon SQS
<a name="security_iam_service-with-iam-resource-based-policies"></a>

**Supporta le policy basate sulle risorse**: sì

Le policy basate su risorse sono documenti di policy JSON che è possibile collegare a una risorsa. Esempi di policy basate sulle risorse sono le *policy di attendibilità dei ruoli* IAM e le *policy di bucket* Amazon S3. Nei servizi che supportano policy basate sulle risorse, gli amministratori dei servizi possono utilizzarli per controllare l’accesso a una risorsa specifica. Quando è collegata a una risorsa, una policy definisce le operazioni che un principale può eseguire su tale risorsa e a quali condizioni. In una policy basata sulle risorse è obbligatorio [specificare un’entità principale](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html). I principali possono includere account, utenti, ruoli, utenti federati o. Servizi AWS

Per consentire l’accesso multi-account, è possibile specificare un intero account o entità IAM in un altro account come entità principale in una policy basata sulle risorse. Per ulteriori informazioni, 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 IAM*.

## Operazioni delle policy per Amazon SQS
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

**Supporta le operazioni di policy:** si

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 a eseguire l’operazione associata.



Per un elenco di operazioni di Amazon SQS, consulta [Risorse definite da Amazon Simple Queue Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html#amazonsqs-resources-for-iam-policies) nella *Documentazione di riferimento all'autorizzazione del servizio*.

Le azioni di policy in Amazon SQS utilizzano il seguente prefisso prima dell'azione:

```
sqs
```

Per specificare più operazioni in una sola istruzione, occorre separarle con la virgola.

```
"Action": [
      "sqs:action1",
      "sqs:action2"
         ]
```





Per alcuni esempi di policy basate sull'identità di Amazon SQS, consulta la pagina [Best practice per le policy](sqs-basic-examples-of-iam-policies.md#security_iam_id-based-policy-examples).

## Risorse di policy per Amazon SQS
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

**Supporta le risorse relative alle policy:** sì

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": "*"
```

*Per visualizzare un elenco dei tipi di risorse Amazon SQS e relativi ARNs, consulta [Actions Defined by Amazon Simple Queue Service nel Service Authorization](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html#amazonsqs-actions-as-permissions) Reference.* Per informazioni sulle azioni con cui è possibile specificare l'ARN di ciascuna risorsa, consulta [Risorse definite da Amazon Simple Queue Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html#amazonsqs-resources-for-iam-policies).





Per alcuni esempi di policy basate sull'identità di Amazon SQS, consulta la pagina [Best practice per le policy](sqs-basic-examples-of-iam-policies.md#security_iam_id-based-policy-examples).

## Chiavi di condizione delle policy per Amazon SQS
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

**Supporta le chiavi di condizione delle policy specifiche del servizio:** sì

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 `Condition` specifica quando le istruzioni vengono eseguite in base a criteri definiti. È possibile compilare espressioni condizionali che utilizzano [operatori di condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta. Per visualizzare tutte le chiavi di condizione AWS globali, consulta le chiavi di [contesto delle condizioni AWS globali nella Guida](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) per l'*utente IAM*.

Per un elenco completo delle chiavi di condizione di Amazon SQS, consulta [Chiavi di condizione per Amazon Simple Queue Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html#amazonsqs-policy-keys) nella *documentazione di riferimento all'autorizzazione di servizio*. Per informazioni su operazioni e risorse con cui è possibile utilizzare una chiave di condizione, consulta [Risorse definite da Amazon Simple Queue Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html#amazonsqs-resources-for-iam-policies).

Per alcuni esempi di policy basate sull'identità di Amazon SQS, consulta la pagina [Best practice per le policy](sqs-basic-examples-of-iam-policies.md#security_iam_id-based-policy-examples).

## ACLs in Amazon SQS
<a name="security_iam_service-with-iam-acls"></a>

**Supporti ACLs: No** 

Le liste di controllo degli accessi (ACLs) controllano quali principali (membri dell'account, utenti o ruoli) dispongono delle autorizzazioni per accedere a una risorsa. ACLs sono simili alle politiche basate sulle risorse, sebbene non utilizzino il formato del documento di policy JSON.

## ABAC con Amazon SQS
<a name="security_iam_service-with-iam-tags"></a>

**Supporta ABAC (tag nelle policy):** parzialmente

Il controllo degli accessi basato su attributi (ABAC) è una strategia di autorizzazione che definisce le autorizzazioni in base agli attributi, chiamati tag. È possibile allegare tag a entità e AWS risorse IAM, quindi progettare politiche ABAC per consentire operazioni quando il tag del principale corrisponde al tag sulla risorsa.

Per controllare l’accesso basato su tag, fornire informazioni sui tag nell’[elemento condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) di una policy utilizzando le chiavi di condizione `aws:ResourceTag/key-name`, `aws:RequestTag/key-name` o `aws:TagKeys`.

Se un servizio supporta tutte e tre le chiavi di condizione per ogni tipo di risorsa, il valore per il servizio è **Sì**. Se un servizio supporta tutte e tre le chiavi di condizione solo per alcuni tipi di risorsa, allora il valore sarà **Parziale**.

Per maggiori informazioni su ABAC, consulta [Definizione delle autorizzazioni con autorizzazione ABAC](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) nella *Guida per l’utente di IAM*. Per visualizzare un tutorial con i passaggi per l’impostazione di ABAC, consulta [Utilizzo del controllo degli accessi basato su attributi (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) nella *Guida per l’utente di IAM*.

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

**Supporta le credenziali temporanee:** sì

Le credenziali temporanee forniscono l'accesso a breve termine alle AWS risorse e vengono create automaticamente quando si utilizza la federazione o si cambia ruolo. AWS consiglia di generare dinamicamente credenziali temporanee anziché utilizzare chiavi di accesso a lungo termine. Per ulteriori informazioni, consulta [Credenziali di sicurezza temporanee in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) e [Servizi AWS compatibili con IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) nella *Guida per l’utente IAM*.

## Sessioni di accesso diretto per Amazon SQS
<a name="security_iam_service-with-iam-principal-permissions"></a>

**Supporta l’inoltro delle sessioni di accesso (FAS):** sì

 Le sessioni di accesso inoltrato (FAS) utilizzano le autorizzazioni del principale chiamante an Servizio AWS, combinate con la richiesta di effettuare richieste Servizio AWS ai servizi downstream. Per i dettagli delle policy relative alle richieste FAS, consulta [Forward access sessions](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html). 

## Ruoli di servizio per Amazon SQS
<a name="security_iam_service-with-iam-roles-service"></a>

**Supporta i ruoli di servizio:** sì

 Un ruolo di servizio è un [ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) che un servizio assume per eseguire operazioni per tuo conto. Un amministratore IAM può creare, modificare ed eliminare un ruolo di servizio dall’interno di IAM. Per ulteriori informazioni, consulta [Create a role to delegate permissions to an Servizio AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) nella *Guida per l’utente IAM*. 

**avvertimento**  
La modifica delle autorizzazioni per un ruolo di servizio potrebbe compromettere la funzionalità di Amazon SQS. Modifica i ruoli del servizio solo quando Amazon SQS fornisce le indicazioni per farlo.

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

**Supporta i ruoli collegati ai servizi:** no 

 Un ruolo collegato al servizio è un tipo di ruolo di servizio collegato a un. Servizio AWS Il servizio può assumere il ruolo per eseguire un’operazione per tuo conto. I ruoli collegati al servizio vengono visualizzati nel tuo account Account AWS e sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati al servizio, ma non modificarle. 

Per ulteriori informazioni su come creare e gestire i ruoli collegati ai servizi, consulta [Servizi AWS supportati da IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html). Trova un servizio nella tabella che include un `Yes` nella colonna **Service-linked role (Ruolo collegato ai servizi)**. Scegli il collegamento **Sì** per visualizzare la documentazione relativa al ruolo collegato ai servizi per tale servizio.







# Amazon SQS si aggiorna alle AWS policy gestite
<a name="sqs-access-policy-aws-managed-policies"></a>

Per aggiungere le autorizzazioni a utenti, gruppi e ruoli, è più semplice utilizzare policy gestite da AWS piuttosto che scrivere autonomamente le policy. La [creazione di policy gestite dai clienti IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) che forniscono al tuo team solo le autorizzazioni di cui ha bisogno richiede tempo e competenza. Per iniziare rapidamente, utilizzare le nostre policy gestite da AWS . Queste policy coprono i casi d'uso più comuni e sono disponibili nel tuo account AWS . Per ulteriori informazioni sulle policy AWS gestite, consulta le [policy AWS gestite](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) nella *IAM User Guide*.

AWS i servizi mantengono e aggiornano le politiche AWS gestite. Non è possibile modificare le autorizzazioni nelle politiche AWS gestite. I servizi aggiungono occasionalmente autorizzazioni aggiuntive a una policy AWS gestita per supportare nuove funzionalità. Questo tipo di aggiornamento interessa tutte le identità (utenti, gruppi e ruoli) a cui è collegata la policy. È più probabile che i servizi aggiornino una politica AWS gestita quando viene lanciata una nuova funzionalità o quando diventano disponibili nuove operazioni. I servizi non rimuovono le autorizzazioni da una policy AWS gestita, quindi gli aggiornamenti delle policy non comprometteranno le autorizzazioni esistenti.

Inoltre, AWS supporta politiche gestite per le funzioni lavorative che si estendono su più servizi. Ad esempio, la policy **ReadOnlyAccess** AWS gestita fornisce l'accesso in sola lettura a tutti i AWS servizi e le risorse. Quando un servizio lancia una nuova funzionalità, AWS aggiunge autorizzazioni di sola lettura per nuove operazioni e risorse. Per l’elenco e la descrizione delle policy di funzione dei processi, consultare la sezione [Policy gestite da AWS per funzioni di processi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) nella *Guida per l’utente di IAM*.

## AWS politica gestita: Amazon SQSFull Access
<a name="security-iam-awsmanpol-AmazonSQSFullAccess"></a>

È possibile allegare la policy `AmazonSQSFullAccess` alle identità Amazon SQS. Questa policy concede le autorizzazioni che consentono l'accesso completo ad Amazon SQS.

Per visualizzare le autorizzazioni per questa politica, consulta [Amazon SQSFull Access](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSQSFullAccess.html) nel *AWS Managed Policy Reference*.

## AWS politica gestita: Amazon SQSRead OnlyAccess
<a name="security-iam-awsmanpol-AmazonSQSReadOnlyAccess"></a>

È possibile allegare la policy `AmazonSQSReadOnlyAccess` alle identità Amazon SQS. Questa policy concede le autorizzazioni che consentono l'accesso in sola lettura ad Amazon SQS.

Per visualizzare le autorizzazioni per questa politica, consulta [Amazon SQSRead OnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSQSReadOnlyAccess.html) nel *AWS Managed Policy Reference.*

## AWS politica gestita: SQSUnlock QueuePolicy
<a name="security-iam-awsmanpol-SQSUnlockQueuePolicy"></a>

Se hai configurato in modo errato la politica di coda per un account membro in modo da negare a tutti gli utenti l'accesso alla tua coda Amazon SQS, puoi utilizzare la policy `SQSUnlockQueuePolicy` AWS gestita per sbloccare la coda.

*Per ulteriori informazioni su come rimuovere una politica di coda mal configurata che impedisce a tutti i principali di accedere a una coda Amazon SQS, consulta [Esegui un' AWS Organizations attività privilegiata su un](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user-privileged-task.html) account membro nella IAM User Guide.*

## Amazon SQS si aggiorna alle AWS policy gestite
<a name="security-iam-awsmanpol-updates"></a>

Visualizza i dettagli sugli aggiornamenti delle politiche AWS gestite per Amazon SQS da quando questo servizio ha iniziato a tracciare queste modifiche. Per gli avvisi automatici sulle modifiche apportate a questa pagina, effettua la sottoscrizione al feed RSS nella pagina [Cronologia dei documenti](sqs-release-notes.md) di Amazon SQS.


| Modifica | Descrizione | Data | 
| --- | --- | --- | 
|  [SQSUnlockQueuePolicy](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-SQSUnlockQueuePolicy)  |  Amazon SQS ha aggiunto una nuova policy AWS gestita chiamata `SQSUnlockQueuePolicy` per sbloccare una coda e rimuovere una policy di coda non configurata correttamente che impedisce a tutti i principali di accedere a una coda Amazon SQS.  | 15 novembre 2024 | 
|  [AmazonSQSReadOnlyAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonSQSReadOnlyAccess)  |  Amazon SQS ha aggiunto l'[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html)azione, che recupera tutti i tag associati a una coda Amazon SQS specificata. Consente di visualizzare le coppie chiave-valore che sono state assegnate alla coda per scopi organizzativi o relativi ai metadati. Questa operazione è associata all'operazione API `ListQueueTags`.  | 20 giugno 2024 | 
|  [AmazonSQSReadOnlyAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonSQSReadOnlyAccess)  |  Amazon SQS ha aggiunto una nuova azione che consente di elencare le attività di spostamento dei messaggi più recenti (fino a 10) in una coda di origine specifica. Questa operazione è associata all'operazione API [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html).  | 9 giugno 2023 | 

# Risoluzione dei problemi di identità e accesso ad Amazon Simple Queue Service
<a name="security_iam_troubleshoot"></a>

Utilizza le informazioni seguenti per eseguire la diagnosi e risolvere i problemi comuni che possono verificarsi durante l'utilizzo di Amazon SQS e IAM.

## Non dispongo dell'autorizzazione per eseguire un'azione in Amazon SQS
<a name="security_iam_troubleshoot-no-permissions"></a>

Se ricevi un errore che indica che non disponi dell'autorizzazione per eseguire un'operazione, le tue policy devono essere aggiornate in modo che ti sei consentito eseguire tale operazione.

Il seguente esempio di errore si verifica quando l'utente `mateojackson` prova a utilizzare la console per visualizzare i dettagli relativi a una risorsa `my-example-widget` fittizia, ma non dispone di autorizzazioni `sqs:GetWidget` fittizie.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: sqs:GetWidget on resource: my-example-widget
```

In questo caso, la policy deve essere aggiornata in modo che Mateo possa accedere alla risorsa `my-example-widget` mediante l'operazione `sqs:GetWidget`.

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

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

Se ricevi un errore che indica che non disponi dell'autorizzazione per eseguire l'azione `iam:PassRole`, per poter passare un ruolo ad Amazon SQS dovrai aggiornare le policy.

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.

Il seguente esempio di errore si verifica quando un utente IAM denominato `marymajor` cerca di utilizzare la console per eseguire un'azione in Amazon SQS. Tuttavia, l’azione 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 a me di accedere Account AWS alle mie risorse Amazon SQS
<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 consentire alle persone di accedere alle tue risorse.

Per maggiori informazioni, consulta gli argomenti seguenti:
+ Per sapere se Amazon SQS supporta queste funzionalità, consulta [Come funziona Amazon Simple Queue Service con IAM](security_iam_service-with-iam.md).
+ Per scoprire come fornire l'accesso alle risorse di tua proprietà, consulta [Fornire l'accesso a un utente IAM in Account AWS un altro Account AWS di tua proprietà nella](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) *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*.

## Voglio sbloccare la mia coda
<a name="sqs-troubleshooting-org-policies"></a>

Se fai Account AWS parte di un'organizzazione, AWS Organizations le policy possono impedirti di accedere alle risorse di Amazon SQS. Per impostazione predefinita, AWS Organizations le policy non bloccano alcuna richiesta ad Amazon SQS. Tuttavia, assicurati che AWS Organizations le tue policy non siano state configurate per bloccare l'accesso alle code di Amazon SQS. Per istruzioni su come controllare le tue AWS Organizations politiche, consulta [Elenco di tutte le politiche nella Guida](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_info-operations.html#list-all-pols-in-org.html) per l'*AWS Organizations utente*.

Inoltre, se hai configurato in modo errato la tua politica di coda per un account membro in modo da negare a tutti gli utenti l'accesso alla tua coda Amazon SQS, puoi sbloccare la coda avviando una sessione privilegiata per l'account membro in IAM. Una volta avviata una sessione privilegiata, puoi eliminare la politica di coda non configurata correttamente per riottenere l'accesso alla coda. *Per ulteriori informazioni, consulta [Eseguire un'attività privilegiata su un account AWS Organizations membro](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user-privileged-task.html) nella Guida per l'utente IAM.*

# Utilizzo delle politiche con Amazon SQS
<a name="sqs-using-identity-based-policies"></a>

In questo argomento vengono forniti esempi di policy basate su identità in cui un amministratore account può collegare policy di autorizzazione a identità IAM ovvero utenti, gruppi e ruoli.

**Importante**  
In primo luogo, è consigliabile esaminare gli argomenti introduttivi in cui vengono spiegati i concetti di base e le opzioni disponibili per gestire l'accesso alle risorse di Amazon Simple Queue Service. Per ulteriori informazioni, consulta [Panoramica sulla gestione degli accessi in Amazon SQS](sqs-overview-of-managing-access.md).  
Ad eccezione di `ListQueues`, tutte le azioni Amazon SQS supportano autorizzazioni a livello di risorsa. Per ulteriori informazioni, consulta [Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse](sqs-api-permissions-reference.md).

## Utilizzo di policy Amazon SQS e IAM
<a name="sqs-using-sqs-and-iam-policies"></a>

Esistono due modi per concedere ai tuoi utenti le autorizzazioni per le tue risorse Amazon SQS: utilizzando il sistema di policy Amazon SQS (politiche basate sulle risorse) e utilizzando il sistema di policy IAM (politiche basate sull'identità). Puoi utilizzare uno o entrambi i metodi, ad eccezione dell'`ListQueues`azione, che è un'autorizzazione regionale che può essere impostata solo in una policy IAM.

Ad esempio, il diagramma seguente mostra l’equivalenza tra una policy IAM e una policy Amazon SQS. La policy IAM concede i diritti su Amazon `ReceiveMessage` SQS `SendMessage` e sulle azioni per la coda `queue_xyz` richiamata nel AWS tuo account e la policy è allegata agli utenti di nome Bob e Susan (Bob e Susan dispongono delle autorizzazioni indicate nella policy). Questa policy Amazon SQS fornisce inoltre a Bob e Susan i diritti per le azioni `ReceiveMessage` e `SendMessage` per la stessa coda.

**Nota**  
L'esempio seguente mostra politiche semplici senza condizioni. Puoi specificare una particolare condizione in una qualsiasi delle policy e ottenere lo stesso risultato.

![\[Diagramma che confronta una policy IAM e una policy Amazon SQS equivalente. La policy IAM concede i diritti su Amazon ReceiveMessage SQS SendMessage e sulle azioni per la coda queue_xyz richiamata nel AWS tuo account e la policy è allegata agli utenti di nome Bob e Susan (Bob e Susan dispongono delle autorizzazioni indicate nella policy). Questa policy Amazon SQS fornisce inoltre a Bob e Susan i diritti per le azioni ReceiveMessage e SendMessage per la stessa coda.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-iam-policies-equivalent.png)


C'è una differenza importante tra le policy di IAM e Amazon SQS: il sistema di policy di Amazon SQS consente di concedere l'autorizzazione ad AWS altri account, mentre IAM no.

Sta a te decidere se utilizzare insieme i sistemi per gestire le autorizzazioni. Gli esempi seguenti mostrano il modo in cui i due sistemi di policy interagiscono.
+ Nel primo esempio, Bob dispone sia di una policy IAM sia di una policy Amazon SQS applicabili all'account. La policy IAM concede all'account di Bob l'autorizzazione per l'azione `ReceiveMessage` su `queue_xyz`, mentre la policy Amazon SQS concede all'account l'autorizzazione per l'operazione `SendMessage` sulla stessa coda. Il diagramma seguente illustra questo concetto.  
![\[Diagramma che confronta i componenti di una policy IAM con una policy Amazon SQS. Nel primo esempio, Bob dispone sia di una policy IAM sia di una policy Amazon SQS applicabili all'account. La policy IAM concede all'account di Bob l'autorizzazione per l'azione ReceiveMessage su queue_xyz, mentre la policy Amazon SQS concede all'account l'autorizzazione per l'operazione SendMessage sulla stessa coda.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-iam-policies-union.png)

  Se Bob invia una richiesta `ReceiveMessage` a `queue_xyz`, la policy IAM consente l'azione. Se Bob invia una richiesta `SendMessage` a `queue_xyz`, la policy Amazon SQS consente l'azione.
+ Nel secondo esempio, Bob abusa del suo accesso a `queue_xyz`, pertanto è necessario rimuovere il suo intero accesso alla coda. La cosa più semplice da fare è aggiungere una policy che gli nega l'accesso a tutte le azioni per la coda. Questa policy sostituisce le altre due perché un `deny` esplicito sostituisce sempre un `allow`. Per ulteriori informazioni sulla logica di valutazione della policy, consulta [Utilizzo di policy personalizzate con la sintassi delle policy di accesso Amazon SQS](sqs-creating-custom-policies.md). Il diagramma seguente illustra questo concetto.  
![\[Diagramma che mostra l'override di una policy IAM con una policy Amazon SQS. Bob abusa del suo accesso aqueue_xyz, quindi diventa necessario rimuovere l'intero accesso alla coda. La cosa più semplice da fare è aggiungere una policy che gli nega l'accesso a tutte le azioni per la coda. Questa policy sostituisce le altre due perché un deny esplicito sostituisce sempre un allow.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-iam-policies-deny-override.png)

  Puoi anche aggiungere un'ulteriore istruzione alla policy Amazon SQS che nega a Bob qualsiasi tipo di accesso alla coda. Ha lo stesso effetto dell'aggiunta di una policy IAM che nega a Bob l'accesso alla coda. Per esempi di policy che coprono le azioni e le risorse di Amazon SQS, consulta [Esempi di base di policy Amazon SQS](sqs-basic-examples-of-sqs-policies.md). Per ulteriori informazioni sulla sintassi di policy Amazon SQS, consulta [Utilizzo di policy personalizzate con la sintassi delle policy di accesso Amazon SQS](sqs-creating-custom-policies.md).

## Autorizzazioni necessarie per utilizzare la console Amazon SQS
<a name="sqs-console-permissions"></a>

Un utente che desidera utilizzare la console Amazon SQS deve disporre di un set di autorizzazioni minimo per utilizzare le code Amazon SQS nell'account Account AWS dell'utente. Ad esempio, l'utente deve avere l'autorizzazione di chiamare l'azione `ListQueues` per essere in grado di elencare le code, o l'autorizzazione di chiamare l'azione `CreateQueue` per essere in grado di creare code. Oltre alle autorizzazioni Amazon SQS, per iscrivere una coda Amazon SQS a un argomento Amazon SNS, la console richiede anche le autorizzazioni per operazioni Amazon SNS.

Se decidi di creare una policy IAM più restrittiva relativa alle autorizzazioni minime richieste, la console potrebbe non funzionare come previsto per gli utenti con tale policy IAM.

Non è necessario consentire autorizzazioni minime per la console per gli utenti che effettuano chiamate solo verso le azioni AWS CLI o Amazon SQS. 

# Esempi di policy basate su identità per Amazon SQS
<a name="sqs-basic-examples-of-iam-policies"></a>

Per impostazione predefinita, gli utenti e i ruoli IAM non dispongono dell'autorizzazione per creare o modificare risorse Amazon SQS. Per concedere agli utenti l’autorizzazione a eseguire azioni sulle risorse di cui hanno bisogno, un amministratore IAM può creare policy IAM.

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

*Per informazioni dettagliate sulle azioni e sui tipi di risorse definiti da Amazon SQS, incluso il formato di ARNs per ogni tipo di risorsa, consulta [Actions, Resources and Condition Keys for Amazon Simple Queue Service nel Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsqs.html) Authorization Reference.*

**Nota**  
Quando configuri gli hook del ciclo di vita per il Dimensionamento automatico Amazon EC2, non è necessario scrivere una policy per inviare messaggi a una coda Amazon SQS. *Per ulteriori informazioni, consulta [Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) Lifecycle Hooks nella Amazon EC2 User Guide.*

## Best practice per le policy
<a name="security_iam_id-based-policy-examples"></a>

Le policy basate sull'identità determinano se qualcuno può creare, accedere o eliminare risorse Amazon SQS nell'account. Queste azioni 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 policy 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 Amazon SQS
<a name="security_iam_id-based-policy-examples-console"></a>

Per accedere alla console Amazon Simple Queue Service, è necessario disporre di un set di autorizzazioni minimo. Queste autorizzazioni devono consentirti di elencare e visualizzare i dettagli sulle risorse Amazon SQS presenti nel tuo. Account AWS Se crei una policy basata sull’identità più restrittiva rispetto alle autorizzazioni minime richieste, la console non funzionerà nel modo previsto per le entità (utenti o ruoli) associate a tale policy.

Non è necessario consentire autorizzazioni minime di console per gli utenti che effettuano chiamate solo verso AWS CLI o l'API. AWS Al contrario, è opportuno concedere l’accesso solo alle azioni che corrispondono all’operazione API che stanno cercando di eseguire.

Per garantire che utenti e ruoli possano continuare a utilizzare la console Amazon SQS, collega anche la policy gestita di Amazon `AmazonSQSReadOnlyAccess` AWS SQS alle entità. Per maggiori informazioni, consulta [Aggiunta di autorizzazioni a un utente](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) nella *Guida per l’utente di IAM*.

## 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": "*"
        }
    ]
}
```

## Consenti a un utente di creare code
<a name="allow-queue-creation"></a>

Nell'esempio seguente creiamo una policy che consente a Bob di accedere a tutte le operazioni Amazon SQS, ma solo con code i cui nomi hanno come prefisso la stringa letterale `alice_queue_`.

Amazon SQS non concede automaticamente al creatore di una coda le autorizzazioni per utilizzare la coda. Pertanto, dobbiamo concedere esplicitamente a Bob le autorizzazioni per l'utilizzo di tutte le azioni Amazon SQS, oltre all'azione `CreateQueue` nella policy IAM.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:*:123456789012:alice_queue_*"
   }]
}
```

------

## Consenti agli sviluppatori di scrivere messaggi in una coda condivisa
<a name="write-messages-to-shared-queue"></a>

Nell'esempio seguente, creiamo un gruppo per sviluppatori e alleghiamo una policy che consente al gruppo di utilizzare l'`SendMessage`azione Amazon SQS, ma solo con la coda che appartiene a quella specificata Account AWS e ha un nome. `MyCompanyQueue`

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": "sqs:SendMessage",
      "Resource": "arn:aws:sqs:*:123456789012:MyCompanyQueue"
   }]
}
```

------

È possibile utilizzare `*` invece di `SendMessage` per concedere le seguenti operazioni a un principale su una coda condivisa: `ChangeMessageVisibility`, `DeleteMessage`, `GetQueueAttributes`, `GetQueueUrl`, `ReceiveMessage` e `SendMessage`.

**Nota**  
Sebbene `*` includa l'accesso fornito da altri tipi di autorizzazione, Amazon SQS considera le autorizzazioni separatamente. Ad esempio, è possibile concedere le autorizzazioni `*` e `SendMessage` a un utente, anche se un `*` include l'accesso fornito da `SendMessage`.  
Questo concetto si applica anche quando rimuovi un'autorizzazione. Se un principale dispone solo di un'autorizzazione `*`, la richiesta di rimuovere un'autorizzazione `SendMessage`, *non* lascia al principale un'autorizzazione di tipo *tutto tranne*. Al contrario, la richiesta non ha effetto, perché il principale non dispone di un'autorizzazione `SendMessage` esplicita. Per lasciare al principale solo l'autorizzazione `ReceiveMessage`, aggiungi prima l'autorizzazione `ReceiveMessage`, quindi rimuovi l'autorizzazione `*`.

## Consenti ai manager di ottenere la dimensione generale delle code
<a name="get-size-of-queues"></a>

Nell'esempio seguente, creiamo un gruppo per manager e alleghiamo una policy che consente al gruppo di utilizzare l'`GetQueueAttributes`azione Amazon SQS con tutte le code che appartengono all'account specificato. AWS 

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": "sqs:GetQueueAttributes",
      "Resource": "*"   
   }]
}
```

------

## Consenti a un partner di inviare messaggi a una coda specifica
<a name="send-messages-to-specific-queue"></a>

Puoi eseguire questa operazione utilizzando una policy Amazon SQS o IAM. Se il tuo partner dispone di una Account AWS policy Amazon SQS, potrebbe essere più semplice utilizzare una policy Amazon SQS. Tuttavia, qualsiasi utente dell'azienda del partner che possiede le credenziali AWS di sicurezza può inviare messaggi alla coda. Se desideri limitare l'accesso a un determinato utente o applicazione, devi trattare il partner come un utente della tua azienda e utilizzare una policy IAM anziché una policy Amazon SQS.

In questo esempio vengono effettuate le seguenti operazioni:

1. Crea un gruppo chiamato WidgetCo a rappresentare l'azienda partner.

1. Creazione di un utente per l'utente o l'applicazione specifica presso l'azienda del partner che ha bisogno di accedere.

1. Aggiungere l'utente al gruppo .

1. Collegamento di una policy che concedere al gruppo l'accesso solo all'azione `SendMessage` solo per la coda denominata `WidgetPartnerQueue`.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
         "Effect": "Allow",
         "Action": "sqs:SendMessage",
         "Resource": "arn:aws:sqs:*:123456789012:WidgetPartnerQueue"
   }]
}
```

------

# Esempi di base di policy Amazon SQS
<a name="sqs-basic-examples-of-sqs-policies"></a>

Questa sezione mostra le policy di esempio per i casi d'uso Amazon SQS più comuni.

Puoi utilizzare la console per verificare gli effetti di ogni policy quando la alleghi all'utente. Inizialmente l'utente non dispone di alcuna autorizzazione e non sarà in grado di eseguire alcuna operazione nella console. Quando le policy vengono collegate all'utente, è possibile verificare che l'utente possa eseguire diverse operazioni nella console.

**Nota**  
Ti consigliamo di utilizzare due finestre del browser: una per concedere le autorizzazioni e l'altra per accedere Console di gestione AWS utilizzando le credenziali dell'utente per verificare le autorizzazioni man mano che le concedi all'utente.

## Esempio 1: concedere un'autorizzazione a uno Account AWS
<a name="grant-one-permission-to-one-account"></a>

La seguente politica di esempio concede `111122223333` al Account AWS numero l'`SendMessage`autorizzazione per la coda denominata `444455556666/queue1` nella regione Stati Uniti orientali (Ohio).

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_SendMessage",
      "Effect": "Allow",
      "Principal": {
         "AWS": [ 
            "111122223333"
         ]
      },
      "Action": "sqs:SendMessage",
      "Resource": "arn:aws:sqs:us-east-2:444455556666:queue1"
   }]  
}
```

------

## Esempio 2: concedere due autorizzazioni a una Account AWS
<a name="grant-two-permissions-to-one-account"></a>

La politica di esempio seguente concede `111122223333` sia il Account AWS numero che `SendMessage` l'`ReceiveMessage`autorizzazione per la coda denominata. `444455556666/queue1`

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_Send_Receive",
      "Effect": "Allow",
      "Principal": {
         "AWS": [
            "111122223333"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ],
      "Resource": "arn:aws:sqs:*:444455556666:queue1"
   }]
}
```

------

## Esempio 3: concedere tutte le autorizzazioni a due Account AWS
<a name="grant-all-permissions-to-two-accounts"></a>

La seguente politica di esempio concede due Account AWS numeri diversi (`111122223333`e`444455556666`) l'autorizzazione a utilizzare tutte le azioni a cui Amazon SQS consente l'accesso condiviso per la coda `123456789012/queue1` denominata nella regione Stati Uniti orientali (Ohio).

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AllActions",
      "Effect": "Allow",
      "Principal": {
         "AWS": [
            "111122223333",
            "444455556666"
         ]
      },
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:us-east-2:123456789012:queue1"
   }]
}
```

------

## Esempio 4: Concedere autorizzazioni multi-account a un ruolo e un nome utente
<a name="grant-cross-account-permissions-to-role-and-user-name"></a>

La seguente politica di esempio concede `role1` e, `username1` in base al Account AWS numero, `111122223333` l'autorizzazione per più account a utilizzare tutte le azioni a cui Amazon SQS consente l'accesso condiviso per la coda `123456789012/queue1` denominata nella regione Stati Uniti orientali (Ohio).

Le autorizzazioni per più account non sono applicabili alle azioni seguenti:
+ `[AddPermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html)`
+ `[CancelMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CancelMessageMoveTask.html)`
+ `[CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html)`
+ `[DeleteQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html)`
+ `[ListMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html)`
+ `[ListQueues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html)`
+ `[ListQueueTags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html)`
+ `[RemovePermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html)`
+ `[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`
+ `[StartMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_StartMessageMoveTask.html)`
+ `[TagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_TagQueue.html)`
+ `[UntagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_UntagQueue.html)`

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AllActions",
      "Effect": "Allow",
      "Principal": {
         "AWS": [
            "arn:aws:iam::111122223333:role/role1",
            "arn:aws:iam::111122223333:user/username1"
         ]
      },
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:us-east-2:123456789012:queue1"
   }]
}
```

------

## Esempio 5: Concedere un'autorizzazione a tutti gli utenti
<a name="grant-permissions-to-all-users"></a>

La seguente policy di esempio concede a tutti gli utenti (utenti anonimi) l'autorizzazione `ReceiveMessage` per la coda denominata `111122223333/queue1`.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AnonymousAccess_ReceiveMessage",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "sqs:ReceiveMessage",
      "Resource": "arn:aws:sqs:*:111122223333:queue1"
   }]
}
```

------

## Esempio 6: Concedere un'autorizzazione limitata nel tempo a tutti gli utenti
<a name="grant-time-limited-permission-to-all-users"></a>

La seguente policy di esempio concede a tutti gli utenti (utenti anonimi) l'autorizzazione `ReceiveMessage` per la coda denominata `111122223333/queue1`, ma solo tra le ore 12 (mezzogiorno) e le ore 15 del 31 gennaio 2009.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AnonymousAccess_ReceiveMessage_TimeLimit",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "sqs:ReceiveMessage",
      "Resource": "arn:aws:sqs:*:111122223333:queue1",
      "Condition" : {
         "DateGreaterThan" : {
            "aws:CurrentTime":"2009-01-31T12:00Z"
         },
         "DateLessThan" : {
            "aws:CurrentTime":"2009-01-31T15:00Z"
         }
      }
   }]
}
```

------

## Esempio 7: Concedere tutte le autorizzazioni a tutti gli utenti in un intervallo CIDR
<a name="grant-all-permissions-to-all-users-in-cidr-range"></a>

La seguente policy di esempio concede a tutti gli utenti (anonimi) l'autorizzazione a utilizzare tutte le azioni Amazon SQS possibili che possono essere condivise per la coda denominata `111122223333/queue1`, ma solo se la richiesta proviene dall'intervallo CIDR `192.0.2.0/24`.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AnonymousAccess_AllActions_AllowlistIP",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:*:111122223333:queue1",
      "Condition" : {
         "IpAddress" : {
            "aws:SourceIp":"192.0.2.0/24"
         }
      }
   }]
}
```

------

## Esempio 8: Autorizzazioni per l'elenco di elementi consentiti e l'elenco di elementi bloccati per utenti in diversi intervalli CIDR
<a name="allowlist-blocklist-permissions-for-users-in-different-cidr-ranges"></a>

La policy di esempio seguente dispone di due istruzioni:
+ La prima dichiarazione concede a tutti gli utenti (utenti anonimi) nell'intervallo CIDR `192.0.2.0/24` (fatta eccezione per `192.0.2.188`) l'autorizzazione per utilizzare l'azione `SendMessage` per la coda denominata `111122223333`/queue1.
+ La seconda dichiarazione blocca tutti gli utenti (utenti anonimi) nell'intervallo CIDR `12.148.72.0/23` in modo che non possano utilizzare la coda.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_AnonymousAccess_SendMessage_IPLimit",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "sqs:SendMessage",
      "Resource": "arn:aws:sqs:*:111122223333:queue1",
      "Condition" : {
         "IpAddress" : {
            "aws:SourceIp":"192.0.2.0/24"
         },
         "NotIpAddress" : {
            "aws:SourceIp":"192.0.2.188/32"
         }
      }
   }, {
      "Sid":"Queue1_AnonymousAccess_AllActions_IPLimit_Deny",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "sqs:*",
      "Resource": "arn:aws:sqs:*:111122223333:queue1",
      "Condition" : {
         "IpAddress" : {
            "aws:SourceIp":"12.148.72.0/23"
         }
      }
   }]
}
```

------

# Utilizzo di policy personalizzate con la sintassi delle policy di accesso Amazon SQS
<a name="sqs-creating-custom-policies"></a>

Per concedere autorizzazioni di base (come [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html)o [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html)) basate solo su un Account AWS ID, non è necessario scrivere una politica personalizzata. Utilizza invece l'azione Amazon SQS. [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html)

Per consentire o negare l'accesso in base a condizioni specifiche, come l'ora della richiesta o l'indirizzo IP del richiedente, devi creare una policy Amazon SQS personalizzata e caricarla utilizzando l'azione. [SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)

**Topics**
+ [Architettura di controllo degli accessi](sqs-creating-custom-policies-architecture.md)
+ [Flusso di lavoro del processo di controllo degli accessi](sqs-creating-custom-policies-process-workflow.md)
+ [Concetti chiave della sintassi delle policy di accesso](sqs-creating-custom-policies-key-concepts.md)
+ [Logica di valutazione della sintassi delle policy di accesso](sqs-creating-custom-policies-evaluation-logic.md)
+ [Relazioni tra rifiuti espliciti e predefiniti](sqs-creating-custom-policies-relationships-between-explicit-default-denials.md)
+ [Limitazioni delle policy personalizzate](sqs-limitations-of-custom-policies.md)
+ [Esempi di sintassi delle policy di accesso personalizzata](sqs-creating-custom-policies-access-policy-examples.md)

# Architettura di controllo degli accessi Amazon SQS
<a name="sqs-creating-custom-policies-architecture"></a>

Il diagramma riportato di seguito descrive il controllo degli accessi per le risorse Amazon SQS.

![\[Descrive il controllo degli accessi per le tue risorse Amazon SQS.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/AccessPolicyLanguage_Arch_Overview.png)


![\[In the previous diagram, section number one.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-1-red.png) Tu, il proprietario delle risorse.

![\[In the previous diagram, section number two.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-2-red.png)Le tue risorse contenute nel AWS servizio (ad esempio, le code Amazon SQS).

![\[In the previous diagram, section number three.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-3-red.png) Le tue policy. È buona norma avere una policy per ogni risorsa. Il AWS servizio fornisce un'API che utilizzi per caricare e gestire le tue politiche.

![\[In the previous diagram, section number four.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-4-red.png) I richiedenti e le relative richieste in arrivo al servizio AWS .

![\[In the previous diagram, section number five.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-5-red.png) Codice di valutazione della sintassi delle policy di accesso. Questo è il set di codice all'interno del AWS servizio che valuta le richieste in arrivo rispetto alle politiche applicabili e determina se al richiedente è consentito l'accesso alla risorsa.

# Flusso di lavoro del processo di controllo degli accessi Amazon SQS
<a name="sqs-creating-custom-policies-process-workflow"></a>

Nel seguente diagramma viene descritto il flusso di lavoro di controllo degli accessi generale con la sintassi delle policy di accesso Amazon SQS.

![\[Il flusso di lavoro generale del controllo degli accessi con il linguaggio delle policy di accesso di Amazon SQS.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/AccessPolicyLanguage_Basic_Flow.png)


![\[Figure one in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-1-red.png) Scrivi una policy Amazon SQS per la tua coda.

![\[Figure two in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-2-red.png)Carichi la tua politica su. AWS Il AWS servizio fornisce un'API che utilizzi per caricare le tue politiche. Ad esempio, usa l'azione `SetQueueAttributes` di Amazon SQS per caricare una policy per una particolare coda Amazon SQS.

![\[Figure three in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-3-red.png) Qualcuno invia una richiesta per usare la tua coda Amazon SQS.

![\[Figure four in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-4-red.png) Amazon SQS esamina tutte le policy Amazon SQS disponibili e determina quali sono applicabili.

![\[Figure five in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-5-red.png) Amazon SQS valuta le policy e determina se il richiedente è autorizzato a utilizzare la tua coda o meno.

![\[Figure six in the previous diagram.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-6-red.png) In base al risultato della valutazione della policy, Amazon SQS restituisce un errore `Access denied` al richiedente o continua a elaborare la richiesta.

# Concetti chiave della sintassi delle policy di accesso di Amazon SQS
<a name="sqs-creating-custom-policies-key-concepts"></a>

Per scrivere le tue proprie policy, devi avere familiarità con [JSON](http://json.org/) e una serie di concetti fondamentali.

**Abilita**  <a name="allow"></a>
Il risultato di una [Statement](#statement) che [Effetto](#effect) impostato su `allow`.

**Azione**  <a name="action"></a>
L'attività che [Principale](#principal) ha l'autorizzazione di eseguire, in genere una richiesta a AWS.

**Default-deny**  <a name="default-deny"></a>
Il risultato di una [Statement](#statement) priva di impostazioni [Abilita](#allow) o [Explicit-deny](#explicit-deny).

**Condition**  <a name="condition"></a>
Qualsiasi restrizione o dettaglio relativi a una [Autorizzazione](#permission). Condizioni tipiche relative a data e ora e indirizzi IP.

**Effetto**  <a name="effect"></a>
Il risultato che desideri che la [Statement](#statement) di una [Policy](#policy) restituisca al momento della valutazione. Puoi specificare il valore `deny` o `allow` quando scrivi la dichiarazione della policy. Possono esserci tre risultati possibili al momento della valutazione della policy: [Default-deny](#default-deny), [Abilita](#allow) e [Explicit-deny](#explicit-deny).

**Explicit-deny**  <a name="explicit-deny"></a>
Il risultato di una [Statement](#statement) che [Effetto](#effect) impostato su `deny`.

**Valutazione**  <a name="evaluation"></a>
Il processo che Amazon SQS utilizza per determinare se una richiesta in entrata deve essere negata o consentita in base a una [Policy](#policy).

**Approvatore**  <a name="issuer"></a>
L'utente che scrive una [Policy](#policy) per concedere autorizzazioni a una risorsa. L'emittente, per definizione, è sempre il proprietario della risorsa. AWS non consente agli utenti di Amazon SQS di creare policy per risorse che non possiedono.

**Chiave**  <a name="key"></a>
La caratteristica specifica che costituisce la base per la limitazione dell'accesso.

**Autorizzazione**  <a name="permission"></a>
La nozione di consentire o rifiutare l'accesso a una risorsa utilizzando una [Condition](#condition) e una [Chiave](#key).

**Policy**  <a name="policy"></a>
Il documento che agisce da container per una o più **[istruzioni](#statement)**.  

![\[La politica A contenente la dichiarazione 1 e l'affermazione 2 è equivalente alla politica A che contiene la dichiarazione 1 e alla politica B che contiene la dichiarazione 2.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/AccessPolicyLanguage_Statement_and_Policy.png)

Amzon SQS utilizza la policy per determinare se concedere o meno a un utente l'accesso a una risorsa.

**Principale**  <a name="principal"></a>
L'utente che riceve la [Autorizzazione](#permission) nella [Policy](#policy).

**Risorsa**  <a name="resource"></a>
L'oggetto a cui le richiesta del [Principale](#principal) accedono.

**Statement**  <a name="statement"></a>
La descrizione formale di una singola autorizzazione, scritta nella sintassi delle policy di accesso come parte di un documento di [Policy](#policy) più ampio.

**Richiedente**  <a name="requester"></a>
L'utente che invia una richiesta per l'accesso a una [Risorsa](#resource).

# Logica di valutazione della sintassi delle policy di accesso Amazon SQS
<a name="sqs-creating-custom-policies-evaluation-logic"></a>

Al momento della valutazione, Amazon SQS determina se le richieste da parte di utenti diversi dal proprietario della risorsa devono essere concesse o negate. La logica della valutazione segue diverse regole di base:
+ Per impostazione predefinita, tutte le richieste per utilizzare la tua risorsa che provengono da chiunque eccetto te, vengono rifiutate.
+ Un *[Abilita](sqs-creating-custom-policies-key-concepts.md#allow)* sostituisce qualsiasi *[Default-deny](sqs-creating-custom-policies-key-concepts.md#default-deny)*.
+ Un *[Explicit-deny](sqs-creating-custom-policies-key-concepts.md#explicit-deny)* sovrascrive qualsiasi **allow**.
+ L'ordine in cui vengono valutate le policy non è importante.

Il diagramma seguente descrive in dettaglio come Amazon SQS valuta le decisioni circa le autorizzazioni di accesso.

![\[Diagramma di flusso che descrive in che modo Amazon SQS valuta le decisioni sulle autorizzazioni di accesso.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/AccessPolicyLanguage_Evaluation_Flow.png)


![\[In the previous diagram, number one.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-1-red.png) La decisione inizia con un **default-deny**.

![\[In the previous diagram, number two.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-2-red.png) Il codice di applicazione valuta tutte le policy applicabili alla richiesta (in base alla risorsa, all'entità principale, all'operazione e alle condizioni). L'ordine in cui il codice di attuazione valuta le policy non è importante.

![\[In the previous diagram, number three.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-3-red.png) Il codice di attuazione cerca una dichiarazione **explicit-deny** che può essere applicata alla richiesta. Se ne trova uno, il codice di attuazione restituisce una decisione di **rifiuto** e il processo termina.

![\[In the previous diagram, number four.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-4-red.png) Se non viene trovato un **explicit-deny**, il codice di applicazione cerca un'istruzione **allow** da applicare alla richiesta. Se ne trova anche uno, il codice di attuazione restituisce una decisione di **consenso** e il processo termina (il servizio continua ad elaborare la richiesta).

![\[In the previous diagram, number five.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/number-5-red.png) Se non viene trovato alcun **allow**, la decisione finale è il **rifiuto** (dal momento che non è stato trovato un **explicit-deny** o un **allow**, questo viene considerato un **default-deny**).

# Relazioni tra negazioni esplicite e predefinite nella sintassi delle policy di accesso di Amazon SQS
<a name="sqs-creating-custom-policies-relationships-between-explicit-default-denials"></a>

Se una policy Amazon SQS non si applica direttamente a una richiesta, questa comporta un *[Default-deny](sqs-creating-custom-policies-key-concepts.md#default-deny)*. Ad esempio, se un utente richiede l'autorizzazione per utilizzare Amazon SQS, ma l'unica policy che si applica all'utente può utilizzare DynamoDB, la richiesta comporta un **default-deny**.

Se una condizione in una dichiarazione non viene soddisfatta, la richiesta comporta un **default-deny**. Se tutte le condizioni nella dichiarazione sono soddisfatte, la richiesta restituisce un *[Abilita](sqs-creating-custom-policies-key-concepts.md#allow)* o un *[Explicit-deny](sqs-creating-custom-policies-key-concepts.md#explicit-deny)* a seconda del valore dell'elemento *[Effetto](sqs-creating-custom-policies-key-concepts.md#effect)* della policy. Le policy non specificano cosa fare se una condizione non viene soddisfatta e quindi il risultato predefinito in quel caso è un **default-deny**. Ad esempio, supponiamo che tu voglia impedire le richieste provenienti dall'Antartide. Scrivi una Policy A1 che consente una richiesta solo se non proviene dall'Antartide. Il diagramma seguente illustra la policy Amazon SQS.

![\[Policy A1, che contiene Effetto uguale a Consenti e Condizione uguale a se la richiesta non proviene dall'Antartide.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-security-custom-policy-allow-request-if-not-from-antarctica.png)


Se un utente invia una richiesta dagli Stati Uniti, la condizione è soddisfatta (la richiesta non proviene dall'Antartide) e la richiesta comporta un **allow**. Tuttavia, se un utente invia una richiesta dall'Antartide, la condizione non viene soddisfatta e la richiesta comporta, per impostazione predefinita, un **default-deny**. Puoi modificare il risultato a un **explicit-deny** scrivendo una Policy A2 che nega esplicitamente una richiesta se proviene da Antartide. Il diagramma seguente illustra la policy.

![\[Policy A2, che contiene Effetto uguale a Deny e Condizione uguale a se la richiesta proviene dall'Antartide.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-security-custom-policy-explicitly-deny-request-if-from-antarctica.png)


Se un utente invia una richiesta dall'Antartide, la condizione viene soddisfatta e la richiesta comporta un **explicit-deny**.

La differenza tra un **default-deny** e un **explicit-deny** è importante perché un **allow** può sovrascrivere il primo ma non l'ultimo. Ad esempio, Policy B consente le richieste se arrivano il 1° giugno 2010. Il seguente diagramma confronta la combinazione di questa policy con Policy A1 e Policy A2.

![\[Un side-by-side confronto tra lo scenario 1 e lo scenario 2.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-security-custom-policy-compare-allow-request-deny-request-policies-override.png)


Nello Scenario 1, Policy A1 comporta un **default-deny** e Policy B comporta un **allow** perché la policy consente le richieste pervenute il 1° giugno 2010. Il **allow** dalla policy B sovrascrive il **default-deny** dalla policy A1 e pertanto la richiesta è consentita.

Nello Scenario 2, Policy B2 comporta un **explicit-deny** e Policy B comporta un **allow**. L'**explicit-deny** dalla policy A2 sovrascrive il **allow** dalla policy B e pertanto la richiesta viene rifiutata.

# Limitazioni delle politiche personalizzate di Amazon SQS
<a name="sqs-limitations-of-custom-policies"></a>

## Accesso multi-account
<a name="sqs-cross-account-access"></a>

Le autorizzazioni per più account non sono applicabili alle azioni seguenti:
+ `[AddPermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html)`
+ `[CancelMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CancelMessageMoveTask.html)`
+ `[CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html)`
+ `[DeleteQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html)`
+ `[ListMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListMessageMoveTasks.html)`
+ `[ListQueues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html)`
+ `[ListQueueTags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueueTags.html)`
+ `[RemovePermission](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html)`
+ `[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`
+ `[StartMessageMoveTask](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_StartMessageMoveTask.html)`
+ `[TagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_TagQueue.html)`
+ `[UntagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_UntagQueue.html)`

## Chiavi di condizione
<a name="sqs-condition-keys"></a>

Al momento Amazon SQS supporta solo un sottoinsieme limitato delle [chiavi di condizione disponibili in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys). Per ulteriori informazioni, consulta [Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse](sqs-api-permissions-reference.md).

# Esempi di sintassi delle policy di accesso di Amazon SQS personalizzata
<a name="sqs-creating-custom-policies-access-policy-examples"></a>

I seguenti sono esempi tipici di policy di accesso Amazon SQS.

## Esempio 1: Concedere l'autorizzazione a un account
<a name="one-account"></a>

La policy Amazon SQS di esempio seguente fornisce all'account Account AWS l'autorizzazione 111122223333 per inviare e ricevere dalla `queue2` di proprietà dell' Account AWS 444455556666.

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

****  

```
{   
   "Version":"2012-10-17",		 	 	 
   "Id": "UseCase1",
   "Statement" : [{
      "Sid": "1", 
      "Effect": "Allow",           
      "Principal": {
         "AWS": [
            "111122223333"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ], 
      "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2"  
   }]
}
```

------

## Esempio 2: Concedere l'autorizzazione a uno o più account
<a name="two-accounts"></a>

Il seguente esempio di policy Amazon SQS fornisce uno o più Account AWS accessi alle code di proprietà del tuo account per un periodo di tempo specifico. È necessario scrivere questa policy e caricarla in Amazon SQS utilizzando l'operazione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html) perché l'operazione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html) non consente di specificare una limitazione di tempo quando si concede l'accesso a una coda.

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

****  

```
{   
   "Version":"2012-10-17",		 	 	 
   "Id": "UseCase2",
   "Statement" : [{
      "Sid": "1", 
      "Effect": "Allow",           
      "Principal": {
         "AWS": [
            "111122223333",
            "444455556666"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ], 
      "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2",
      "Condition": {
         "DateLessThan": {
            "AWS:CurrentTime": "2009-06-30T12:00Z"
         }
      }   
   }]
}
```

------

## Esempio 3: Concedere autorizzazioni a richieste provenienti da istanze Amazon EC2
<a name="requests-from-ec2"></a>

La policy di esempio Amazon SQS seguente fornisce l'accesso a richieste provenienti da istanze Amazon EC2. Questo esempio si basa sull'esempio "[Esempio 2: Concedere l'autorizzazione a uno o più account](#two-accounts)": limita l'accesso a prima del 30 giugno 2009 alle 12.00 (UTC), limita l'accesso all'intervallo IP `203.0.113.0/24`. È necessario scrivere questa policy e caricarla su Amazon SQS utilizzando l'azione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html) perché l'azione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html) non consente di specificare una limitazione di indirizzo IP al momento di concedere l'accesso a una coda.

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

****  

```
{   
   "Version":"2012-10-17",		 	 	 
   "Id": "UseCase3",
   "Statement" : [{
      "Sid": "1", 
      "Effect": "Allow",           
      "Principal": {
         "AWS": [
            "111122223333"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ], 
      "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2",
      "Condition": {
         "DateLessThan": {
            "AWS:CurrentTime": "2009-06-30T12:00Z"
         },
         "IpAddress": {
            "AWS:SourceIp": "203.0.113.0/24"
         }
      }   
   }]
}
```

------

## Esempio 4: Negare l'accesso a un account specifico
<a name="deny-account"></a>

Il seguente esempio di policy di Amazon SQS nega un Account AWS accesso specifico alla tua coda. Questo esempio si basa sull'esempio "[Esempio 1: Concedere l'autorizzazione a un account](#one-account)": nega l'accesso a ciò che è specificato. Account AWSÈ necessario scrivere questa policy e caricarla in Amazon SQS utilizzando l'operazione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html) perché l'operazione [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_AddPermission.html) non consente di negare l'accesso a una coda (concede solo l'accesso a una coda). 

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

****  

```
{ 
   "Version":"2012-10-17",		 	 	 
   "Id": "UseCase4",
   "Statement" : [{
      "Sid": "1", 
      "Effect": "Deny",           
      "Principal": {
         "AWS": [
            "111122223333"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ], 
      "Resource": "arn:aws:sqs:us-east-2:444455556666:queue2"   
   }]
}
```

------

## Esempio 5: Negare l'accesso se non è un endpoint VPC
<a name="deny-not-from-vpc"></a>

La seguente policy Amazon SQS di esempio limita l'accesso alla `queue1`: 111122223333 può eseguire le azioni [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) e [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html) solo dall'ID dell'endpoint VPC `vpce-1a2b3c4d` (specificato usando la condizione `aws:sourceVpce`). Per ulteriori informazioni, consulta [Endpoint di Amazon Virtual Private Cloud per Amazon SQS](sqs-internetwork-traffic-privacy.md#sqs-vpc-endpoints).

**Nota**  
La condizione `aws:sourceVpce` non richiede un ARN per la risorsa dell'endpoint VPC, ma solo l'ID dell'endpoint VPC.
Puoi modificare l'esempio che segue per limitare tutte le operazioni per un determinato endpoint VPC negando tutte le operazioni Amazon SQS (`sqs:*`) nella seconda istruzione. Tuttavia, questa istruzione della policy stabilisce che tutte le operazioni (comprese le operazioni amministrative necessarie per modificare le autorizzazioni della coda) devono essere eseguite tramite l'endpoint VPC specifico definito nella policy, impedendo potenzialmente all'utente di modificare successivamente le autorizzazioni della coda.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id": "UseCase5",
   "Statement": [{
      "Sid": "1",
      "Effect": "Allow",
      "Principal": {
         "AWS": [
            "111122223333"
         ]
      },
      "Action": [
         "sqs:SendMessage",
         "sqs:ReceiveMessage"
      ],
         "Resource": "arn:aws:sqs:us-east-2:111122223333:queue1"
      },
      {
         "Sid": "2",
         "Effect": "Deny",
         "Principal": "*",
         "Action": [
            "sqs:SendMessage",
            "sqs:ReceiveMessage"
         ],
         "Resource": "arn:aws:sqs:us-east-2:111122223333:queue1",
         "Condition": {
            "StringNotEquals": {
               "aws:sourceVpce": "vpce-1a2b3c4d"
            }
         }
      }
   ]
}
```

------

# Utilizzo delle credenziali di sicurezza temporanee con Amazon SQS
<a name="sqs-using-temporary-security-credentials"></a>

Oltre a creare utenti con le proprie credenziali di sicurezza, IAM ti consente anche di concedere credenziali di sicurezza temporanee a qualsiasi utente, consentendogli di accedere ai tuoi servizi e risorse. AWS Puoi gestire utenti che hanno Account AWS. Puoi anche gestire gli utenti del tuo sistema che non ne hanno Account AWS (utenti federati). Inoltre, anche le applicazioni create per accedere alle AWS risorse possono essere considerate «utenti».

Queste credenziali di sicurezza temporanee sono utilizzate per effettuare delle richieste ad Amazon SQS. Le librerie API calcolano il valore di firma necessario utilizzando tali credenziali per autenticare la richiesta dell'utente. In caso di invio di richieste tramite l'utilizzo di credenziali scadute, Amazon SQS rifiuta la richiesta.

**Nota**  
Non puoi impostare una policy in base alle credenziali temporanee.

## Prerequisiti
<a name="temporary-security-credentials-prerequisites"></a>

1. Usare IAM per creare credenziali di sicurezza provvisorie:
   + Token di sicurezza
   + ID chiave di accesso
   + Secret Access Key

1. Prepara la tua stringa a effettuare l'accesso con l'ID chiave di accesso temporanea e il token di sicurezza.

1. Utilizza la Secret Access Key temporanea anziché la tua Secret Access Key per firmare la tua richiesta di API query.

**Nota**  
Quando invii la richiesta di API query firmata, utilizza l'ID chiave di accesso temporaneo anziché l'ID chiave di accesso e includi i token di sicurezza. Per ulteriori informazioni sul supporto IAM per le credenziali di sicurezza temporanee, consulta [Granting Temporary Access to Your AWS Resources](https://docs.aws.amazon.com/IAM/latest/UserGuide/TokenBasedAuth.html) nella *IAM User Guide*. 

## Chiamare un'azione API query Amazon SQS utilizzando le credenziali di sicurezza temporanee
<a name="temporary-security-credentials-query-api"></a>

1. Richiedi un token di sicurezza temporaneo utilizzando AWS Identity and Access Management. Per ulteriori informazioni, consulta [Creazione di credenziali di sicurezza temporanee per abilitare l'accesso per utenti IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingSessionTokens.html) nella *Guida per l’utente IAM*.

   IAM restituisce un token di sicurezza, un ID chiave di accesso e una chiave di accesso segreta.

1. Prepare la tua query utilizzando l'ID chiave di accesso temporaneo anziché l'ID chiave di accesso e includi i token di sicurezza. Firma la tua richiesta utilizzando la Secret Access Key temporaneo anziché quella effettiva.

1. Invia la stringa della query firmata con l'ID chiave di accesso temporanea e il token di sicurezza.

   Nell'esempio seguente viene mostrato come utilizzare credenziali di sicurezza temporanee per autenticare una richiesta Amazon SQS. La struttura di *`AUTHPARAMS`* dipende dalla modalità di firma della richiesta API. Per ulteriori informazioni, consulta [Signing AWS API Requests](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) nel *Amazon Web Services General Reference*.

   ```
   https://sqs.us-east-2.amazonaws.com/
   ?Action=CreateQueue
   &DefaultVisibilityTimeout=40
   &QueueName=MyQueue
   &Attribute.1.Name=VisibilityTimeout
   &Attribute.1.Value=40
   &Expires=2020-12-18T22%3A52%3A43PST
   &SecurityToken=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   &AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE
   &Version=2012-11-05
   &AUTHPARAMS
   ```

   L'esempio seguente utilizza credenziali di sicurezza temporanee per inviare due messaggi con l'operazione `SendMessageBatch`.

   ```
   https://sqs.us-east-2.amazonaws.com/
   ?Action=SendMessageBatch
   &SendMessageBatchRequestEntry.1.Id=test_msg_001
   &SendMessageBatchRequestEntry.1.MessageBody=test%20message%20body%201
   &SendMessageBatchRequestEntry.2.Id=test_msg_002
   &SendMessageBatchRequestEntry.2.MessageBody=test%20message%20body%202
   &SendMessageBatchRequestEntry.2.DelaySeconds=60
   &Expires=2020-12-18T22%3A52%3A43PST
   &SecurityToken=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
   &AWSAccessKeyId=AKIAI44QH8DHBEXAMPLE
   &Version=2012-11-05
   &AUTHPARAMS
   ```

# Gestione degli accessi per code crittografate di Amazon SQS con politiche di privilegi minimi
<a name="sqs-least-privilege-policy"></a>

Puoi utilizzare Amazon SQS per lo scambio di dati sensibili tra applicazioni utilizzando la crittografia lato server (SSE) integrata con [AWS Key Management Service (KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html). Con l'integrazione di Amazon SQS e AWS KMS, puoi gestire centralmente le chiavi che proteggono Amazon SQS, nonché le chiavi che proteggono le altre risorse. AWS 

Più AWS servizi possono fungere da sorgenti di eventi che inviano eventi ad Amazon SQS. [Per consentire a una fonte di eventi di accedere alla coda crittografata di Amazon SQS, devi configurare la coda con una chiave gestita dal cliente.](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) AWS KMS Quindi, utilizza la policy chiave per consentire al servizio di utilizzare i metodi API richiesti. AWS KMS Il servizio richiede inoltre le autorizzazioni per autenticare l'accesso per consentire alla coda di inviare eventi. Puoi raggiungere questo obiettivo utilizzando una policy di Amazon SQS, che è una policy basata sulle risorse che puoi utilizzare per controllare l'accesso alla coda Amazon SQS e ai relativi dati.

Le seguenti sezioni forniscono informazioni su come controllare l'accesso alla coda crittografata di Amazon SQS tramite la policy di Amazon SQS e la policy chiave. AWS KMS Le policy di questa guida ti aiuteranno a ottenere il [privilegio minimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege).

Questa guida descrive anche come le policy basate sulle risorse risolvono il [problema confused-deputy](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) utilizzando le chiavi di contesto delle condizioni IAM globali [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn), [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) e [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid).

**Topics**
+ [

## Panoramica di
](#sqs-least-privilege-overview)
+ [

## Policy della chiave con privilegio minimo per Amazon SQS
](#sqs-least-privilege-use-case)
+ [

## Istruzioni di policy di Amazon SQS per la coda DLQ
](#sqs-policy-dlq)
+ [

## Prevenzione del problema "confused deputy" tra servizi
](#sqs-confused-deputy-prevention)
+ [

## Utilizza IAM Access Analyzer per esaminare l'accesso multi-account
](#sqs-cross-account-findings)

## Panoramica di
<a name="sqs-least-privilege-overview"></a>

In questo argomento, descriveremo un caso d'uso comune per illustrare come creare la policy della chiave e la policy di coda di Amazon SQS. Questo caso d’uso viene mostrato nell'immagine seguente.

![\[Pubblicazione di messaggi Amazon SNS in Amazon SQS.\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-least-privilege.png)


In questo esempio, il produttore del messaggio è un argomento di [Amazon Simple Notification Service (SNS)](https://docs.aws.amazon.com/sns/latest/dg/welcome.html), configurato per separare i messaggi dalla coda crittografata di Amazon SQS. Il consumatore di messaggi è un servizio di elaborazione, come una funzione [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html), un'istanza [Amazon Elastic Compute Cloud (EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) o un container [AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html). La coda Amazon SQS viene quindi configurata per inviare messaggi non riusciti a una coda [DLQ](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html). Ciò è utile per eseguire il debug dell'applicazione o del sistema di messaggistica perché DLQs consente di isolare i messaggi non utilizzati per determinare il motivo per cui la loro elaborazione non è riuscita. Nella soluzione definita in questo argomento, un servizio di elaborazione come una funzione Lambda viene utilizzato per elaborare i messaggi archiviati nella coda Amazon SQS. Se l'utente dei messaggi si trova in un cloud privato virtuale (VPC), l'istruzione della policy [`DenyReceivingIfNotThroughVPCE`](#sqs-restrict-message-to-endpoint) inclusa in questa guida consente di limitare la ricezione dei messaggi a quel VPC specifico.

**Nota**  
Questa guida contiene solo le autorizzazioni IAM richieste sotto forma di istruzioni di policy. Per creare la policy, devi aggiungere le dichiarazioni alla tua policy Amazon SQS o alla AWS KMS tua policy chiave. Questa guida non fornisce istruzioni su come creare la coda o la chiave Amazon SQS. AWS KMS Per istruzioni su come creare queste risorse, consulta [Creazione di una coda Amazon SQS](creating-sqs-standard-queues.md#step-create-standard-queue) e [Creazione di chiavi](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).   
La policy di Amazon SQS definita in questa guida non supporta il reindirizzamento dei messaggi direttamente nella stessa coda Amazon SQS o in un'altra. 

## Policy della chiave con privilegio minimo per Amazon SQS
<a name="sqs-least-privilege-use-case"></a>

In questa sezione, descriviamo le autorizzazioni con privilegi minimi richieste AWS KMS per la chiave gestita dal cliente che utilizzi per crittografare la tua coda Amazon SQS. Con queste autorizzazioni, puoi limitare l'accesso solo alle entità previste implementando il privilegio minimo. La policy della chiave deve contenere le seguenti istruzioni di policy, che descriveremo in dettaglio di seguito:
+ [AWS KMS Concedi le autorizzazioni di amministratore alla chiave](#sqs-use-case-kms-admin-permissions)
+ [Concedi l'accesso in sola lettura ai metadati della chiave](#sqs-use-case-read-only-permissions)
+ [Concedi ad Amazon SNS le autorizzazioni KMS per pubblicare i messaggi nella coda](#sqs-use-case-publish-messages-permissions)
+ [Consenti ai consumatori di decrittografare i messaggi dalla coda](#sqs-use-case-decrypt-messages-permissions)

### AWS KMS Concedi le autorizzazioni di amministratore alla chiave
<a name="sqs-use-case-kms-admin-permissions"></a>

Per creare una AWS KMS chiave, devi fornire le autorizzazioni di AWS KMS amministratore per il ruolo IAM che utilizzi per distribuire la chiave. AWS KMS Queste autorizzazioni di amministratore sono definite nella seguente istruzione di policy `AllowKeyAdminPermissions`. Quando aggiungi questa dichiarazione alla tua policy AWS KMS chiave, assicurati di sostituirla *<admin-role ARN>* con l'Amazon Resource Name (ARN) del ruolo IAM utilizzato per distribuire la AWS KMS chiave, gestire la AWS KMS chiave o entrambi. Questo può essere il ruolo IAM della tua pipeline di implementazione o il [ruolo di amministratore per la tua organizzazione](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html) nelle [AWS Organizations](https://aws.amazon.com/organizations/).

```
{
  "Sid": "AllowKeyAdminPermissions",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "<admin-role ARN>"
    ]
  },
  "Action": [
    "kms:Create*",
    "kms:Describe*",
    "kms:Enable*",
    "kms:List*",
    "kms:Put*",
    "kms:Update*",
    "kms:Revoke*",
    "kms:Disable*",
    "kms:Get*",
    "kms:Delete*",
    "kms:TagResource",
    "kms:UntagResource",
    "kms:ScheduleKeyDeletion",
    "kms:CancelKeyDeletion"
  ],
  "Resource": "*"
}
```

**Nota**  
In una policy AWS KMS chiave, il valore dell'`Resource`elemento deve essere`*`, il che significa «questa AWS KMS chiave». L'asterisco (`*`) identifica la AWS KMS chiave a cui è allegata la politica chiave.

### Concedi l'accesso in sola lettura ai metadati della chiave
<a name="sqs-use-case-read-only-permissions"></a>

Per concedere ad altri ruoli IAM l'accesso in sola lettura ai metadati della chiave, aggiungi l'istruzione `AllowReadAccessToKeyMetaData` alla policy della tua chiave. Ad esempio, la seguente dichiarazione consente di elencare tutte le AWS KMS chiavi del proprio account a fini di controllo. Questa istruzione concede all'utente AWS root l'accesso in sola lettura ai metadati chiave. Pertanto, qualsiasi principale IAM dell'account può avere accesso ai metadati della chiave se le relative policy basate sull'identità includono autorizzazioni elencate nella seguente istruzione: `kms:Describe*`, `kms:Get*` e `kms:List*`. Assicurati di sostituirla *<account-ID>* con le tue informazioni. 

```
{
  "Sid": "AllowReadAcesssToKeyMetaData",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "arn:aws:iam::<accountID>:root"
    ]
  },
  "Action": [
    "kms:Describe*",
    "kms:Get*",
    "kms:List*"
  ],
  "Resource": "*"
}
```

### Concedi ad Amazon SNS le autorizzazioni KMS per pubblicare i messaggi nella coda
<a name="sqs-use-case-publish-messages-permissions"></a>

Per consentire al tuo argomento Amazon SNS di pubblicare messaggi nella coda crittografata di Amazon SQS, aggiungi l'informativa sulla policy `AllowSNSToSendToSQS` alla policy della chiave. Questa dichiarazione concede ad Amazon SNS le autorizzazioni per utilizzare AWS KMS la chiave per la pubblicazione nella tua coda Amazon SQS. Assicurati di sostituirla con le tue informazioni*<account-ID>*.

**Nota**  
`Condition`Nella dichiarazione limita l'accesso solo al servizio Amazon SNS nello stesso AWS account.

```
{
  "Sid": "AllowSNSToSendToSQS",
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "sns.amazonaws.com"
    ]
  },
  "Action": [
    "kms:Decrypt",
    "kms:GenerateDataKey"
  ],
  "Resource": "*",
  "Condition": {
    "StringEquals": {
      "aws:SourceAccount": "<account-id>"
    }
  }
}
```

### Consenti ai consumatori di decrittografare i messaggi dalla coda
<a name="sqs-use-case-decrypt-messages-permissions"></a>

La seguente istruzione `AllowConsumersToReceiveFromTheQueue` concede all'utente di messaggi Amazon SQS le autorizzazioni necessarie per decrittografare i messaggi ricevuti dalla coda crittografata di Amazon SQS. Quando alleghi la policy statement, sostituiscila *<consumer's runtime role ARN>* con l'ARN del ruolo di runtime IAM del consumer del messaggio.

```
{
  "Sid": "AllowConsumersToReceiveFromTheQueue",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "<consumer's execution role ARN>"
    ]
  },
  "Action": [
    "kms:Decrypt"
  ],
  "Resource": "*"
}
```

### Policy relativa al privilegio minimo per Amazon SQS
<a name="sqs-use-case-specific-policy"></a>

Questa sezione illustra le politiche di coda di Amazon SQS con privilegio minimo per il caso d'uso trattato in questa guida (ad esempio, da Amazon SNS ad Amazon SQS). La policy definita è progettata per prevenire accessi involontari utilizzando una combinazione delle istruzioni `Deny` e `Allow`. Le istruzioni `Allow` concedono l'accesso all'entità o alle entità previste. Le istruzioni `Deny` impediscono ad altre entità indesiderate di accedere alla coda di Amazon SQS, escludendo al contempo l'entità prevista dalla condizione della politica.

La policy di Amazon SQS include le seguenti istruzioni, che descriviamo in dettaglio di seguito:
+ [Limita le autorizzazioni di gestione di Amazon SQS](#sqs-use-case-restrict-permissions)
+ [Limita le azioni di coda di Amazon SQS dall'organizzazione specificata](#sqs-use-case-restrict-permissions-from-org)
+ [Concedi le autorizzazioni Amazon SQS ai consumatori](#sqs-use-grant-consumer-permissions)
+ [Applica la crittografia in transito](#sqs-encryption-in-transit)
+ [Limita la trasmissione di messaggi a un argomento specifico di Amazon SNS](#sqs-restrict-transmission-to-topic)
+ [(Opzionale) Limitazione della ricezione dei messaggi a un endpoint VPC specifico](#sqs-restrict-message-to-endpoint)

### Limita le autorizzazioni di gestione di Amazon SQS
<a name="sqs-use-case-restrict-permissions"></a>

La seguente istruzione della policy `RestrictAdminQueueActions` limita le autorizzazioni di gestione di Amazon SQS solo al ruolo o ai ruoli IAM utilizzati per implementare la coda, gestire la coda o entrambe le cose. Assicurarsi di sostituire *<placeholder values>* con le proprie informazioni. Specificare l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS, nonché il ruolo di amministratore che dovrebbe avere le autorizzazioni ARNs di gestione di Amazon SQS. 

```
{
  "Sid": "RestrictAdminQueueActions",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": [
    "sqs:AddPermission",
    "sqs:DeleteQueue",
    "sqs:RemovePermission",
    "sqs:SetQueueAttributes"
  ],
  "Resource": "<SQS Queue ARN>",
  "Condition": {
    "StringNotLike": {
      "aws:PrincipalARN": [
        "arn:aws:iam::<account-id>:role/<deployment-role-name>",
        "<admin-role ARN>"
      ]
    }
  }
}
```

### Limita le azioni di coda di Amazon SQS dall'organizzazione specificata
<a name="sqs-use-case-restrict-permissions-from-org"></a>

Per proteggere le tue risorse Amazon SQS dall'accesso esterno (accesso da parte di un'entità esterna all'[organizzazione AWS](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)), utilizza la seguente istruzione. Questa istruzione limita l'accesso alla coda di Amazon SQS all'organizzazione specificata in `Condition`. Assicurati di sostituirlo *<SQS queue ARN>* con l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS e poi con l'ID della *<org-id>* tua organizzazione. 

```
{
  "Sid": "DenyQueueActionsOutsideOrg",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": [
    "sqs:AddPermission",
    "sqs:ChangeMessageVisibility",
    "sqs:DeleteQueue",
    "sqs:RemovePermission",
    "sqs:SetQueueAttributes",
    "sqs:ReceiveMessage"
  ],
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "StringNotEquals": {
      "aws:PrincipalOrgID": [
        "<org-id>"
      ]
    }
  }
}
```

### Concedi le autorizzazioni Amazon SQS ai consumatori
<a name="sqs-use-grant-consumer-permissions"></a>

Per ricevere messaggi dalla coda Amazon SQS, devi fornire al consumatore dei messaggi le autorizzazioni necessarie. La seguente istruzione di policy concede al consumatore, da te specificato, le autorizzazioni necessarie per utilizzare i messaggi dalla coda di Amazon SQS. Quando aggiungi l'istruzione alla tua policy Amazon SQS, assicurati di sostituirla *<consumer's IAM runtime role ARN>* con l'ARN del ruolo di runtime IAM utilizzato dal consumatore e *<SQS queue ARN>* con l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS.

```
{
  "Sid": "AllowConsumersToReceiveFromTheQueue",
  "Effect": "Allow",
  "Principal": {
    "AWS": "<consumer's IAM execution role ARN>"
  },
  "Action": [
    "sqs:ChangeMessageVisibility",
    "sqs:DeleteMessage",
    "sqs:GetQueueAttributes",
    "sqs:ReceiveMessage"
  ],
  "Resource": "<SQS queue ARN>"
}
```

Per impedire ad altre entità di ricevere messaggi dalla coda di Amazon SQS, aggiungi l'istruzione `DenyOtherConsumersFromReceiving` alla policy della coda di Amazon SQS. Questa istruzione limita il consumo di messaggi al consumatore specificato, senza consentire ad altri consumatori di accedervi, anche se le autorizzazioni di identità consentirebbero loro l'accesso. Assicurati di sostituire e con le tue informazioni*<SQS queue ARN>*. *<consumer’s runtime role ARN>*

```
{
  "Sid": "DenyOtherConsumersFromReceiving",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": [
    "sqs:ChangeMessageVisibility",
    "sqs:DeleteMessage",
    "sqs:ReceiveMessage"
  ],
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "StringNotLike": {
      "aws:PrincipalARN": "<consumer's execution role ARN>"
    }
  }
}
```

### Applica la crittografia in transito
<a name="sqs-encryption-in-transit"></a>

La seguente istruzione di policy `DenyUnsecureTransport` impone a consumatori e produttori di utilizzare canali sicuri (connessioni TLS) per inviare e ricevere messaggi dalla coda di Amazon SQS. Assicurati di sostituirlo *<SQS queue ARN>* con l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS.

```
{
  "Sid": "DenyUnsecureTransport",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": [
    "sqs:ReceiveMessage",
    "sqs:SendMessage"
  ],
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "Bool": {
      "aws:SecureTransport": "false"
    }
  }
}
```

### Limita la trasmissione di messaggi a un argomento specifico di Amazon SNS
<a name="sqs-restrict-transmission-to-topic"></a>

Il seguente è un esempio di istruzione di policy `AllowSNSToSendToTheQueue` che consente all'argomento Amazon SNS di inviare messaggi alla coda Amazon SQS. Assicurati di sostituirlo *<SQS queue ARN>* con l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS e con *<SNS topic ARN>* l'argomento ARN di Amazon SNS.

```
{
  "Sid": "AllowSNSToSendToTheQueue",
  "Effect": "Allow",
  "Principal": {
    "Service": "sns.amazonaws.com"
  },
  "Action": "sqs:SendMessage",
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "ArnLike": {
      "aws:SourceArn": "<SNS topic ARN>"
    }
  }
}
```

La seguente istruzione di policy `DenyAllProducersExceptSNSFromSending` impedisce ad altri produttori di inviare messaggi alla coda. Sostituisci *<SQS queue ARN>* e con le tue informazioni. *<SNS topic ARN>*

```
{
  "Sid": "DenyAllProducersExceptSNSFromSending",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": "sqs:SendMessage",
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "ArnNotLike": {
      "aws:SourceArn": "<SNS topic ARN>"
    }
  }
}
```

### (Opzionale) Limitazione della ricezione dei messaggi a un endpoint VPC specifico
<a name="sqs-restrict-message-to-endpoint"></a>

Per limitare la ricezione di messaggi solo a un [endpoint VPC](https://aws.amazon.com/about-aws/whats-new/2018/12/amazon-sqs-vpc-endpoints-aws-privatelink/) specifico, aggiungi la seguente istruzione di policy alla tua policy di coda di Amazon SQS. Questa istruzione impedisce a un utente che consuma messaggi di ricevere messaggi dalla coda a meno che i messaggi non provengano dall'endpoint VPC desiderato. Sostituisci *<SQS queue ARN>* con l'ARN del ruolo IAM utilizzato per distribuire la coda Amazon SQS e con *<vpce\$1id>* l'ID dell'endpoint VPC.

```
{
  "Sid": "DenyReceivingIfNotThroughVPCE",
  "Effect": "Deny",
  "Principal": "*",
  "Action": [
    "sqs:ReceiveMessage"
  ],
  "Resource": "<SQS queue ARN>",
  "Condition": {
    "StringNotEquals": {
      "aws:sourceVpce": "<vpce id>"
    }
  }
}
```

## Istruzioni di policy di Amazon SQS per la coda DLQ
<a name="sqs-policy-dlq"></a>

Aggiungi le seguenti istruzioni di policy, identificate dal relativo ID, alla tua policy di accesso DLQ:
+ `RestrictAdminQueueActions`
+ `DenyQueueActionsOutsideOrg`
+ `AllowConsumersToReceiveFromTheQueue`
+ `DenyOtherConsumersFromReceiving`
+ `DenyUnsecureTransport`

Oltre ad aggiungere le precedenti istruzioni di policy alla tua policy di accesso DLQ, devi aggiungere anche un'istruzione per limitare la trasmissione di messaggi alle code di Amazon SQS, come descritto nella sezione seguente.

### Limitazione della trasmissione di messaggi a code Amazon SQS
<a name="sqs-dlq-restrict-permissions"></a>

Per limitare l'accesso solo alle code Amazon SQS dallo stesso account, aggiungi la seguente istruzione di policy `DenyAnyProducersExceptSQS` alla policy di coda DLQ. Questa istruzione non limita la trasmissione dei messaggi a una coda specifica perché prima di creare la coda principale devi implementare il DLQ, quindi non conoscerai l'ARN di Amazon SQS quando crei la DLQ. Se devi limitare l'accesso a una sola coda Amazon SQS, modifica la `aws:SourceArn` in `Condition` con l’ARN della tua coda di origine Amazon SQS, quando lo conosci.

```
{
  "Sid": "DenyAnyProducersExceptSQS",
  "Effect": "Deny",
  "Principal": {
    "AWS": "*"
  },
  "Action": "sqs:SendMessage",
  "Resource": "<SQS DLQ ARN>",
  "Condition": {
    "ArnNotLike": {
      "aws:SourceArn": "arn:aws:sqs:<region>:<account-id>:*"
    }
  }
}
```

**Importante**  
Le policy di coda di Amazon SQS definite in questa guida non limitano l'operazione `sqs:PurgeQueue` a uno o più ruoli IAM specifici. L'azione `sqs:PurgeQueue` consente di eliminare tutti i messaggi nella coda Amazon SQS. Puoi anche utilizzare questa azione per apportare modifiche al formato del messaggio senza sostituire la coda Amazon SQS. Durante il debug di un'applicazione, puoi cancellare la coda di Amazon SQS per rimuovere messaggi potenzialmente errati. Durante il test dell'applicazione, puoi indirizzare un volume di messaggi elevato attraverso la coda di Amazon SQS e quindi eliminare la coda per ricominciare da capo prima di entrare in produzione. Il motivo per cui non si limita questa azione a un determinato ruolo è che questo ruolo potrebbe non essere noto durante l'implementazione della coda Amazon SQS. Dovrai aggiungere questa autorizzazione alla policy basata sull'identità del ruolo per poter eliminare la coda.

## Prevenzione del problema "confused deputy" tra servizi
<a name="sqs-confused-deputy-prevention"></a>

Il [confused deputy](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) è un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire un'azione può costringere un'entità dotata di privilegi maggiori a eseguire l'azione. Per evitare che ciò accada, AWS fornisce strumenti che aiutano a proteggere il proprio account se si fornisce a terzi (cosiddetti cross-account) o ad altri AWS servizi (noti come cross-service) l'accesso alle risorse del proprio account. Le istruzioni di policy in questa sezione possono aiutarti a evitare il problema del "confused deputy" tra servizi.

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 contribuire alla protezione da questo problema, le policy basate sulle risorse definite in questo post utilizzano le chiavi di contesto delle condizioni IAM globali [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn), [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) e [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid). Ciò limita le autorizzazioni di cui dispone un servizio per una risorsa specifica, un account specifico o un'organizzazione specifica in AWS Organizations.

## Utilizza IAM Access Analyzer per esaminare l'accesso multi-account
<a name="sqs-cross-account-findings"></a>

Puoi utilizzare [AWS IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) per esaminare le policy di coda AWS KMS e le policy chiave di Amazon SQS e avvisarti quando una coda o AWS KMS una chiave Amazon SQS concede l'accesso a un'entità esterna. IAM Access Analyzer consente di identificare le [risorse](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-resources.html) nell'organizzazione e negli account che sono condivisi con un'entità esterna. Questa zona di fiducia può essere un AWS account o l'organizzazione all'interno di AWS Organizations che specifichi quando abiliti IAM Access Analyzer.

IAM Access Analyzer identifica le risorse condivise con responsabili esterni utilizzando un ragionamento basato sulla logica per analizzare le politiche basate sulle risorse nel tuo ambiente. AWS Per ogni istanza di una risorsa condivisa al di fuori della zona di fiducia, Access Analyzer genera una ricerca. I [risultati](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-findings.html) comprendono informazioni sull'accesso e sull'entità esterna a cui è concesso. È possibile rivedere i risultati per determinare se l'accesso è intenzionale e sicuro o se invece è involontario e rappresenta un rischio per la sicurezza. Per eventuali accessi non intenzionali, rivedi la policy interessata e correggila. Fai riferimento a questo [post del blog](https://aws.amazon.com/blogs/aws/identify-unintended-resource-access-with-aws-identity-and-access-management-iam-access-analyzer/) per ulteriori informazioni su come AWS IAM Access Analyzer identifica l'accesso non intenzionale alle tue risorse. AWS 

Per ulteriori informazioni su AWS IAM Access Analyzer, consulta la documentazione di [AWS IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) Access Analyzer.

# Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse
<a name="sqs-api-permissions-reference"></a>

Quando configuri [Controllo accessi](security_iam_service-with-iam.md#access-control) e scrivi policy di autorizzazione che è possibile collegare a un'identità IAM, utilizza la tabella seguente come riferimento. L'elenco delle tabelle ogni azione di Amazon Simple Queue Service, le azioni corrispondenti per le quali è possibile concedere le autorizzazioni per eseguire l'azione e la AWS risorsa per la quale è possibile concedere le autorizzazioni.

Puoi specificare le operazioni nel campo `Action` della policy e il valore della risorsa nel campo `Resource`. Per specificare un'operazione, utilizzare il prefisso `sqs:` seguito dal nome dell'azione (ad esempio `sqs:CreateQueue`).

Attualmente, Amazon SQS supporta le [chiavi di contesto delle condizioni globali disponibili in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html).

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


**API di Amazon Simple Queue Service e autorizzazioni richieste per le azioni**  
<a name="sqs-api-and-required-permissions-for-actions-table"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-api-permissions-reference.html)