

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

# Utilizzo di autorizzazioni gestite parametrizzate in AWS RAM
<a name="parameterized-managed-permissions"></a>

Un'autorizzazione gestita con parametri è un'autorizzazione gestita con segnaposto nelle relative condizioni politiche che puoi inserire con i tuoi valori. Questi segnaposto sono parametri del modello. Non creano un nuovo tipo di autorizzazione gestita. Aggiungono variabilità al modello di policy di uno esistente.

Invece di creare un'autorizzazione gestita dal cliente separata per ogni valore di condizione univoco, si crea un'autorizzazione gestita dal cliente con parametri. Quando la si associa a una condivisione di risorse, si fornisce un valore per ogni parametro. AWS RAM sostituisce i valori nel modello di policy e allega la policy basata sulle risorse risultante alle risorse condivise.

Ad esempio, un team della piattaforma centrale crea un'autorizzazione gestita dal cliente per AWS Systems Manager Parametri: memorizza i parametri (tipo di risorsa) `ssm:Parameter`). Concede l'accesso in lettura solo ai presidi con un certificato approvato `team` etichetta. Il team della piattaforma condivide l'autorizzazione gestita dal cliente con gli account della propria organizzazione. Ogni account la utilizza quindi nelle proprie condivisioni di risorse, che possono contenere uno o più parametri di Parameter Store. In ogni condivisione di risorse, l'account fornisce `team` i valori dei tag dei principali in grado di leggere i parametri condivisi di Parameter Store.

