View a markdown version of this page

Cross-service prevenzione sostitutiva confusa - AWS CodeBuild

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

Cross-service prevenzione sostitutiva confusa

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 AWS, l'impersonificazione tra servizi può portare al confuso problema del vice. Cross-service l'imitazione può avvenire quando un servizio (il servizio chiamante) chiama 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 poterti a proteggere i tuoi dati per tutti i servizi con entità di servizio a cui è stato concesso l’accesso alle risorse del tuo account.

Si consiglia di utilizzare aws:SourceArn le chiavi di contesto della condizione aws:SourceAccount globale nelle politiche delle risorse per limitare le autorizzazioni che AWS CodeBuild forniscono un altro servizio alla risorsa. 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 modo più efficace per proteggersi dal problema “confused deputy” è quello di utilizzare 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, utilizzare la chiave di contesto della condizione globale aws:SourceArn con caratteri jolly (*) per le parti sconosciute dell’ARN. Ad esempio, arn:aws:codebuild:*:123456789012:*.

Se il valore aws:SourceArn non contiene l’ID account, ad esempio un ARN di un bucket Amazon S3, è necessario utilizzare entrambe le chiavi di contesto delle condizioni globali per limitare le autorizzazioni.

Il valore di aws:SourceArn deve essere l'ARN del CodeBuild progetto.

L'esempio seguente mostra come è possibile utilizzare le aws:SourceArn chiavi di contesto della condizione aws:SourceAccount globale CodeBuild per evitare il confuso problema sostitutivo.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "codebuild.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:codebuild:us-east-1:111122223333:project/MyProject" } } } ] }