

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

# Aggiungi le autorizzazioni richieste da utilizzare AWS Lambda con Ground Truth
<a name="sms-custom-templates-step3-lambda-permissions"></a>

**Nota**  
Amazon SageMaker Ground Truth non è più aperto a nuovi clienti. I clienti esistenti possono continuare a utilizzare il servizio normalmente. AWS continua a investire in miglioramenti della sicurezza e della disponibilità di Ground Truth, ma non prevediamo di introdurre nuove funzionalità.

Potrebbe essere necessario configurare alcuni o tutti i seguenti elementi per creare e utilizzare AWS Lambda con Ground Truth. 
+ È necessario concedere a un ruolo o utente IAM (collettivamente, un'entità IAM) l'autorizzazione per creare le funzioni Lambda di pre-annotazione e post-annotazione utilizzando AWS Lambda e sceglierle durante la creazione del processo di etichettatura. 
+ Il ruolo di esecuzione IAM specificato al momento della configurazione del processo di etichettatura richiede l'autorizzazione per richiamare le funzioni Lambda di pre-annotazione e post-annotazione. 
+ Le funzioni Lambda post-annotazione potrebbero richiedere un'autorizzazione per accedere ad Amazon S3.

Utilizza le seguenti sezioni per scoprire come creare le entità IAM e concedere le autorizzazioni sopra descritte.

**Topics**
+ [Concedi il permesso di creare e selezionare un AWS Lambda Funzione](#sms-custom-templates-step3-postlambda-create-perms)
+ [Concedi il permesso di invocare il ruolo di esecuzione IAM AWS Lambda Funzioni](#sms-custom-templates-step3-postlambda-execution-role-perms)
+ [Concedi a Post-Annotation Lambda le autorizzazioni per accedere alle annotazioni](#sms-custom-templates-step3-postlambda-perms)

## Concedi il permesso di creare e selezionare un AWS Lambda Funzione
<a name="sms-custom-templates-step3-postlambda-create-perms"></a>

Se non hai bisogno di autorizzazioni granulari per sviluppare funzioni Lambda di pre-annotazione e post-annotazione, puoi allegare la policy AWS gestita a un utente o a un ruolo. `AWSLambda_FullAccess` Questa policy concede ampie autorizzazioni per utilizzare tutte le funzionalità di Lambda, nonché l'autorizzazione per eseguire azioni in altri servizi con cui Lambda interagisce. AWS 

Per creare una policy più granulare per i casi d'uso sensibili alla sicurezza, consulta la documentazione sulle politiche [ Identity-based IAM per Lambda ](https://docs.aws.amazon.com/lambda/latest/dg/access-control-identity-based.html) nella Guida per gli AWS Lambda sviluppatori per scoprire come creare una policy IAM adatta al tuo caso d'uso. 

**Policy per l'utilizzo della console Lambda**

Se desideri concedere a un'entità IAM l'autorizzazione a utilizzare la console Lambda, consulta Using the Lambda console nella [ Developer Guide. ](https://docs.aws.amazon.com/lambda/latest/dg/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-console) AWS Lambda 

Inoltre, se desideri che l'utente sia in grado di accedere e distribuire le funzioni iniziali di pre-annotazione e post-annotazione di Ground Truth utilizzando la AWS Serverless Application Repository console Lambda, devi specificare {{`<aws-region>`}} dove desideri distribuire le funzioni (dovrebbe essere la stessa AWS regione utilizzata per creare il lavoro di etichettatura) e aggiungere la seguente policy al ruolo IAM.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "serverlessrepo:ListApplicationVersions",
                "serverlessrepo:GetApplication",
                "serverlessrepo:CreateCloudFormationTemplate"
            ],
            "Resource": "arn:aws:serverlessrepo:{{us-east-1}}:838997950401:applications/aws-sagemaker-ground-truth-recipe"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "serverlessrepo:SearchApplications",
            "Resource": "*"
        }
    ]
}
```

------

**Policy per visualizzare le funzioni Lambda nella console Ground Truth**

Per concedere a un'entità IAM l'autorizzazione a visualizzare le funzioni Lambda nella console Ground Truth quando l'utente crea un processo di etichettatura personalizzato, l'entità deve disporre delle autorizzazioni descritte in [Concedi a IAM il permesso di utilizzare la console Amazon SageMaker Ground Truth](sms-security-permission-console-access.md), incluse le autorizzazioni descritte nella sezione [Autorizzazioni personalizzate per il flusso di lavoro di etichettatura](sms-security-permission-console-access.md#sms-security-permissions-custom-workflow).

## Concedi il permesso di invocare il ruolo di esecuzione IAM AWS Lambda Funzioni
<a name="sms-custom-templates-step3-postlambda-execution-role-perms"></a>

Se aggiungi la policy gestita da IAM [ AmazonSageMakerGroundTruthExecution ](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution) al ruolo di esecuzione IAM utilizzato per creare il job di etichettatura, questo ruolo ha il permesso di elencare e richiamare le funzioni Lambda con una delle seguenti stringhe nel nome della funzione:`GtRecipe`,,`SageMaker`, `Sagemaker` o. `sagemaker` `LabelingFunction` 

Se i nomi delle funzioni Lambda di pre-annotazione o post-annotazione non includono uno dei termini del paragrafo precedente o se è necessaria un'autorizzazione più granulare rispetto a quelle della policy gestita `AmazonSageMakerGroundTruthExecution`, puoi aggiungere una policy simile alla seguente per concedere l'autorizzazione al ruolo di esecuzione per richiamare le funzioni di pre-annotazione e post-annotazione.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "lambda:InvokeFunction",
            "Resource": [
                "arn:aws:lambda:{{us-east-1}}:{{111122223333}}:function:{{<pre-annotation-lambda-name>}}",
                "arn:aws:lambda:{{us-east-1}}:{{111122223333:}}function:{{<post-annotation-lambda-name>}}"
            ]
        }
    ]
}
```

------

## Concedi a Post-Annotation Lambda le autorizzazioni per accedere alle annotazioni
<a name="sms-custom-templates-step3-postlambda-perms"></a>

Come descritto in [Post-annotation Lambda](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-postlambda), la richiesta Lambda post-annotazione include la posizione dei dati di annotazione in Amazon S3. Questa posizione è identificata dalla stringa `s3Uri` nell'oggetto `payload`. Per elaborare le annotazioni quando arrivano, anche per una semplice funzione passthrough, è necessario assegnare le autorizzazione necessarie al [ruolo di esecuzione della Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) post-annotazione per leggere i file da Amazon S3.

Sono molti i modi per configurare il proprio Lambda ai fini dell’accesso ai dati di annotazione in Amazon S3. Due modi comuni sono i seguenti:
+ Consenti al ruolo di esecuzione Lambda di assumere il ruolo di esecuzione SageMaker AI identificato `roleArn` nella richiesta Lambda successiva all'annotazione. Questo ruolo di esecuzione SageMaker AI è quello utilizzato per creare il processo di etichettatura e ha accesso al bucket di output di Amazon S3 in cui sono archiviati i dati di annotazione.
+ Concedi al ruolo di esecuzione Lambda l'autorizzazione ad accedere direttamente al bucket di output Amazon S3.

Utilizza le seguenti sezioni per avere ulteriori informazioni sul modo per configurare queste opzioni. 

**Concedi a Lambda l'autorizzazione ad assumere il ruolo di esecuzione dell'IA SageMaker **

Per consentire a una funzione Lambda di assumere un ruolo di esecuzione SageMaker AI, devi allegare una policy al ruolo di esecuzione della funzione Lambda e modificare la relazione di fiducia del ruolo di esecuzione SageMaker AI per consentire a Lambda di assumerlo.

1. [Allega la seguente policy IAM ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) al ruolo di esecuzione della tua funzione Lambda per assumere il ruolo di esecuzione SageMaker AI identificato in. `Resource` Sostituisci `{{222222222222}}` con un [ID di account AWS](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html). Sostituisci `{{sm-execution-role}}` con il nome del ruolo assunto.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": {
           "Effect": "Allow",
           "Action": "sts:AssumeRole",
           "Resource": "arn:aws:iam::{{222222222222}}:role/{{sm-execution-role}}"
       }
   }
   ```

------

1. [Modifica la politica ](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-managingrole_edit-trust-policy) di fiducia del ruolo di esecuzione dell' SageMaker IA per includere quanto segue`Statement`. Sostituisci `{{222222222222}}` con un [ID di account AWS](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html). Sostituisci `{{my-lambda-execution-role}}` con il nome del ruolo assunto.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::{{222222222222}}:role/{{my-lambda-execution-role}}"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

**Concedi a Lambda l'autorizzazione al ruolo di esecuzione per accedere ad Amazon S3**

Puoi aggiungere una policy simile alla seguente al ruolo di esecuzione della funzione Lambda post-annotazione per assegnarle i permessi di lettura S3. Sostituisci {{amzn-s3-demo-bucket}} con il nome del bucket di output specificato quando crei un processo di etichettatura.

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

****  

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

------

Per aggiungere autorizzazioni di lettura S3 a un ruolo di esecuzione Lambda nella console Lambda, segui la seguente procedura. 

**Aggiungi le autorizzazioni di lettura S3 alla Lambda post-annotazione:**

1. Apri la [pagina **Funzioni**](https://console.aws.amazon.com/lambda/home#/functions) nella console Lambda.

1. Scegli il nome della funzione di post-annotazione.

1. Scegliere **Configuration (Configurazione)**, quindi **Permissions (Autorizzazioni)**.

1. Seleziona il **Nome del ruolo** e la pagina di riepilogo per quel ruolo si apre nella console IAM in una nuova scheda. 

1. Seleziona **Collega policy**.

1. Esegui una delle seguenti operazioni:
   + Cerca e seleziona **`AmazonS3ReadOnlyAccess`** per fornire alla funzione l'autorizzazione a leggere tutti i bucket e gli oggetti nell'account. 
   + Se hai bisogno di autorizzazioni più granulari, seleziona **Crea policy** e usa l'esempio di policy nella sezione precedente per creare una policy. Tieni presente che è necessario tornare alla pagina di riepilogo del ruolo di esecuzione dopo aver creato la policy.

1. Se hai utilizzato la policy gestita `AmazonS3ReadOnlyAccess`, seleziona **Collega policy**. 

   Se hai creato una nuova policy, torna alla pagina di riepilogo del ruolo di esecuzione Lambda e collega la policy appena creata.