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à.
Configurazione delle IAM politiche per l'utilizzo dei punti di accesso
I punti di accesso Amazon S3 supportano politiche di risorse AWS Identity and Access Management (IAM) che consentono di controllare l'uso del punto di accesso in base alla risorsa, all'utente o ad altre condizioni. Affinché un'applicazione o un utente possa accedere agli oggetti tramite un access point, sia l'access point che il bucket sottostante devono consentire la richiesta.
Importante
L'aggiunta di un punto di accesso S3 a un bucket non modifica il comportamento del bucket quando vi si accede direttamente tramite il nome del bucket o Amazon Resource Name (). ARN Tutte le operazioni esistenti inerenti il bucket continueranno a funzionare come prima. Le limitazioni incluse in una policy di access point si applicano solo alle richieste effettuate tramite quell'access point.
Quando utilizzi le policy relative alle IAM risorse, assicurati di risolvere gli avvisi di sicurezza, gli errori, gli avvisi generali e i suggerimenti relativi alla sicurezza prima di salvare la policy. AWS Identity and Access Management Access Analyzer IAMAccess Analyzer esegue controlli sulle policy per convalidare le policy in base alla grammatica e alle best IAM practice delle policy. Questi controlli generano risultati e forniscono suggerimenti per aiutarti a creare policy funzionali e conformi alle best practice per la sicurezza.
Per ulteriori informazioni sulla convalida delle policy utilizzando IAM Access Analyzer, consulta la sezione Convalida delle policy di IAM Access Analyzer nella Guida per l'utente. IAM Per visualizzare un elenco degli avvisi, degli errori e dei suggerimenti restituiti da IAM Access Analyzer, vedere IAM il riferimento per il controllo delle politiche di Access Analyzer.
Esempi di policy degli access point
Gli esempi seguenti mostrano come creare IAM politiche per controllare le richieste effettuate tramite un punto di accesso.
Nota
Le autorizzazioni concesse in una policy del punto di accesso sono valide solo se anche il bucket sottostante consente lo stesso accesso. Puoi farlo in due modi:
-
(Consigliato) Delega il controllo degli accessi dal bucket al punto di accesso come descritto in Delegazione del controllo di accesso agli access point.
-
Aggiungere le stesse autorizzazioni contenute nella policy del punto di accesso alla policy del bucket sottostante. Nel primo esempio di policy del punto di accesso viene illustrato come modificare la policy di bucket sottostante per consentire l'accesso necessario.
Esempio 1: Concessione della policy del punto di accesso
La seguente politica del punto di accesso concede IAM all'utente incluso
nell'account Jane
le autorizzazioni relative al punto di accesso 123456789012
GET
e PUT
agli oggetti con il prefisso Jane/
nell'account my-access-point
.123456789012
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Jane
" }, "Action": ["s3:GetObject", "s3:PutObject"], "Resource": "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
/object/Jane/
*" }] }
Nota
Affinché la politica dei punti di accesso garantisca efficacemente l'accesso a
, il bucket sottostante deve inoltre consentire lo stesso accesso a Jane
. È possibile delegare il controllo degli accessi dal bucket al punto di accesso come descritto in. Delegazione del controllo di accesso agli access point In alternativa, è possibile aggiungere la policy seguente al bucket sottostante per concedere le autorizzazioni necessarie a Jane. Si noti che la voce Jane
Resource
differisce tra le policy dell'access point e del bucket.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Jane
" }, "Action": ["s3:GetObject", "s3:PutObject"], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1
/Jane/
*" }] }
Esempio 2: Policy del punto di accesso con condizione di tag
La seguente politica del punto di accesso concede all'utente IAM
in conto Mateo
autorizzazioni agli 123456789012
GET
oggetti tramite il punto di accesso
nell'account my-access-point
che hanno la chiave tag 123456789012
impostato con un valore di dati
.finanza
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Principal" : { "AWS": "arn:aws:iam::
123456789012
:user/Mateo
" }, "Action":"s3:GetObject", "Resource" : "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
/object/*", "Condition" : { "StringEquals": { "s3:ExistingObjectTag/data
": "finance
" } } }] }
Esempio 3: Policy del punto di accesso che consente l'elenco dei bucket
La seguente politica sui punti di accesso consente IAM all'utente Arnav
di accedere all'account
autorizzazione a visualizzare gli oggetti contenuti nel bucket sottostante il punto di accesso 123456789012
nell'account my-access-point
.123456789012
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Arnav
" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
" }] }
Esempio 4: Policy di controllo dei servizi
La seguente politica di controllo del servizio richiede che tutti i nuovi punti di accesso vengano creati con un'origine di rete virtuale privata cloud (VPC). Con questa policy, gli utenti dell'organizzazione non possono creare nuovi access point accessibili da Internet.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "s3:CreateAccessPoint", "Resource": "*", "Condition": { "StringNotEquals": { "s3:AccessPointNetworkOrigin": "VPC" } } }] }
Esempio 5 — Policy Bucket per limitare le operazioni di S3 alle VPC origini della rete
La seguente policy sui bucket limita l'accesso a tutte le operazioni sugli oggetti S3 per il bucket
ai punti di accesso con un'origine di rete. VPCamzn-s3-demo-bucket
Importante
Prima di utilizzare un'istruzione come quella riportata nell'esempio, assicurati di non utilizzare funzionalità non supportate dai punti di accesso, come la replica tra regioni.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": "*", "Action": [ "s3:AbortMultipartUpload", "s3:BypassGovernanceRetention", "s3:DeleteObject", "s3:DeleteObjectTagging", "s3:DeleteObjectVersion", "s3:DeleteObjectVersionTagging", "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectLegalHold", "s3:GetObjectRetention", "s3:GetObjectTagging", "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectLegalHold", "s3:PutObjectRetention", "s3:PutObjectTagging", "s3:PutObjectVersionAcl", "s3:PutObjectVersionTagging", "s3:RestoreObject" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/*", "Condition": { "StringNotEquals": { "s3:AccessPointNetworkOrigin": "VPC" } } } ] }
Chiavi di condizione
I punti di accesso S3 dispongono di chiavi di condizione che puoi utilizzare nelle IAM politiche per controllare l'accesso alle tue risorse. Le seguenti chiavi di condizione rappresentano solo una parte di una IAM politica. Per esempi completi di policy, consulta Esempi di policy degli access point, Delegazione del controllo di accesso agli access point e Concessione delle autorizzazioni per i punti di accesso multi-account.
s3:DataAccessPointArn
-
Questo esempio mostra una stringa che è possibile utilizzare per la corrispondenza su un punto di accessoARN. L'esempio seguente corrisponde a tutti i punti di accesso per Account AWS
nella regione123456789012
:us-west-2
"Condition" : { "StringLike": { "s3:DataAccessPointArn": "arn:aws:s3:
us-west-2
:123456789012
:accesspoint/*" } } s3:DataAccessPointAccount
-
Questo esempio mostra un operatore stringa che è possibile utilizzare per la corrispondenza dell'ID account del proprietario di un punto di accesso. L'esempio seguente corrisponde a tutti i punti di accesso di proprietà di Account AWS
.123456789012
"Condition" : { "StringEquals": { "s3:DataAccessPointAccount": "
123456789012
" } } s3:AccessPointNetworkOrigin
-
Questo esempio mostra un operatore stringa che è possibile utilizzare per la corrispondenza dell'origine di rete,
Internet
oVPC
. L'esempio seguente corrisponde solo ai punti di accesso con un'VPCorigine."Condition" : { "StringEquals": { "s3:AccessPointNetworkOrigin": "VPC" } }
Per ulteriori informazioni sull'utilizzo delle chiavi di condizione con Amazon S3, consulta Azioni, risorse e chiavi di condizione per Amazon S3 nel Service Authorization Reference.
Per ulteriori informazioni sulle autorizzazioni alle API operazioni S3 in base ai tipi di risorse S3, consulta. Autorizzazioni richieste per le operazioni di Amazon API S3
Delegazione del controllo di accesso agli access point
È possibile delegare il controllo degli accessi per un bucket agli access point del bucket. La policy di bucket di esempio seguente consente l'accesso completo a tutti i punti di accesso dell'account del proprietario del bucket. Pertanto, tutto l'accesso a questo bucket è controllato dalle policy associate agli access point. Si consiglia di configurare i bucket in questo modo per tutti i casi d'uso che non richiedono l'accesso diretto al bucket.
Esempio 6: Policy di bucket che delega il controllo degli accessi ai punti di accesso
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : "*", "Resource" : [ "
Bucket ARN
", "Bucket ARN
/*"], "Condition": { "StringEquals" : { "s3:DataAccessPointAccount" : "Bucket owner's account ID
" } } }] }
Concessione delle autorizzazioni per i punti di accesso multi-account
Per creare un punto di accesso a un bucket di proprietà di un altro account, devi prima creare il punto di accesso specificando il nome del bucket e l'ID del proprietario dell'account. Il proprietario del bucket deve quindi aggiornare la policy di bucket per autorizzare le richieste dal punto di accesso. La creazione di un punto di accesso è simile alla creazione di un punto di accesso DNS CNAME in quanto il punto di accesso non fornisce l'accesso al contenuto del bucket. Tutti gli accessi ai bucket sono controllati dalla policy di bucket. La policy di bucket di esempio consente di eseguire richieste GET
e LIST
sul bucket da un punto di accesso di proprietà di un Account AWS attendibile.
Replace (Sostituisci) Bucket ARN
con il coperchio ARN del secchio.
Esempio 7 — La politica di Bucket prevede la delega delle autorizzazioni a un altro Account AWS
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : ["s3:GetObject","s3:ListBucket"], "Resource" : [ "
Bucket ARN
", "Bucket ARN
/*"], "Condition": { "StringEquals" : { "s3:DataAccessPointAccount" : "Access point owner's account ID
" } } }] }