

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

# Autorizzazione AWS IoT per richiamare la funzione Lambda
<a name="custom-auth-authorize"></a>

In questa sezione, concederai l'autorizzazione della risorsa di autorizzazione personalizzata che hai appena creato per eseguire la funzione Lambda. Per concedere l'autorizzazione, è possibile utilizzare il comando dell'interfaccia a riga di comando [add-permission](https://docs.aws.amazon.com//cli/latest/reference/lambda/add-permission.html).

**Concedi l'autorizzazione alla tua funzione Lambda utilizzando AWS CLI**

1. Una volta inseriti i valori, inserisci il comando seguente. Attenzione: il valore `statement-id` deve essere univoco. Sostituisci `{{Id-1234}}` con il valore esatto che hai, altrimenti potresti ricevere un `ResourceConflictException` errore.

   ```
   aws lambda add-permission  \
   --function-name "custom-auth-function" \
   --principal "iot.amazonaws.com" \
   --action "lambda:InvokeFunction" \
   --statement-id "{{Id-1234}}" \
   --source-arn {{authorizerArn}}
   ```

1. Se il comando viene completato correttamente, restituisce un'istruzione di autorizzazione come questa. È possibile passare alla sezione successiva per testare l'autorizzazione ad hoc.

   ```
   {
       "Statement": "{\"Sid\":\"{{Id-1234}}\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"iot.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:{{Region}}:57EXAMPLE833:function:custom-auth-function\",\"Condition\":{\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:lambda:{{Region}}:57EXAMPLE833:function:custom-auth-function\"}}}"
   }
   ```

   Se il comando non ha esito positivo, restituisce un errore come questo. Dovrai esaminare e correggere l'errore prima di continuare.

   ```
   An error occurred (AccessDeniedException) when calling the AddPermission operation: User: arn:aws:iam::57EXAMPLE833:user/EXAMPLE-1 is not authorized to perform: lambda:AddPer
   mission on resource: arn:aws:lambda:{{Region}}:57EXAMPLE833:function:custom-auth-function
   ```