

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

# Politiche IAM per i registri delle conversazioni
<a name="conversation-logs-policies"></a>

A seconda del tipo di registrazione selezionato, Amazon Lex V2 richiede l'autorizzazione per utilizzare i bucket Amazon CloudWatch Logs e Amazon Simple Storage Service (S3) per archiviare i log. È necessario creare ruoli e autorizzazioni AWS Identity and Access Management per consentire ad Amazon Lex V2 di accedere a queste risorse. 

## Creazione di un ruolo IAM e delle policy per i log delle conversazioni
<a name="conversation-logs-role-and-policy"></a>

Per abilitare i log delle conversazioni, devi concedere l'autorizzazione di scrittura per CloudWatch Logs e Amazon S3. Se abiliti la crittografia degli oggetti per i tuoi oggetti S3, devi concedere l'autorizzazione di accesso alle AWS KMS chiavi utilizzate per crittografare gli oggetti. 

Puoi utilizzare la console IAM, l'API IAM o AWS Command Line Interface per creare il ruolo e le policy. Queste istruzioni utilizzano l'AWS CLI per creare il ruolo e le policy.

**Nota**  
Il codice seguente è formattato per Linux e MacOS. Per Windows, sostituire il carattere di continuazione della riga di Linux (\\) con un accento circonflesso (^).



**Per creare un ruolo IAM per i registri delle conversazioni**

1. Creare un documento nella directory corrente chiamato **LexConversationLogsAssumeRolePolicyDocument.json**, aggiungervi il seguente codice e salvarlo. Questo documento di policy aggiunge Amazon Lex V2 come entità affidabile al ruolo. Ciò consente ad Amazon Lex V2 di assumere il ruolo di fornire log alle risorse configurate per i log delle conversazioni.

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

****  

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

------

1. Nella CLI di AWS, esegui il comando seguente per creare il ruolo IAM per i log delle conversazioni.

   ```
   aws iam create-role \
       --role-name {{role-name}} \
       --assume-role-policy-document file://LexConversationLogsAssumeRolePolicyDocument.json
   ```

Successivamente, crea e allega una policy al ruolo che consenta ad Amazon Lex V2 di scrivere nei CloudWatch log. 

**Per creare una policy IAM per la registrazione del testo della conversazione in Logs CloudWatch**

1. Crea un documento nella directory corrente denominata**LexConversationLogsCloudWatchLogsPolicy.json**, aggiungi la seguente politica IAM e salvalo.

1. Nella CLI di AWS, crea la policy IAM che concede l'autorizzazione di scrittura al gruppo di CloudWatch log Logs.

   ```
   aws iam create-policy \
       --policy-name {{cloudwatch-policy-name}} \
       --policy-document file://LexConversationLogsCloudWatchLogsPolicy.json
   ```

1. Allega la policy al ruolo IAM che hai creato per i log delle conversazioni.

   ```
   aws iam attach-role-policy \
       --policy-arn arn:aws:iam::{{account-id}}:policy/{{cloudwatch-policy-name}} \
       --role-name {{role-name}}
   ```

Se stai registrando l'audio in un bucket S3, crea una policy che consenta ad Amazon Lex V2 di scrivere nel bucket.

**Per creare una policy IAM per la registrazione audio in un bucket S3**

1. Creare un documento nella directory corrente chiamato **LexConversationLogsS3Policy.json**, aggiungervi la seguente policy e salvarlo.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                 "s3:PutObject"
             ],
             "Resource": "arn:aws:s3:::{{bucket-name}}/*"
         }
     ]
   }
   ```

------

1. Nella CLI di AWS, crea la policy IAM che concede l'autorizzazione di scrittura al tuo bucket S3.

   ```
   aws iam create-policy \
       --policy-name {{s3-policy-name}} \
       --policy-document file://LexConversationLogsS3Policy.json
   ```

1. Collegare la policy al ruolo creato per i log delle conversazioni.

   ```
   aws iam attach-role-policy \
       --policy-arn arn:aws:iam::{{account-id}}:policy/{{s3-policy-name}} \
       --role-name {{role-name}}
   ```

## Concessione dell'autorizzazione a passare un ruolo IAM
<a name="conversation-logs-pass-role"></a>

Quando utilizzi la console AWS Command Line Interface, il o un SDK AWS per specificare un ruolo IAM da utilizzare per i log delle conversazioni, l'utente che specifica il ruolo IAM dei log di conversazione deve avere l'autorizzazione a passare il ruolo ad Amazon Lex V2. Per consentire all'utente di passare il ruolo ad Amazon Lex V2, devi concedere l'`PassRole`autorizzazione all'utente, al ruolo o al gruppo IAM dell'utente. 

La policy seguente definisce l'autorizzazione da concedere all'utente, al ruolo o al gruppo. È possibile utilizzare le chiavi di condizione `iam:AssociatedResourceArn` e `iam:PassedToService` per limitare l'ambito dell'autorizzazione. Per ulteriori informazioni, consulta [Garantire a un utente le autorizzazioni per passare un ruolo a un servizio AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html) e le [chiavi contestuali IAM and AWS STS Condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html) nella *AWS Identity and Access Management User Guide*.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::{{111122223333}}:role/{{role-name}}",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "lexv2.amazonaws.com"
                },
                "StringLike": {
                    "iam:AssociatedResourceARN": "arn:aws:lex:{{region}}:{{123456789012}}:bot:{{bot-name}}:{{bot-alias}}"
                }
            }
        }
    ]
}
```

------