AWS: nega l'accesso alle risorse Amazon S3 al di fuori del tuo account, tranne AWS Data Exchange
Questo esempio mostra come creare una policy basata sull'identità che neghi l'accesso a tutte le risorse in AWS che non appartengono al tuo account, ad eccezione delle risorse che AWS Data Exchange richiede per le normali operazioni. Per utilizzare questa policy, sostituisci il testo segnaposto in corsivo
nella policy di esempio con le tue informazioni. Quindi, segui le indicazioni fornite in Creazione di una policy o Modifica di una policy.
Puoi creare una policy simile per limitare l'accesso alle risorse all'interno di un'organizzazione o di un'unità organizzativa, tenendo conto delle risorse di proprietà di AWS Data Exchange utilizzando le chiavi di condizione aws:ResourceOrgPaths
e aws:ResourceOrgID
.
Se utilizzi AWS Data Exchange nel tuo ambiente, il servizio crea risorse, come i bucket Amazon S3 di proprietà dell'account del servizio, e interagisce con esse. Ad esempio, AWS Data Exchange invia richieste ai bucket Amazon S3 di proprietà del servizio AWS Data Exchange per conto del principale IAM (utente o ruolo) che richiama le API AWS Data Exchange. In tal caso, l'utilizzo di aws:ResourceAccount
, aws:ResourceOrgPaths
o aws:ResourceOrgID
in una policy senza tenere conto delle risorse di proprietà di AWS Data Exchange nega l'accesso ai bucket di proprietà dell'account del servizio.
-
L'istruzione
DenyAllAwsResourcesOutsideAccountExceptS3
utilizza l'elementoNotAction
con l'effetto Deny che nega esplicitamente l'accesso a tutte le operazioni non elencate nell'istruzione e che non appartengono all'account elencato. L'elementoNotAction
indica le eccezioni a questa istruzione. Queste operazioni sono l'eccezione a questa istruzione perché, se vengono eseguite su risorse create da AWS Data Exchange, la policy le nega. -
L'istruzione
DenyAllS3ResoucesOutsideAccountExceptDataExchange
utilizza una combinazione delle condizioniResourceAccount
eCalledVia
per negare l'accesso alle tre operazioni di Amazon S3 escluse nell'istruzione precedente. L'istruzione nega le operazioni se le risorse non appartengono all'account elencato e se il servizio chiamante non è AWS Data Exchange. L'istruzione non nega le operazioni se la risorsa appartiene all'account elencato o l'operazione viene eseguita dal principale del servizio elencato,dataexchange.amazonaws.com
.
Importante
Questa policy non consente alcuna operazione. Utilizza l'effetto Deny
, che neghi esplicitamente l'accesso a tutte le risorse elencate nell'istruzione che non appartengono all'account elencato. Utilizza questa policy in combinazione con altre policy che consentono l'accesso a risorse specifiche.
L'esempio seguente mostra come configurare la policy per consentire l'accesso ai bucket Amazon S3 richiesti.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllAwsReourcesOutsideAccountExceptAmazonS3", "Effect": "Deny", "NotAction": [ "s3:GetObject", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:ResourceAccount": [ "
111122223333
" ] } } }, { "Sid": "DenyAllS3ResourcesOutsideAccountExceptDataExchange", "Effect": "Deny", "Action": [ "s3:GetObject", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:ResourceAccount": [ "111122223333
" ] }, "ForAllValues:StringNotEquals": { "aws:CalledVia": [ "dataexchange.amazonaws.com" ] } } } ] }