**Topics**
+ [tipi di parametri del modello](#template-parameter-types)
+ [Regole di sintassi del modello di policy](#template-syntax-rules)
+ [Crea un'autorizzazione gestita con parametri](#create-parameterized-permission)
+ [Controllo della versione di un'autorizzazione gestita con parametri](#parameterized-permission-versioning)
+ [Visualizza l'anteprima di un modello di policy renderizzato](#preview-rendered-policy)
+ [Associa un'autorizzazione gestita con parametri a una condivisione di risorse](#associate-parameterized-permission)
+ [Visualizza i parametri e i valori del modello](#view-template-parameters)
+ [Condivisione delle autorizzazioni gestite con parametri tra gli account](#sharing-parameterized-permissions)
+ [Controlla i valori dei parametri del modello con le politiche IAM](#template-iam-condition-keys)
+ [`STRING_LIST` esempi di parametri](#template-stringlist-examples)

## tipi di parametri del modello
<a name="template-parameter-types"></a>

AWS RAM supporta due tipi di parametri. Il tipo determina in che modo AWS RAM sostituisce il valore nella policy renderizzata. Nel AWS RAM API e AWS CLI, i tipi sono `STRING` e `STRING_LIST`. Il AWS RAM la console li mostra come **Stringa** e **StringList**.

**`STRING`**  
Accetta esattamente un valore di stringa.  
+ Puoi usare un `STRING` parametro in una chiave di condizione o in un valore di condizione.
+ È possibile incorporare un `STRING` parametro in altro testo. Ad esempio, `"arn:aws:iam::@{accountId}:role/Auditor"`.
+ Il valore renderizzato è sempre una stringa. Poiché gli operatori di condizione IAM convertono le stringhe nel tipo che confrontano, a `STRING` il parametro può fornire valori numerici, booleani, di data, indirizzo IP o ARN.

**`STRING_LIST`**  
Accetta da 1 a 100 valori di stringa.  
+ È possibile utilizzare un `STRING_LIST` parametro solo in un valore di condizione, non in una chiave di condizione.
+ Se il valore della condizione è una singola stringa che contiene solo il parametro, ad esempio `"@{teams}"`, AWS RAM esegue il rendering di una matrice dei valori forniti. Se fornisci un singolo valore, AWS RAM esegue il rendering di una singola stringa.
+ Se il valore della condizione contiene del testo prima o dopo il parametro, ad esempio `"arn:aws:iam::@{accountIds}:role/ParameterReader"`, AWS RAM combina ogni valore con quel testo.
+ Per combinare ogni valore con più di una stringa, elenca le stringhe in una matrice di valori di condizione. AWS RAM esegue il rendering di ogni voce dell'array per ogni valore e rimuove i risultati duplicati. Il risultato è sempre un array.
+ AWS RAM e IAM non divide una stringa con virgole. Una stringa separata da virgole viene confrontata come un valore.
Per alcuni esempi, consulta [`STRING_LIST` esempi di parametri](#template-stringlist-examples).

## Regole di sintassi del modello di policy
<a name="template-syntax-rules"></a>

Quando si aggiungono parametri al modello di policy di un'autorizzazione gestita, si applicano le seguenti regole. Se una richiesta viola una di queste regole, AWS RAM la rifiuta con un `InvalidParameterException` o `InvalidPolicyException` errore.
+ Un segnaposto per parametri utilizza la sintassi `@{parameterName}`.
+ I nomi dei parametri possono contenere lettere (a-z), A-Z), numeri (0-9), due punti (:), trattini (-) e trattini bassi (\_). I nomi devono essere univoci all'interno di una versione con autorizzazione gestita e il confronto ignora le maiuscole e minuscole.
+ È necessario dichiarare ogni parametro quando si crea l'autorizzazione o la versione dell'autorizzazione. Ogni dichiarazione richiede un nome, un tipo e una descrizione. La descrizione può contenere fino a 255 caratteri.
+ Ogni parametro dichiarato deve apparire nel modello di policy.
+ I segnaposto corrispondono esattamente ai nomi dichiarati, lettere maiuscole e minuscole incluse. Testo in `@{...}` il formato che non corrisponde esattamente a un nome dichiarato rimane nella politica come testo letterale. Ad esempio, se dichiari `teams` ma scrivi `@{Teams}`, AWS RAM tratta `@{Teams}` come testo e rifiuta la richiesta perché `teams` non è usato.
+ I parametri possono essere visualizzati solo in `Condition` elemento, come chiave di condizione o come valore di condizione. AWS RAM rifiuta i parametri in `Effect`, `Action`, o qualsiasi altro elemento.
+ Una chiave di condizione può contenere al massimo un parametro e deve essere un `STRING` parametro. Il valore di una condizione può contenere più di un parametro, ad esempio `"@{project}-@{stage}"`. Quando il valore di una condizione si combina `STRING_LIST` parametri, AWS RAM esegue il rendering di ogni combinazione dei relativi valori, fino a 100 stringhe per ogni valore di condizione.
+ È possibile dichiarare fino a 100 parametri per ogni versione di autorizzazione gestita.
+ I parametri non hanno valori predefiniti. Quando si associa l'autorizzazione a una condivisione di risorse, è necessario fornire un valore non vuoto per ogni parametro dichiarato e non è possibile fornire un nome non dichiarato o fornire lo stesso nome due volte.

## Crea un'autorizzazione gestita con parametri
<a name="create-parameterized-permission"></a>

Si crea un'autorizzazione gestita con parametri nello stesso modo in cui si crea qualsiasi altra autorizzazione gestita dal cliente. La differenza è che si dichiarano i parametri e si utilizzano `@{parameterName}` segnaposti nelle condizioni del modello di policy.

------
#### [ Console ]

**Per creare un'autorizzazione gestita con parametri**

1. Aprire il **[Libreria di autorizzazioni gestite](https://console.aws.amazon.com/ram/home#Permissions:)** e scegli **Crea un'autorizzazione gestita dal cliente**.

1. Sotto **Dettagli delle autorizzazioni gestite dal cliente**, inserisci un nome e scegli il tipo di risorsa.

1. Sotto **Modello di politica**, inserisci la politica. Usa `@{parameterName}` segnaposto nelle condizioni in cui desideri che ogni condivisione di risorse fornisca il proprio valore.

1. Sotto **Parametri del modello**, scegli **Aggiungi parametri dalla politica** per aggiungere una riga per ogni segnaposto nella policy, oppure scegli **Aggiungi parametro** per aggiungere una riga alla volta. Per ogni parametro, immettete il **Nome del parametro**, scegli il **Tipo** (**Corda** o **StringList**) e inserisci un **Descrizione**. La descrizione viene mostrata a chiunque fornisca un valore per il parametro.

1. (Facoltativo) Aggiungi dei tag.

1. Scegli **Crea un'autorizzazione gestita dal cliente**.

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

**Per creare un'autorizzazione gestita con parametri**
+ Esegui il [autorizzazione di creazione](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission.html) comando con `--policy-template` e `--permission-template-parameters` parametri.

  L'esempio seguente crea un'autorizzazione gestita dal cliente per `ssm:Parameter` tipo di risorsa. In questa politica, i committenti possono leggere i parametri solo se hanno un `team` tag il cui valore è compreso in `teams` elenco.

  ```
  $ aws ram create-permission \
      --name ParameterReadByTeam \
      --resource-type ssm:Parameter \
      --permission-template-parameters '[{"name":"teams","type":"STRING_LIST","description":"Values of the team principal tag that can read the shared parameters"}]' \
      --policy-template '{"Effect":"Allow","Action":["ssm:GetParameter","ssm:GetParameters"],"Condition":{"StringEquals":{"aws:PrincipalTag/team":"@{teams}"}}}'
  {
      "permission": {
          "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
          "version": "1",
          "defaultVersion": true,
          "name": "ParameterReadByTeam",
          "resourceType": "ssm:Parameter",
          "status": "ATTACHABLE",
          "creationTime": 1763300000.000,
          "lastUpdatedTime": 1763300000.000,
          "permissionTemplateParameters": [
              {
                  "name": "teams",
                  "type": "STRING_LIST",
                  "description": "Values of the team principal tag that can read the shared parameters"
              }
          ]
      }
  }
  ```

------

## Controllo della versione di un'autorizzazione gestita con parametri
<a name="parameterized-permission-versioning"></a>

La versione delle autorizzazioni gestite con parametri è identica a quella di qualsiasi altra autorizzazione gestita dal cliente. Ogni versione dichiara i propri parametri in modo indipendente, quindi una nuova versione può dichiarare un set di parametri diverso rispetto alla versione precedente.

Per creare una nuova versione, esegui [create-permission-version](https://docs.aws.amazon.com/cli/latest/reference/ram/create-permission-version.html) comando con `--policy-template` e `--permission-template-parameters` parametri. L'esempio seguente aggiunge una seconda condizione con `STRING` parametro denominato `environment`.

```
$ aws ram create-permission-version \
    --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
    --permission-template-parameters '[{"name":"teams","type":"STRING_LIST","description":"Values of the team principal tag that can read the shared parameters"},{"name":"environment","type":"STRING","description":"Value of the environment principal tag that can read the shared parameters"}]' \
    --policy-template '{"Effect":"Allow","Action":["ssm:GetParameter","ssm:GetParameters"],"Condition":{"StringEquals":{"aws:PrincipalTag/team":"@{teams}","aws:PrincipalTag/environment":"@{environment}"}}}'
```

Una nuova versione diventa la versione predefinita non appena viene creata. Le condivisioni di risorse esistenti mantengono la versione utilizzata. Quando il proprietario di una condivisione di risorse la aggiorna alla nuova versione, deve fornire i valori per i parametri dichiarati dalla nuova versione. Per ulteriori informazioni, consulta [Aggiornamento in corso AWS autorizzazioni gestite per una versione più recente](working-with-sharing-update-permissions.md).

Per ulteriori informazioni sul funzionamento delle versioni di autorizzazione gestite dal cliente e delle versioni predefinite, vedere [Creazione e utilizzo delle autorizzazioni gestite dal cliente in AWS RAM](create-customer-managed-permissions.md).

## Visualizza l'anteprima di un modello di policy renderizzato
<a name="preview-rendered-policy"></a>

Prima di associare un'autorizzazione gestita con parametri a una condivisione di risorse, è possibile visualizzare in anteprima la politica che AWS RAM esegue il rendering a partire da valori di parametri specifici.

Nel AWS RAM nella console, quando crei o aggiorni una condivisione di risorse, inserisci i valori in **Valori dei parametri del modello** e scegli **Anteprima della politica renderizzata**.

Nel AWS CLI, esegui il [ottenere il permesso](https://docs.aws.amazon.com/cli/latest/reference/ram/get-permission.html) comando con `--permission-template-parameters` parametro. Il `permission` il campo della risposta contiene la politica con i tuoi valori al posto dei segnaposto.

```
$ aws ram get-permission \
    --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
    --permission-template-parameters '[{"name":"teams","values":["payments","analytics"]},{"name":"environment","values":["prod"]}]'
{
    "permission": {
        "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
        "version": "2",
        "defaultVersion": true,
        "name": "ParameterReadByTeam",
        "resourceType": "ssm:Parameter",
        "permission": "{\"Effect\":\"Allow\",\"Action\":[\"ssm:GetParameter\",\"ssm:GetParameters\"],\"Condition\":{\"StringEquals\":{\"aws:PrincipalTag/team\":[\"payments\",\"analytics\"],\"aws:PrincipalTag/environment\":\"prod\"}}}",
        "creationTime": 1763400000.000,
        "lastUpdatedTime": 1763400000.000,
        "isResourceTypeDefault": false,
        "permissionType": "CUSTOMER_MANAGED",
        "featureSet": "STANDARD",
        "status": "ATTACHABLE",
        "permissionTemplateParameters": [
            {
                "name": "teams",
                "type": "STRING_LIST",
                "description": "Values of the team principal tag that can read the shared parameters"
            },
            {
                "name": "environment",
                "type": "STRING",
                "description": "Value of the environment principal tag that can read the shared parameters"
            }
        ]
    }
}
```

Senza `--permission-template-parameters` parametro, il `get-permission` il comando restituisce il modello di politica con `@{parameterName}` segnaposto. Le `permissionTemplateParameters` il campo elenca il nome, il tipo e la descrizione di ogni parametro dichiarato.

## Associa un'autorizzazione gestita con parametri a una condivisione di risorse
<a name="associate-parameterized-permission"></a>

Quando si associa un'autorizzazione gestita con parametri a una condivisione di risorse, è necessario fornire valori per tutti i parametri dichiarati dalla versione. AWS RAM esegue il rendering del modello di policy con i valori specificati e allega la policy basata sulle risorse risultanti alle risorse condivise di quel tipo.

------
#### [ Console ]

**Per associare un'autorizzazione gestita con parametri a una condivisione di risorse**

1. Quando si crea o si aggiorna una condivisione di risorse, in **Associa le autorizzazioni gestite** pagina, scegli l'autorizzazione gestita con parametri per il tipo di risorsa.

1. Sotto **Valori dei parametri del modello**, immettete un valore per ogni parametro. Per un **StringList** parametro, premi Invio dopo ogni valore o incolla i valori separati da nuove righe.

1. (Facoltativo) Scegli **Anteprima della politica renderizzata** per verificare la politica che AWS RAM allegherò.

1. Completa il resto della procedura guidata. La pagina di revisione elenca i valori sotto **Valori dei parametri del modello**.

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

**Per associare un'autorizzazione gestita con parametri a una condivisione di risorse**

1. Esegui [create-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/create-resource-share.html) o [associate-resource-share-permission](https://docs.aws.amazon.com/cli/latest/reference/ram/associate-resource-share-permission.html) con il `--permission-template-parameters` parametro.

   Per `create-resource-share`, il parametro è un elenco. Ogni voce contiene un `permissionArn` e il `permissionTemplateParameters` valori per tale autorizzazione. L'esempio seguente crea una condivisione di risorse che condivide un parametro Parameter Store con un altro Account AWS. Responsabili con `team` tag `payments` o `analytics` e il `environment` tag `prod` può leggerlo.

   ```
   $ aws ram create-resource-share \
       --name PaymentsConfig \
       --resource-arns arn:aws:ssm:us-east-1:123456789012:parameter/payments/endpoint \
       --principals 111122223333 \
       --permission-arns arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
       --permission-template-parameters '[{"permissionArn":"arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam","permissionTemplateParameters":[{"name":"teams","values":["payments","analytics"]},{"name":"environment","values":["prod"]}]}]'
   {
       "resourceShare": {
           "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
           "name": "PaymentsConfig",
           "owningAccountId": "123456789012",
           "allowExternalPrincipals": true,
           "status": "ACTIVE",
           "creationTime": 1763300000.000,
           "lastUpdatedTime": 1763300000.000,
           "featureSet": "STANDARD"
       }
   }
   ```

   `create-resource-share` utilizza sempre la versione predefinita di ogni autorizzazione gestita. È possibile associare solo la versione predefinita di un'autorizzazione gestita a una condivisione di risorse.

1. Per modificare i valori dei parametri su una condivisione di risorse esistente o per spostarla nella versione predefinita dell'autorizzazione, esegui [associate-resource-share-permission](https://docs.aws.amazon.com/cli/latest/reference/ram/associate-resource-share-permission.html) con il `--replace` parametro. Per questo comando, `--permission-template-parameters` accetta direttamente i valori dei parametri.

   ```
   $ aws ram associate-resource-share-permission \
       --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \
       --permission-arn arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam \
       --permission-template-parameters '[{"name":"teams","values":["payments"]},{"name":"environment","values":["prod"]}]' \
       --replace
   {
       "returnValue": true
   }
   ```

------

Per spostare molte condivisioni di risorse da una versione o autorizzazione a un'altra, esegui [replace-permission-association](https://docs.aws.amazon.com/cli/latest/reference/ram/replace-permission-associations.html). Se la versione di destinazione dichiara parametri, includi `--permission-template-parameters`. AWS RAM applica gli stessi valori a ogni condivisione di risorse che il comando aggiorna.

## Visualizza i parametri e i valori del modello
<a name="view-template-parameters"></a>

È possibile visualizzare i parametri dichiarati da un'autorizzazione gestita e i valori forniti dalle condivisioni di risorse.

**Visualizza i parametri dichiarati da un'autorizzazione gestita**  
Esegui il [ottenere il permesso](https://docs.aws.amazon.com/cli/latest/reference/ram/get-permission.html) comando. Il `permissionTemplateParameters` il campo elenca il nome, il tipo e la descrizione di ogni parametro. Nella console, la pagina dei dettagli delle autorizzazioni mostra le stesse informazioni.

**Visualizza i valori forniti da una condivisione di risorse**  
Esegui il [list-resource-share-permissions](https://docs.aws.amazon.com/cli/latest/reference/ram/list-resource-share-permissions.html) comando. Per ogni autorizzazione gestita parametrizzata associata, `permissionTemplateParameters` il campo include i valori forniti dalla condivisione delle risorse.  

```
$ aws ram list-resource-share-permissions \
    --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
{
    "permissions": [
        {
            "arn": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
            "version": "2",
            "defaultVersion": true,
            "name": "ParameterReadByTeam",
            "resourceType": "ssm:Parameter",
            "status": "ATTACHABLE",
            "creationTime": 1763400000.000,
            "lastUpdatedTime": 1763400000.000,
            "isResourceTypeDefault": false,
            "permissionType": "CUSTOMER_MANAGED",
            "featureSet": "STANDARD",
            "permissionTemplateParameters": [
                {
                    "name": "teams",
                    "values": ["payments"]
                },
                {
                    "name": "environment",
                    "values": ["prod"]
                }
            ]
        }
    ]
}
```
Il [list-permission-association](https://docs.aws.amazon.com/cli/latest/reference/ram/list-permission-associations.html) il comando restituisce anche i valori per le condivisioni di risorse che possiedi. Quando si elencano le condivisioni di risorse in altri Account AWS che utilizzano un'autorizzazione gestita dal cliente che hai condiviso, la risposta non include i relativi valori.

## Condivisione delle autorizzazioni gestite con parametri tra gli account
<a name="sharing-parameterized-permissions"></a>

È possibile condividere un'autorizzazione gestita con parametri con altri Account AWS come qualsiasi altra autorizzazione gestita dal cliente. Gli account riceventi possono vedere il nome, il tipo e la descrizione di ogni parametro, quindi scrivi descrizioni che indichino loro quale valore fornire. Ogni account ricevente fornisce i propri valori quando associa l'autorizzazione gestita condivisa alle proprie condivisioni di risorse.

Per istruzioni sulla condivisione delle autorizzazioni gestite dai clienti, consulta [Condivisione e utilizzo delle autorizzazioni gestite dal cliente tra gli account in AWS RAM](sharing-customer-managed-permissions.md).

## Controlla i valori dei parametri del modello con le politiche IAM
<a name="template-iam-condition-keys"></a>

Puoi usare `ram:PermissionTemplateParameter/{{parameter-name}}` chiave di condizione in una policy IAM per controllare quali valori un principale può fornire per un parametro. La chiave è multivalore e contiene i valori nella richiesta per il parametro indicato. È disponibile nella risorsa di autorizzazione per `ram:CreateResourceShare`, `ram:AssociateResourceSharePermission`, e `ram:ReplacePermissionAssociations` azioni.

Nel seguente esempio di politica, la prima dichiarazione concede le azioni sul `ParameterReadByTeam` autorizzazione gestita dal cliente. La seconda dichiarazione li nega se viene fornito un valore `teams` è qualcosa di diverso da `payments` o `analytics`. Poiché la chiave è multivalore, la policy utilizza `ForAnyValue` operatore set. AWS RAM richiede un valore per ogni parametro dichiarato, quindi una richiesta che utilizza questa autorizzazione gestita dal cliente include sempre la chiave.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ram:CreateResourceShare",
                "ram:AssociateResourceSharePermission",
                "ram:ReplacePermissionAssociations"
            ],
            "Resource": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam"
        },
        {
            "Effect": "Deny",
            "Action": [
                "ram:CreateResourceShare",
                "ram:AssociateResourceSharePermission",
                "ram:ReplacePermissionAssociations"
            ],
            "Resource": "arn:aws:ram:us-east-1:123456789012:permission/ParameterReadByTeam",
            "Condition": {
                "ForAnyValue:StringNotEquals": {
                    "ram:PermissionTemplateParameter/teams": [
                        "payments",
                        "analytics"
                    ]
                }
            }
        }
    ]
}
```

Queste dichiarazioni controllano solo la risorsa di autorizzazione. Il committente necessita inoltre dell'autorizzazione per le altre risorse incluse nella richiesta, ad esempio la condivisione delle risorse e le risorse che condivide. Per ulteriori esempi, consulta [Esempi di policy IAM per AWS RAM](security-iam-policies-examples.md).

## `STRING_LIST` esempi di parametri
<a name="template-stringlist-examples"></a>

Gli esempi seguenti mostrano come AWS RAM rende `STRING_LIST` parametri.

**Example A `LISTA_STRINGHE` parametro da solo in un valore di condizione**  
Modello:  

```
"Condition": {
    "StringEquals": {
        "aws:PrincipalTag/team": "@{teams}"
    }
}
```
Valori: `["payments", "analytics"]`  
Politica renderizzata:  

```
"Condition": {
    "StringEquals": {
        "aws:PrincipalTag/team": ["payments", "analytics"]
    }
}
```
Con un unico valore `["payments"]`, il valore renderizzato è la stringa `"payments"`.

**Example UN `LISTA_STRINGHE` parametro con testo circostante**  
AWS RAM combina ogni valore con il testo prima e dopo il parametro.  
Modello:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": "arn:aws:iam::@{accountIds}:role/ParameterReader"
    }
}
```
Valori: `["111122223333", "444455556666"]`  
Politica renderizzata:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::111122223333:role/ParameterReader",
            "arn:aws:iam::444455556666:role/ParameterReader"
        ]
    }
}
```

**Example A `LISTA_STRINGHE` parametro in una matrice di valori di condizione**  
AWS RAM esegue il rendering di ogni voce nell'array per ogni valore e rimuove i risultati duplicati.  
Modello:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::@{accountIds}:role/Auditor",
            "arn:aws:iam::@{accountIds}:role/Reader"
        ]
    }
}
```
Valori: `["111122223333", "444455556666"]`  
Politica renderizzata:  

```
"Condition": {
    "ArnLike": {
        "aws:PrincipalArn": [
            "arn:aws:iam::111122223333:role/Auditor",
            "arn:aws:iam::444455556666:role/Auditor",
            "arn:aws:iam::111122223333:role/Reader",
            "arn:aws:iam::444455556666:role/Reader"
        ]
    }
}
```