Prevenzione del problema "confused deputy" tra servizi - Amazon Relational Database Service

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

Il problema confused deputy è un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire un'azione può costringere un'entità maggiormente privilegiata a eseguire l'azione. In AWS, la rappresentazione cross-service può comportare il problema confused deputy.

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 ciò, AWS fornisce strumenti per aiutarti a proteggere i tuoi dati per tutti i servizi con entità di servizio a cui è stato concesso l'accesso alle risorse del tuo account. Per ulteriori informazioni, consultare Problema del "confused deputy" nella Guida per l'utente di IAM.

Per limitare le autorizzazioni alle risorse che Amazon RDS fornisce a un altro servizio per una risorsa specifica, si consiglia di utilizzare le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount nelle policy delle risorse.

In alcuni casi, il valore aws:SourceArn non contiene l'ID dell'account, ad esempio quando utilizzi Amazon Resource Name (ARN) per un bucket Simple Storage Service (Amazon S3). In questi casi, assicurati di utilizzare entrambe le chiavi di contesto delle condizioni globali per limitare le autorizzazioni. In alcuni casi, si utilizzano le chiavi di contesto delle condizioni globali e il valore aws:SourceArn contiene l'ID dell'account. In questi casi, assicurati che il valore aws:SourceAccount e l'account in aws:SourceArn utilizzano lo stesso ID dell'account quando vengono utilizzati nella stessa dichiarazione di policy. Utilizza aws:SourceArn se desideri consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizza aws:SourceAccount se desideri consentire l'associazione di qualsiasi nell'account AWS specificato all'uso tra servizi.

Assicurati che il valore di aws:SourceArn sia un ARN per un tipo di risorsa Amazon RDS. Per ulteriori informazioni, consultare Nomi di risorse Amazon (ARNs) in Amazon RDS.

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. In alcuni casi, potresti non conoscere l'ARN completo della risorsa o potresti specificare più risorse. In questi casi, utilizza la chiave di contesto delle condizioni globali aws:SourceArn con caratteri jolly (*) per le parti sconosciute dell'ARN. Un esempio è arn:aws:rds:*:123456789012:*.

L'esempio seguente mostra il modo in cui puoi utilizzare le chiavi di contesto aws:SourceArn e aws:SourceAccount delle condizioni globali in Amazon RDS per prevenire il problema “confused deputy”.

{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:rds:us-east-1:123456789012:db:mydbinstance" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }

Per altri esempi di policy che utilizzano le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount, consulta le sezioni seguenti: