Prevenzione del problema "confused deputy" tra servizi - AWS CloudFormation

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. Nel frattempo AWS, l'impersonificazione tra diversi servizi può portare alla confusione del 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 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 del vostro account.

Ti consigliamo di utilizzare le chiavi di contesto aws:SourceArne aws:SourceAccountglobal condition nelle politiche delle risorse per limitare le autorizzazioni che CloudFormation forniscono un altro servizio a una risorsa specifica, ad esempio un' CloudFormation estensione. 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.

Assicurati che il valore di aws:SourceArn sia un ARN della risorsa archiviata. CloudFormation

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 si conosce l’ARN completo della risorsa o si scelgono più risorse, è necessario utilizzare la chiave di contesto della condizione globale aws:SourceArn con caratteri jolly (*) per le parti sconosciute dell’ARN. Ad esempio, arn:aws:cloudformation:*:123456789012:*.

Se il valore aws:SourceArnnon contiene l’ID account devi utilizzare entrambe le chiavi di contesto delle condizioni globali per limitare le autorizzazioni.

L'esempio seguente mostra come utilizzare le chiavi di contesto aws:SourceArn e aws:SourceAccount global condition CloudFormation per evitare il confuso problema del vice.

Esempio di policy di attendibilità che utilizza le chiavi di condizione aws:SourceArn e aws:SourceAccount

Per i servizi di registro, CloudFormation effettua chiamate a AWS Security Token Service (AWS STS) per assumere un ruolo di servizio nell'account. Questo ruolo è configurato per ExecutionRoleArn nell’operazione RegisterType e LogRoleArn impostato nell’operazione LoggingConfig. Per ulteriori informazioni, consulta Configura un ruolo di esecuzione con autorizzazioni IAM e una policy di fiducia per l’accesso alle estensioni pubbliche.

Questo esempio di politica di fiducia dei ruoli utilizza istruzioni condizionali per limitare la AssumeRole capacità del ruolo di servizio alle sole azioni sull' CloudFormation estensione specificata nell'account specificato. Le condizioni aws:SourceArn e aws:SourceAccount sono valutate in modo indipendente. Qualsiasi richiesta di utilizzare il ruolo di servizio deve soddisfare entrambe le condizioni.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "resources.cloudformation.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudformation:us-east-1:123456789012:type/resource/Organization-Service-Resource" } } } ] }

Informazioni aggiuntive

Ad esempio, le politiche che utilizzano aws:SourceArn le chiavi di contesto della condizione aws:SourceAccount globale per un ruolo di servizio utilizzato da StackSets, vedereConfigurazione di chiavi globali per mitigare i problemi di "confused deputy".

Per ulteriori informazioni, consulta Update a role trust policy nella Guida per l’utente IAM.