View a markdown version of this page

Utilizzo di chiavi di condizione IAM con Amazon Aurora DSQL - 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à.

Utilizzo di chiavi di condizione IAM con Amazon Aurora DSQL

L'Conditionelemento (o Condition blocco) specifica le condizioni in base alle quali una dichiarazione politica è effettiva. Si creano espressioni condizionali utilizzando operatori di condizione come StringEquals o StringLike per abbinare le chiavi della policy ai valori della richiesta. Le chiavi di condizione sono diverse dall'ambito ARN delle risorse, che limita le azioni a risorse specifiche che utilizzano l'elemento. Resource

Amazon Aurora DSQL supporta sia le chiavi di condizione specifiche del servizio che le chiavi di condizione globali. AWS Puoi utilizzare queste chiavi per definire le condizioni in base alle quali si applicano le dichiarazioni delle politiche IAM. Per ulteriori informazioni sulle chiavi di condizione AWS globali, consulta le chiavi di contesto delle condizioni AWS globali nella Guida per l'utente IAM.

Chiavi di condizione disponibili per Amazon Aurora DSQL

Amazon Aurora DSQL supporta le chiavi dsql:WitnessRegion di condizione specifiche del servizio e. dsql:FisActionId dsql:FisTargetArns Puoi anche utilizzare chiavi di condizione AWS globali come,, eaws:RequestTag. aws:ResourceTag aws:TagKeys Per un elenco completo delle azioni, delle chiavi di condizione e delle risorse di Amazon Aurora DSQL che puoi specificare nelle policy, consulta Azioni, risorse e chiavi di condizione per Amazon Aurora DSQL nel Service Authorization Reference.

Esempio: limita la regione di riferimento per i cluster multiregionali

La seguente politica utilizza la chiave dsql:WitnessRegion condizionale per limitare la creazione di cluster multiregionali ai casi in cui la regione testimone è Stati Uniti occidentali (Oregon). Senza questa condizione, è possibile specificare qualsiasi regione come regione testimone.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowCreateWithSpecificWitness", "Effect": "Allow", "Action": [ "dsql:CreateCluster", "dsql:PutWitnessRegion" ], "Resource": "arn:aws:dsql:*:123456789012:cluster/*", "Condition": { "StringEquals": { "dsql:WitnessRegion": "us-west-2" } } }, { "Sid": "AllowMultiRegionSetup", "Effect": "Allow", "Action": [ "dsql:PutMultiRegionProperties", "dsql:AddPeerCluster" ], "Resource": "arn:aws:dsql:*:123456789012:cluster/*" } ] }

La prima dichiarazione applica la dsql:WitnessRegion condizione alle azioni che la supportano (dsql:CreateClusteredsql:PutWitnessRegion). La seconda istruzione concede dsql:PutMultiRegionProperties e dsql:AddPeerCluster senza la condizione, poiché la chiave della dsql:WitnessRegion condizione si applica solo a dsql:CreateCluster edsql:PutWitnessRegion.

Esempio: richiedi tag durante la creazione di cluster

La seguente policy utilizza le chiavi di aws:TagKeys condizione aws:RequestTag e per richiedere un Environment tag quando si creano cluster.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowCreateWithRequiredTag", "Effect": "Allow", "Action": "dsql:CreateCluster", "Resource": "arn:aws:dsql:*:123456789012:cluster/*", "Condition": { "StringEquals": { "aws:RequestTag/Environment": [ "production", "staging", "development" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "Environment", "Owner" ] } } } ] }

Questa policy utilizza due chiavi di condizione insieme. La aws:RequestTag/Environment condizione richiede che il Environment tag abbia uno dei valori consentiti. La aws:TagKeys condizione con l'operatore ForAllValues set garantisce che la richiesta includa solo le chiavi Environment e Owner tag.

Esempio: limita l'iniezione di errori a cluster specifici

La politica seguente utilizza le chiavi di dsql:FisTargetArns condizione dsql:FisActionId e per limitare l'iniezione di AWS FIS errori a un'azione e a un cluster di destinazione specifici.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowSpecificFaultInjection", "Effect": "Allow", "Action": "dsql:InjectError", "Resource": "*", "Condition": { "StringEquals": { "dsql:FisActionId": "aws:dsql:cluster-connection-failure" }, "ForAllValues:ArnLike": { "dsql:FisTargetArns": "arn:aws:dsql:us-east-1:123456789012:cluster/*" } } } ] }

La dsql:FisActionId condizione limita le azioni di iniezione dei guasti che è possibile eseguire. La dsql:FisTargetArns condizione utilizza l'operatore ForAllValues set e l'ArnLikeoperatore. Insieme, assicurano che ogni ARN del cluster nella richiesta corrisponda al modello consentito. Ciò blocca qualsiasi richiesta che includa ARN del cluster al di fuori dell'ambito previsto.