View a markdown version of this page

Cross-service confusa prevenzione sostitutiva - Amazon Aurora DSQL

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 confusa prevenzione sostitutiva

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 intersettoriale può portare al confuso problema del vicesceriffo. Cross-service l'impersonificazione può verificarsi 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.

Consigliamo di utilizzare le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount nelle policy delle risorse per limitare le autorizzazioni con cui Amazon Aurora DSQL fornisce 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:dsql:*: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 della risorsa Aurora DSQL per cui il ruolo del servizio agisce per conto.

L’esempio seguente mostra il modo in cui puoi utilizzare le chiavi di contesto delle condizioni globali aws:SourceArn e aws:SourceAccount in Aurora DSQL per prevenire il problema confused deputy.

JSON
{ "Version":"2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "backup.amazonaws.com" }, "Action": "dsql:GetCluster", "Resource": [ "arn:aws:dsql:*:123456789012:cluster/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:backup:*:123456789012:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }

Ruolo del servizio di streaming CDC

I flussi di Change Data Capture (CDC) richiedono un ruolo di servizio IAM che Aurora DSQL assume per scrivere i record CDC sulla destinazione. Quando crei questo ruolo, utilizza aws:SourceAccount e aws:SourceArn condiziona la policy di fiducia per garantire che solo i flussi CDC del tuo account possano assumere il ruolo.

aws:SourceArnImposta sul pattern ARN dello stream per il cluster che utilizza il ruolo. Poiché Aurora DSQL non ha assegnato l'identificatore di flusso quando crei lo stream, usa un wildcard per la parte relativa allo stream dell'ARN:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DSQLAssumeRole", "Effect": "Allow", "Principal": { "Service": "dsql.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "your-account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:dsql:region:your-account-id:cluster/cluster-id/stream/*" } } } ] }

Dopo aver creato uno stream, puoi passare aws:SourceArn allo stream ARN esatto se il ruolo serve un singolo flusso. Per una spiegazione completa della politica di fiducia e della politica di autorizzazione per i ruoli del servizio CDC, consulta. Configurazione di IAM