

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>

**Importante**  
Avviso di fine del supporto: i clienti esistenti potranno utilizzare Amazon QLDB fino alla fine del supporto, il 31/07/2025. Per ulteriori dettagli, consulta [Migrare un registro Amazon QLDB su Amazon Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/).

Con "confused deputy" si intende un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire una certa operazione può costringere un'entità con più privilegi a eseguire tale operazione. Inoltre AWS, l'impersonificazione tra diversi servizi può portare al confuso problema del vicesceriffo.

La rappresentazione tra servizi può verificarsi quando un servizio (il *servizio chiamante*) effettua una chiamata a un altro servizio (il *servizio chiamato*). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare il problema del «Confused Deputy», AWS fornisce strumenti che consentono di proteggere i dati relativi a tutti i servizi, con responsabili del servizio a cui è stato concesso l'accesso alle risorse del vostro account.

Consigliamo di utilizzare le chiavi di contesto [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)global condition nelle politiche delle risorse per limitare le autorizzazioni che Amazon QLDB fornisce a un altro servizio alla risorsa. Se utilizzi entrambe le chiavi di contesto della condizione globale, il `aws:SourceAccount` valore e l'account nel `aws:SourceArn` valore devono utilizzare lo stesso ID account quando vengono utilizzati nella stessa dichiarazione politica.

La tabella seguente elenca i valori possibili delle operazioni dell'API `aws:SourceArn` for [https://docs.aws.amazon.com/qldb/latest/developerguide/API_ExportJournalToS3.html](https://docs.aws.amazon.com/qldb/latest/developerguide/API_ExportJournalToS3.html)e [https://docs.aws.amazon.com/qldb/latest/developerguide/API_StreamJournalToKinesis.html](https://docs.aws.amazon.com/qldb/latest/developerguide/API_StreamJournalToKinesis.html)QLDB. Queste operazioni rientrano nell'ambito di questo problema di sicurezza perché chiamano AWS Security Token Service (AWS STS) per assumere un ruolo IAM specificato dall'utente.


****  

| Operazione API | Servizio chiamato | leggi: SourceArn | 
| --- | --- | --- | 
| ExportJournalToS3 | AWS STS ([https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)) |  Consente a QLDB di assumere il ruolo di qualsiasi risorsa QLDB nell'account: <pre>arn:aws:qldb:us-east-1:123456789012:*</pre> Attualmente, QLDB supporta solo questo ARN wildcard per le esportazioni di riviste.  | 
| StreamsJournalToKinesis | AWS STS ([https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)) |  Consente a QLDB di assumere il ruolo per uno specifico stream QLDB: <pre>arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/IiPT4brpZCqCq3f4MTHbYy</pre> **Nota:** è possibile specificare un ID di flusso nell'ARN solo dopo la creazione della risorsa di flusso. Utilizzando questo ARN, puoi consentire l'utilizzo del ruolo solo per un singolo flusso QLDB. Consente a QLDB di assumere il ruolo per qualsiasi flusso QLDB di un registro: <pre>arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/*</pre> Consente a QLDB di assumere il ruolo di qualsiasi stream QLDB nell'account: <pre>arn:aws:qldb:us-east-1:123456789012:stream/*</pre> Consente a QLDB di assumere il ruolo di qualsiasi risorsa QLDB nell'account: <pre>arn:aws:qldb:us-east-1:123456789012:*</pre>  | 

Il modo più efficace per proteggersi dal 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 se stai specificando più risorse, usa la chiave di condizione di contesto `aws:SourceArn` globale con caratteri jolly (`*`) per le parti sconosciute dell'ARN, ad esempio. `arn:aws:qldb:us-east-1:123456789012:*`

Il seguente esempio di politica di fiducia per un ruolo IAM mostra come utilizzare le chiavi di contesto `aws:SourceArn` e `aws:SourceAccount` global condition per evitare il confuso problema del vice. Con questa politica di attendibilità, QLDB può assumere il ruolo di qualsiasi flusso QLDB presente nell'account solo per il registro. `123456789012` `myExampleLedger`

Per utilizzare questa politica, sostituisci e*us-east-1*, *myExampleLedger* nell'esempio*123456789012*, con le tue informazioni.

```
{
  "Version": "2012-10-17",
  "Statement": {
    "Sid": "ConfusedDeputyPreventionExamplePolicy",
    "Effect": "Allow",
    "Principal": {
      "Service": "qldb.amazonaws.com"
    },
    "Action": [ "sts:AssumeRole" ],
    "Condition": {
      "ArnEquals": {
        "aws:SourceArn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/*"
      },
      "StringEquals": {
        "aws:SourceAccount": "123456789012"
      }
    }
  }
}
```