

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

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

In AWS, la rappresentazione tra servizi può verificarsi quando un servizio (il servizio *chiamante) chiama un altro servizio* (il servizio *chiamato*). Il servizio chiamante può essere manipolato per agire sulle risorse di un altro cliente, anche se non dovrebbe avere le autorizzazioni corrette, e ciò porta al problema del "confused deputy".

Per evitare che ciò accada, AWS mette a disposizione strumenti che consentono di proteggere i dati relativi a tutti i servizi con responsabili del servizio a cui è stato concesso l'accesso alle risorse dell'account. 

È consigliabile utilizzare le chiavi di contesto delle condizioni 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) e [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) nelle policy delle risorse per limitare le autorizzazioni con cui Amazon Rekognition fornisce un altro servizio alla risorsa. 

Se il valore di `aws:SourceArn` non contiene l'ID account, ad esempio un ARN di un bucket Amazon S3, è necessario utilizzare entrambe le chiavi per limitare le autorizzazioni. Se si utilizzano entrambe le chiavi e il valore `aws:SourceArn` contiene l'ID account, il valore `aws:SourceAccount` e l'account nel valore `aws:SourceArn` deve utilizzare lo stesso ID account nella stessa dichiarazione di policy. 

Utilizzare `aws:SourceArn` se si desidera consentire l’associazione di una sola risorsa all’accesso tra servizi. Utilizzare `aws:SourceAccount` se si desidera consentire l’associazione di qualsiasi risorsa in tale account all’uso tra servizi.

Il valore di `aws:SourceArn` deve essere l'ARN della risorsa utilizzata da Rekognition, che è specificata con il seguente formato: `arn:aws:rekognition:region:account:resource`.

Il valore di `arn:User ARN` dovrebbe essere l'ARN dell'utente che chiamerà l'operazione di analisi video (l'utente che assume un ruolo).

L'approccio consigliato per il problema "confused deputy" è quello di usare la chiave di contesto della condizione globale `aws:SourceArn` con l'ARN completo della risorsa. 

 Se non conosci l'ARN completo della risorsa o scegli più risorse, utilizza la chiave `aws:SourceArn` con caratteri jolly (`*`) per le parti sconosciute dell'ARN. Ad esempio, `arn:aws:rekognition:*:111122223333:*`. 

Per proteggersi dal problema "confused deputy", completa le seguenti fasi:

1. Nel pannello di navigazione della console IAM seleziona l'opzione **Ruoli**. La console visualizzerà i ruoli del tuo account attuale.

1. Seleziona il nome del ruolo che desideri modificare. Il ruolo che modifichi dovrebbe avere la politica delle **AmazonRekognitionServiceRole**autorizzazioni. Seleziona la scheda **Relazioni di attendibilità**.

1. Seleziona **Modifica policy di attendibilità**.

1. Nella pagina **Modifica policy di attendibilità**, sostituisci la policy JSON predefinita con una policy che utilizza una o entrambe le chiavi di contesto della condizione globale `aws:SourceArn` e `aws:SourceAccount`. Vedi le policy di esempio riportate di seguito.

1. Scegli **Aggiorna policy**.

Gli esempi seguenti contengono policy di attendibilità che mostrano il modo in cui puoi utilizzare le chiavi di contesto della condizione globale `aws:SourceArn` e `aws:SourceAccount` in Amazon Rekognition per prevenire il problema "confused deputy".

Se lavori con video archiviati e trasmessi in streaming, puoi utilizzare una policy come la seguente nel tuo ruolo IAM:

Se lavori esclusivamente con video archiviati, puoi utilizzare una policy come la seguente nel tuo ruolo IAM (tieni presente che non devi includere l'argomento `StringLike` che specifica il `streamprocessor`):