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à.
Risolvi i problemi relativi all'accesso negato (403 Forbidden) errori in Amazon S3
Gli errori di accesso negato (HTTP403 Forbidden
) compaiono quando nega in AWS modo esplicito o implicito una richiesta di autorizzazione.
-
Un rifiuto esplicito si verifica quando una politica contiene una
Deny
dichiarazione per l'azione specifica. AWS -
Un diniego implicito si verifica quando non è presente un'istruzione
Deny
applicabile e non è presente neppure un'istruzioneAllow
applicabile.
Poiché una politica AWS Identity and Access Management (IAM) nega implicitamente un IAM principio per impostazione predefinita, la politica deve consentire esplicitamente al principale di eseguire un'azione. In caso contrario, la policy nega implicitamente l'accesso. Per ulteriori informazioni, consulta La differenza tra negazioni esplicite e implicite nella Guida per l'utente. IAM Per informazioni sulla logica di valutazione delle politiche che determina se una richiesta di accesso è consentita o negata, vedere Logica di valutazione delle politiche nella Guida per l'IAMutente.
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
I seguenti argomenti trattano le cause più comuni degli errori di accesso negato in Amazon S3.
Nota
Per gli errori di accesso negato (HTTP403 Forbidden
), Amazon S3 non addebita alcun costo al proprietario del bucket quando la richiesta viene avviata al di fuori dell' AWS account individuale del proprietario del bucket o dell'organizzazione del proprietario del bucket. AWS
Argomenti
- Accedi agli esempi di messaggi negati e scopri come risolverli
- Politiche e politiche di Bucket IAM
- Impostazioni Amazon S3 ACL
- Impostazioni dell'opzione S3 Blocco dell'accesso pubblico
- Impostazioni della crittografia Amazon S3
- Impostazioni dell'opzione S3 Blocco oggetti
- VPCpolitiche degli endpoint
- AWS Organizations politiche
- Impostazioni del punto di accesso
Nota
Se stai cercando di risolvere un problema di autorizzazioni, inizia dalla sezione, quindi vai alla Accedi agli esempi di messaggi negati e scopri come risolverli sezione. Politiche e politiche di Bucket IAM Assicurati inoltre di seguire le indicazioni contenute in. Suggerimenti per la verifica delle autorizzazioni
Accedi agli esempi di messaggi negati e scopri come risolverli
Amazon S3 ora include un contesto aggiuntivo negli errori di accesso negato (HTTP403
Forbidden
) per le richieste effettuate alle risorse all'interno dello stesso. Account AWS Questo nuovo contesto include il tipo di policy che ha negato l'accesso, il motivo del rifiuto e le informazioni sull'IAMutente o sul ruolo che ha richiesto l'accesso alla risorsa.
Questo contesto aggiuntivo consente di risolvere i problemi di accesso, identificare la causa principale degli errori di accesso negato e correggere i controlli di accesso errati aggiornando le politiche pertinenti. Questo contesto aggiuntivo è disponibile anche nei AWS CloudTrail log. I messaggi di errore con accesso negato avanzato per le richieste relative allo stesso account sono ora disponibili in tutte le Regioni AWS regioni, incluse quelle AWS GovCloud (US) Regions cinesi.
Per la maggior parte, i messaggi di errore di accesso negato sono visualizzati nel formato User
. In questo esempio: user-arn
is not authorized to perform
action
on "resource-arn
"
because context
è l'Amazon Resource Name (ARN) dell'utente che non riceve l'accesso, user-arn
è l'azione di servizio negata dalla policy, e action
è la risorsa su ARN cui agisce la politica. Il resource-arn
questo campo rappresenta un contesto aggiuntivo sul tipo di policy che spiega perché la policy ha negato l'accesso.context
Quando una policy nega esplicitamente l'accesso perché contiene una Deny
dichiarazione, il messaggio di errore di accesso negato include la frase. with an
explicit deny in a
Quando la politica nega implicitamente l'accesso, il messaggio di errore di accesso negato include la frase. type
policybecause no
type
policy allows the
action
action
Importante
-
I messaggi di accesso negato avanzato vengono restituiti solo per le richieste relative allo stesso account. Le richieste tra account restituiscono un messaggio generico.
Access Denied
Per informazioni sulla logica di valutazione delle politiche che determina se una richiesta di accesso tra account è consentita o negata, consulta Logica di valutazione delle politiche tra account nella Guida per l'IAMutente. Per una procedura dettagliata che mostra come concedere l'accesso a più account, consulta. Esempio 2: il proprietario del bucket concede autorizzazioni per il bucket multiaccount
-
I messaggi di errore Enhanced Access Denied non vengono restituiti per le richieste effettuate ai bucket di directory. Le richieste di directory bucket restituiscono un messaggio generico
Access Denied
. -
Se più policy dello stesso tipo di policy negano una richiesta di autorizzazione, il messaggio di errore di accesso negato non specifica il numero di policy.
-
Se più tipi di policy negano una richiesta di autorizzazione, il messaggio di errore include solo uno di questi tipi di policy.
-
Se una richiesta di accesso viene rifiutata per diversi motivi, il messaggio di errore include solo uno dei motivi del rifiuto.
Gli esempi seguenti mostrano il formato dei diversi tipi di messaggi di errore di accesso negato e come risolvere ogni tipo di messaggio.
Accesso negato a causa di una politica di controllo delle risorse: rifiuto esplicito
-
Cerca una
Deny
dichiarazione relativa all'azione nelle tue politiche di controllo delle risorse ()RCPs. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la tua RCP rimuovendo la
Deny
dichiarazione. Per ulteriori informazioni, consulta Aggiornare una politica di controllo delle risorse (RCP) nella Guida AWS Organizations per l'utente.
An error occurred (AccessDenied) when calling the GetObject operation: User: arn:aws:iam::
777788889999
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in a resource control policy
Accesso negato a causa di una policy di controllo dei servizi: diniego implicito
-
Verifica la presenza di un'
Allow
istruzione mancante relativa all'azione nelle tue politiche di controllo del servizio (SCPs). Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna il tuo SCP aggiungendo la
Allow
dichiarazione. Per ulteriori informazioni, consulta la sezione Aggiornamento di un SCP file nella Guida AWS Organizations per l'utente.
User: arn:aws:iam::
777788889999
:user/MaryMajor
is not authorized to perform: s3:GetObject because no service control policy allows the s3:GetObject action
Accesso negato a causa di una policy di controllo dei servizi: diniego esplicito
-
Cerca un'
Deny
informativa sull'azione nelle tue politiche di controllo dei servizi (SCPs). Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la tua SCP modificando l'
Deny
informativa per consentire all'utente l'accesso necessario. Per un esempio di come eseguire questa operazione, consulta Impedire a IAM utenti e ruoli di apportare modifiche specifiche, con un'eccezione per un ruolo di amministratore specificato nella Guida per l'AWS Organizations utente. Per ulteriori informazioni sull'aggiornamento del tuoSCP, consulta Updating an SCP nella Guida AWS Organizations per l'utente.
User: arn:aws:iam::
777788889999
:user/MaryMajor
is not authorized to perform: s3:GetObject with an explicit deny in a service control policy
Accesso negato a causa di una policy VPC sugli endpoint: negazione implicita
-
Verifica la presenza di un'
Allow
istruzione mancante relativa all'azione nelle policy degli endpoint del cloud privato virtuale (VPC). Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la policy VPC degli endpoint aggiungendo la
Allow
dichiarazione. Per ulteriori informazioni, consulta Aggiornare una policy per VPC gli endpoint nella AWS PrivateLink Guida.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject because no VPC endpoint policy allows the s3:GetObject action
Accesso negato a causa di una policy sugli VPC endpoint: rifiuto esplicito
-
Verifica la presenza di una
Deny
dichiarazione esplicita per l'azione nelle policy degli endpoint del cloud privato virtuale ()VPC. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la policy VPC degli endpoint modificando l'
Deny
istruzione per consentire all'utente l'accesso necessario. Ad esempio, puoi aggiornare la tuaDeny
dichiarazione per utilizzare la chiave diaws:PrincipalAccount
condizione con l'operatore diStringNotEquals
condizione per consentire l'accesso principale specifico, come mostrato inEsempio 7: esclusione di determinati principi da una dichiarazione Deny. Per ulteriori informazioni sull'aggiornamento della policy relativa agli VPC endpoint, consulta Aggiornare una policy sugli VPC endpoint nella AWS PrivateLink Guida.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in a VPC endpoint policy
Accesso negato a causa di limiti delle autorizzazioni: diniego implicito
-
Verifica la presenza di un’istruzione
Allow
mancante relativa all'azione nel limite delle autorizzazioni. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna i limiti delle autorizzazioni aggiungendo la
Allow
dichiarazione alla tua policy. IAM Per ulteriori informazioni, consulta Limiti delle autorizzazioni per le IAM entità e Modifica delle IAM politiche nella Guida per l'IAMutente.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" because no permissions boundary allows the s3:GetObject action
Accesso negato a causa di un limite delle autorizzazioni: diniego esplicito
-
Verifica la presenza di un’istruzione
Deny
esplicita relativa all'azione nel limite delle autorizzazioni. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna i limiti delle autorizzazioni modificando l'
Deny
informativa nella tua IAM politica per consentire all'utente l'accesso necessario. Ad esempio, puoi aggiornare la tuaDeny
dichiarazione per utilizzare la chiave diaws:PrincipalAccount
condizione con l'operatore diStringNotEquals
condizione per consentire l'accesso principale specifico, come mostrato in aws:PrincipalAccount nella Guida per l'utente di IAM. Per ulteriori informazioni, consulta Limiti delle autorizzazioni per IAM le entità e Modifica delle IAM politiche nella Guida per l'IAMutente.
User: arn:aws:iam::
777788889999
:user/MaryMajor
is not authorized to perform: s3:GetObject with an explicit deny in a permissions boundary
Accesso negato a causa di policy di sessione: diniego implicito
-
Verifica la presenza di un’istruzione
Allow
mancante relativa all'azione nelle tue policy di sessione. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la tua policy di sessione aggiungendo l’istruzione
Allow
. Per ulteriori informazioni, vedere Criteri di sessione e IAMCriteri di modifica nella Guida per l'IAMutente.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject because no session policy allows the s3:GetObject action
Accesso negato a causa di policy di sessione: diniego esplicito
-
Verifica la presenza di un’istruzione
Deny
esplicita relativa all'azione nelle tue policy di sessione. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la politica di sessione modificando l'
Deny
informativa per consentire all'utente l'accesso necessario. Ad esempio, è possibile aggiornare l'Deny
istruzione per utilizzare la chiave diaws:PrincipalAccount
condizione con l'operatore diStringNotEquals
condizione per consentire l'accesso principale specifico, come mostrato inEsempio 7: esclusione di determinati principi da una dichiarazione Deny. Per ulteriori informazioni sull'aggiornamento dei criteri di sessione, vedere Criteri di sessione e Modifica dei IAM criteri nella Guida per l'IAMutente.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in a session policy
Accesso negato a causa di policy basate sulle risorse: diniego implicito
Nota
Per politiche basate sulle risorse si intendono politiche come le politiche dei bucket e le politiche dei punti di accesso.
-
Verifica la presenza di un’istruzione
Allow
mancante relativa all'azione nella tua policy basata sulle risorse. Controlla anche se l'impostazioneIgnorePublicAcls
S3 Block Public Access è applicata a livello di bucket, punto di accesso o account. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la tua policy aggiungendo l'istruzione
Allow
. Per ulteriori informazioni, consulta Politiche basate sulle risorse e Modifica delle IAM politiche nella Guida per l'utente. IAMPotrebbe inoltre essere necessario modificare l'impostazione di
IgnorePublicAcls
blocco dell'accesso pubblico per il bucket, l'access point o l'account. Per ulteriori informazioni, consulta Accesso negato a causa delle impostazioni di blocco dell'accesso pubblico e Configurazione delle impostazioni di blocco dell'accesso pubblico per i bucket S3.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject because no resource-based policy allows the s3:GetObject action
Accesso negato a causa di policy basate sulle risorse: diniego esplicito
Nota
Per politiche basate sulle risorse si intendono politiche come quelle relative ai bucket e alle policy relative ai punti di accesso.
-
Verifica la presenza di un’istruzione
Deny
esplicita relativa all'azione nella tua policy basata sulle risorse. Controlla anche se l'impostazioneRestrictPublicBuckets
S3 Block Public Access è applicata a livello di bucket, punto di accesso o account. Per l’esempio seguente, l'operazione ès3:GetObject
. -
Aggiorna la tua politica modificando l'
Deny
informativa per consentire all'utente l'accesso necessario. Ad esempio, puoi aggiornare la tuaDeny
dichiarazione per utilizzare la chiave diaws:PrincipalAccount
condizione con l'operatore diStringNotEquals
condizione per consentire l'accesso principale specifico, come mostrato inEsempio 7: esclusione di determinati principi da una dichiarazione Deny. Per ulteriori informazioni sull'aggiornamento della politica basata sulle risorse, vedere Criteri basati sulle risorse e Modifica IAM dei criteri nella Guida per l'utente. IAMPotrebbe inoltre essere necessario modificare l'impostazione di
RestrictPublicBuckets
blocco dell'accesso pubblico per il bucket, il punto di accesso o l'account. Per ulteriori informazioni, consulta Accesso negato a causa delle impostazioni di blocco dell'accesso pubblico e Configurazione delle impostazioni di blocco dell'accesso pubblico per i bucket S3.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in a resource-based policy
Accesso negato a causa di policy basate sull'identità: diniego implicito
-
Verifica l'eventuale mancanza di un'istruzione
Allow
per l'azione nelle politicy basate sull'identità collegate all'identità. Nell'esempio seguente, l'azione ès3:GetObject
associata all'utenteMaryMajor
. -
Aggiorna la tua policy aggiungendo l'istruzione
Allow
. Per ulteriori informazioni, vedere Criteri basati sull'identità e Modifica dei IAM criteri nella Guida per l'IAMutente.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject because no identity-based policy allows the s3:GetObject action
Accesso negato a causa di policy basate sull'identità: diniego esplicito
-
Verifica la presenza di un’istruzione
Deny
esplicita per l'azione nelle politicy basate sull'identità collegate all'identità. Nell'esempio seguente, l'azione ès3:GetObject
associata all'utente.MaryMajor
-
Aggiorna la tua politica modificando l'
Deny
informativa per consentire all'utente l'accesso necessario. Ad esempio, puoi aggiornare la tuaDeny
dichiarazione in modo da utilizzare la chiave diaws:PrincipalAccount
condizione con l'operatore diStringNotEquals
condizione per consentire l'accesso principale specifico, come mostrato in aws:PrincipalAccount nella Guida per l'utente di IAM. Per ulteriori informazioni, consulta Politiche basate sull'identità e Modifica delle IAM politiche nella Guida per l'IAMutente.
User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in an identity-based policy
Accesso negato a causa delle impostazioni di blocco dell'accesso pubblico
La caratteristica di blocco dell'accesso pubblico di Amazon S3 fornisce le impostazioni per access point, bucket e account con cui è possibile gestire l'accesso pubblico alle risorse di Amazon S3. Per ulteriori informazioni su cosa si intende con il termine "pubblico" in Amazon S3, consulta Significato di "pubblico".
Per impostazione predefinita, nuovi bucket, access point e oggetti non consentono l'accesso pubblico. Tuttavia, gli utenti possono modificare le policy dei bucket, le policy dei punti di accesso, le policy IAM degli utenti, le autorizzazioni degli oggetti o le liste di controllo degli accessi (ACLs) per consentire l'accesso pubblico. Le impostazioni di S3 Block Public Access hanno la precedenza su questi criteri, autorizzazioni e. ACLs A partire da aprile 2023, tutte le impostazioni di Block Public Access sono abilitate per impostazione predefinita per i nuovi bucket.
Quando Amazon S3 riceve una richiesta di accesso a un bucket o a un oggetto, determina se per il bucket o l'account del proprietario del bucket è applicata un'impostazione di blocco dell'accesso pubblico. Se la richiesta è stata effettuata tramite un access point, Amazon S3 controlla anche la presenza di impostazioni di blocco dell'accesso pubblico per l'access point. Se è presente un'impostazione di blocco dell'accesso pubblico che vieta l'accesso richiesto, Amazon S3 rifiuta la richiesta.
Il blocco dell'accesso pubblico di Amazon S3 comprende quattro impostazioni. Queste impostazioni sono indipendenti e possono essere usate in qualunque combinazione. Ogni impostazione può essere applicata a un punto di accesso, a un bucket o a un intero AWS account. Se le impostazioni di blocco dell'accesso pubblico per l'access point, il bucket o l'account sono diverse, Amazon S3 applica la combinazione più restrittiva di impostazioni.
Quando Amazon S3 valuta se un'operazione è vietata da un'impostazione di blocco dell'accesso pubblico, rifiuta qualsiasi richiesta che viola un'impostazione a livello di access point, bucket o account.
Le quattro impostazioni fornite da Amazon S3 Block Public Access sono le seguenti:
-
BlockPublicAcls
— Questa impostazione si applica aPutBucketAcl
PutObjectAcl
,PutObject
,CreateBucket
CopyObject
, ePOST Object
richieste. L'BlockPublicAcls
impostazione causa il seguente comportamento:-
PutBucketAcl
ePutObjectAcl
le chiamate hanno esito negativo se la lista di controllo degli accessi specificata (ACL) è pubblica. -
PutObject
le chiamate hanno esito negativo se la richiesta include un messaggio pubblicoACL. -
Se questa impostazione viene applicata a un account,
CreateBucket
le chiamate hanno esito negativo con una risposta HTTP400
(Bad Request
) se la richiesta include un account pubblicoACL.
Ad esempio, quando viene negato l'accesso a una
CopyObject
richiesta a causa dell'BlockPublicAcls
impostazione, viene visualizzato il seguente messaggio:An error occurred (AccessDenied) when calling the CopyObject operation: User: arn:aws:sts::
123456789012
:user/MaryMajor
is not authorized to perform: s3:CopyObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" because public access control lists (ACLs) are blocked by the BlockPublicAcls block public access setting. -
-
IgnorePublicAcls
— L'IgnorePublicAcls
impostazione fa sì che Amazon S3 ignori tutto il pubblico ACLs su un bucket e tutti gli oggetti in esso contenuti. Se l'autorizzazione della tua richiesta è concessa solo da un pubblicoACL, l'IgnorePublicAcls
impostazione rifiuta la richiesta.Qualsiasi rifiuto derivante dall'
IgnorePublicAcls
impostazione è implicito. Ad esempio, seIgnorePublicAcls
nega unaGetObject
richiesta a causa di un messaggio pubblicoACL, riceverai il seguente messaggio:User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject because no resource-based policy allows the s3:GetObject action -
BlockPublicPolicy
— Questa impostazione si applica allePutAccessPointPolicy
richiestePutBucketPolicy
e.L'impostazione
BlockPublicPolicy
di un bucket fa sì che Amazon S3 rifiuti le chiamatePutBucketPolicy
a se la policy del bucket specificata consente l'accesso pubblico. Questa impostazione fa sì che Amazon S3 rifiuti anche le chiamate verso tutti i puntiPutAccessPointPolicy
di accesso dello stesso account del bucket se la politica specificata consente l'accesso pubblico.L'impostazione
BlockPublicPolicy
di un punto di accesso fa sì che Amazon S3 rifiuti le chiamate versoPutAccessPointPolicy
ePutBucketPolicy
che vengono effettuate tramite il punto di accesso se la politica specificata (per il punto di accesso o il bucket sottostante) consente l'accesso pubblico.Ad esempio, quando l'accesso viene negato a una
PutBucketPolicy
richiesta a causa dell'BlockPublicPolicy
impostazione, ricevi il seguente messaggio:An error occurred (AccessDenied) when calling the PutBucketPolicy operation: User: arn:aws:sts::
123456789012
:user/MaryMajor
is not authorized to perform: s3:PutBucketPolicy on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" because public policies are blocked by the BlockPublicPolicy block public access setting. -
RestrictPublicBuckets
— L'RestrictPublicBuckets
impostazione limita l'accesso a un punto di accesso o a un bucket con criteri pubblici solo ai responsabili e Servizio AWS agli utenti autorizzati all'interno dell'account del proprietario del bucket e dell'account del proprietario del punto di accesso. Questa impostazione blocca tutti gli accessi tra account al punto di accesso o al bucket (ad eccezione Servizio AWS dei principali), pur consentendo agli utenti all'interno dell'account di gestire il punto di accesso o il bucket. Questa impostazione rifiuta anche tutte le chiamate anonime (o non firmate).Qualsiasi rifiuto derivante dall'impostazione è esplicito.
RestrictPublicBuckets
Ad esempio, seRestrictPublicBuckets
nega unaGetObject
richiesta a causa di una politica pubblica relativa al bucket o al punto di accesso, riceverai il seguente messaggio:User: arn:aws:iam::
123456789012
:user/MaryMajor
is not authorized to perform: s3:GetObject on resource: "arn:aws:s3:::amzn-s3-demo-bucket1
/object-name
" with an explicit deny in a resource-based policy
Per ulteriori informazioni su queste impostazioni, consultare Impostazioni di blocco dell'accesso pubblico. Per rivedere e aggiornare queste impostazioni, consulta. Configurazione del blocco dell'accesso pubblico
Politiche e politiche di Bucket IAM
Operazioni a livello di bucket
Se non esiste una policy relativa al bucket, il bucket consente implicitamente le richieste provenienti da qualsiasi AWS Identity and Access Management (IAM) identità presente nell'account del proprietario del bucket. Il bucket inoltre nega implicitamente le richieste provenienti da qualsiasi altra IAM identità proveniente da qualsiasi altro account e le richieste anonime (non firmate). Tuttavia, se non esiste una politica IAM utente, al richiedente (a meno che non sia l'utente Account AWS root) viene implicitamente negato di effettuare richieste. Per ulteriori informazioni su questa logica di valutazione, consulta Determinare se una richiesta è rifiutata o consentita all'interno di un account nella Guida per l'IAMutente.
Operazioni a livello di oggetti
Se l'oggetto è di proprietà dell'account proprietario del bucket, la policy del bucket e la policy IAM utente funzioneranno allo stesso modo per le operazioni a livello di oggetto e per le operazioni a livello di bucket. Ad esempio, se non esiste una policy relativa al bucket, il bucket consente implicitamente le richieste di oggetti provenienti da qualsiasi identità presente nell'account del proprietario del bucket. IAM Il bucket inoltre nega implicitamente le richieste di oggetti provenienti da qualsiasi altra IAM identità da qualsiasi altro account e le richieste anonime (non firmate). Tuttavia, se non esiste alcuna politica IAM utente, al richiedente (a meno che non sia l'utente Account AWS root) viene implicitamente negato di effettuare richieste di oggetti.
Se l'oggetto è di proprietà di un account esterno, l'accesso all'oggetto può essere concesso solo tramite le liste di controllo dell'accesso agli oggetti ()ACLs. La policy bucket e la policy IAM utente possono ancora essere utilizzate per rifiutare le richieste di oggetti.
Pertanto, per assicurarti che la tua policy bucket o la policy IAM utente non causino un errore di accesso negato (403 Forbidden), assicurati che siano soddisfatti i seguenti requisiti:
-
Per l'accesso allo stesso account, non deve esserci una
Deny
dichiarazione esplicita contro il richiedente a cui stai cercando di concedere le autorizzazioni, né nella policy del bucket né nella politica utente. IAM Se desideri concedere le autorizzazioni utilizzando solo la policy del bucket e la politica dell'IAMutente, deve esserci almeno una dichiarazione esplicita in una di queste politiche.Allow
-
Per l'accesso su più account, non deve esserci una
Deny
dichiarazione esplicita contro il richiedente a cui stai cercando di concedere le autorizzazioni, né nella policy del bucket né nella politica utente. IAM Per concedere autorizzazioni su più account utilizzando solo la policy del bucket e la politica IAM utente, assicurati che sia la policy bucket che la politica IAM utente del richiedente includano una dichiarazione esplicita.Allow
Nota
Le istruzioni Allow
in una policy di bucket si applicano solo agli oggetti di proprietà dello stesso account proprietario del bucket. Tuttavia, le istruzioni Deny
in una policy di bucket si applicano a tutti gli oggetti indipendentemente dalla proprietà dell'oggetto.
Per rivedere o modificare la policy di bucket
Nota
Per visualizzare o modificare una policy di bucket, devi disporre dell'autorizzazione s3:GetBucketPolicy
.
Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Buckets (Bucket).
-
Nell'elenco Bucket scegli il nome del bucket per il quale vuoi visualizzare o modificare una policy di bucket.
-
Scegli la scheda Autorizzazioni.
-
In Bucket Policy (Policy del bucket) scegliere Edit (Modifica). Viene visualizzata la pagina Edit bucket policy (Modifica policy di bucket).
Per rivedere o modificare la tua policy sui bucket utilizzando AWS Command Line Interface (AWS CLI), usa get-bucket-policy
Nota
Se rimani bloccato all'accesso a un bucket a causa di una politica del bucket errata, accedi AWS Management Console utilizzando le credenziali dell'utente Account AWS root. Per riottenere l'accesso al tuo bucket, assicurati di eliminare la policy del bucket errata utilizzando le credenziali dell'utente root. Account AWS
Suggerimenti per la verifica delle autorizzazioni
Per verificare se il richiedente dispone delle autorizzazioni adeguate per eseguire un'operazione Amazon S3, prova quanto segue:
-
Identifica il richiedente. Se si tratta di una richiesta non firmata, si tratta di una richiesta anonima senza una politica utente. IAM Se si tratta di una richiesta che utilizza una politica predefinitaURL, la politica utente è la stessa di quella per l'IAMutente o il ruolo che ha firmato la richiesta.
-
Verifica di utilizzare l'IAMutente o il ruolo corretto. Puoi verificare il tuo IAM utente o ruolo controllando l'angolo in alto a destra di AWS Management Console o utilizzando il aws sts get-caller-identitycomando.
-
Controlla le IAM politiche correlate all'IAMutente o al ruolo. È possibile utilizzare uno dei seguenti metodi:
-
Esamina i diversi tipi di IAM policy.
-
Se necessario, modifica la politica IAM utente.
-
Consulta i seguenti esempi di policy che negano o consentono esplicitamente l'accesso:
-
Politica esplicita di IAM autorizzazione dell'utente IAM: consente e nega l'accesso a più servizi a livello di programmazione e nella console
-
Policy esplicita di autorizzazione al bucket: concessione delle autorizzazioni a più account per caricare oggetti o impostare oggetti per l'accesso pubblico ACLs
-
Politica di negazione esplicita IAM dell'utente AWS: nega l'accesso in base alla richiesta AWS Regione AWS
-
Politica esplicita di negazione del bucket: Require SSE- KMS per tutti gli oggetti scritti in un bucket
-
Impostazioni Amazon S3 ACL
Quando controlli ACL le impostazioni, controlla innanzitutto le impostazioni di Object Ownership per verificare se ACLs sono abilitate nel bucket. Tieni presente che ACL le autorizzazioni possono essere utilizzate solo per concedere autorizzazioni e non possono essere utilizzate per rifiutare le richieste. ACLsinoltre, non possono essere utilizzate per concedere l'accesso ai richiedenti che vengono rifiutati mediante negazioni esplicite nelle policy dei bucket o nelle politiche degli utenti. IAM
L'opzione Proprietà dell'oggetto è impostata su Bucket owner enforced.
Se l'impostazione applicata dal proprietario del bucket è abilitata, è improbabile che ACL le impostazioni causino un errore di accesso negato (403 proibito) perché questa impostazione disabilita tutto ciò che si applica al bucket e agli oggetti. ACLs Bucket owner enforced è l'impostazione predefinita (e consigliata) per i bucket Amazon S3.
L'opzione Proprietà dell’oggetto è impostata su Proprietario del bucket preferito o Autore dell'oggetto
ACLle autorizzazioni sono ancora valide con l'impostazione preferita del proprietario del bucket o l'impostazione dell'object writer. Esistono due tipi di oggettiACLs: bucket e object. ACLs ACLs Per le differenze tra questi due tipi di autorizzazioniACLs, vedere Mappatura delle ACL autorizzazioni e delle autorizzazioni dei criteri di accesso.
A seconda dell'azione della richiesta rifiutata, controlla le ACL autorizzazioni per il tuo bucket o l'oggetto:
-
Se Amazon S3 ha rifiutato un
LIST
PUT
oggetto o unaPutBucketAcl
richiestaGetBucketAcl
, verifica le ACL autorizzazioni per il tuo bucket.Nota
Non puoi concedere le autorizzazioni agli
GET
oggetti con le impostazioni del bucket. ACL -
Se Amazon S3 ha rifiutato una
GET
richiesta su un oggetto S3 o PutObjectAclrichiedi, quindi esamina le ACL autorizzazioni per l'oggetto.Importante
Se l'account proprietario dell'oggetto è diverso dall'account proprietario del bucket, l'accesso all'oggetto non è controllato dalla policy di bucket.
Risoluzione di un errore di accesso negato (403 Accesso negato) derivante da una richiesta oggetto GET
durante la proprietà di un oggetto multi-account
Esamina le impostazioni dell'opzione Proprietà dell’oggetto del bucket per determinare il proprietario dell'oggetto. Se hai accesso all'oggetto ACLs, puoi anche controllare l'account del proprietario dell'oggetto. (Per visualizzare l'account del proprietario dell'oggetto, consulta l'ACLimpostazione dell'oggetto nella console Amazon S3.) In alternativa, puoi anche eseguire una richiesta GetObjectAcl
per trovare l'ID canonico del proprietario dell'oggetto per verificare l'account del proprietario. Per impostazione predefinita, ACLs concedi autorizzazioni esplicite per le GET
richieste all'account del proprietario dell'oggetto.
Dopo aver verificato che il proprietario dell'oggetto sia diverso dal proprietario del bucket, a seconda del caso d'uso e del livello di accesso, scegli uno dei seguenti metodi per risolvere l'errore di accesso negato (403 Accesso negato):
-
Disabilita ACLs (consigliato): questo metodo si applica a tutti gli oggetti e può essere eseguito dal proprietario del bucket. Questo metodo assegna automaticamente il ruolo di proprietario del bucket e il controllo completo su ogni oggetto in esso contenuto. Prima di implementare questo metodo, verificate i prerequisiti per la disabilitazione. ACLs Per informazioni su come impostare il bucket su Bucket owner enforced (consigliata), consulta l'argomento relativo all'impostazione della proprietà dell'oggetto su un bucket esistente.
Importante
Per evitare un errore di accesso negato (403 proibito), assicurati di migrare le ACL autorizzazioni a una policy bucket prima di disabilitarla. ACLs Per ulteriori informazioni, consulta Esempi di policy Bucket per la migrazione dalle autorizzazioni. ACL
-
Cambiare il proprietario dell'oggetto in proprietario del bucket: questo metodo può essere applicato a singoli oggetti, ma solo il proprietario dell'oggetto (o un utente con le autorizzazioni appropriate) può modificare la proprietà di un oggetto. Potrebbero essere applicati
PUT
costi aggiuntivi. Per ulteriori informazioni, consulta la pagina Prezzi di Amazon S3. Questo metodo garantisce al proprietario del bucket la piena proprietà dell'oggetto, consentendogli di controllare l'accesso all'oggetto tramite una policy di bucket. Per modificare la proprietà dell'oggetto, procedi in uno dei seguenti modi:
-
Tu (il proprietario del bucket) puoi copiare nuovamente l'oggetto nel bucket.
-
È possibile modificare l'impostazione dell'opzione Proprietà dell’oggetto per il bucket impostandola su Proprietario del bucket preferito. Se il controllo delle versioni è disabilitato, gli oggetti nel bucket vengono sovrascritti. Se il controllo delle versioni è abilitato, nel bucket verranno visualizzate versioni duplicate dello stesso oggetto, per le quali il proprietario può impostare una regola del ciclo di vita per la scadenza. Per istruzioni su come modificare le impostazioni dell'opzione Proprietà dell’oggetto, consulta Impostazione di Object Ownership su un bucket esistente.
Nota
Quando aggiorni l'impostazione dell'opzione Proprietà dell’oggetto impostandola su Proprietario del bucket preferito, l'impostazione viene applicata solo ai nuovi oggetti caricati nel bucket.
-
È possibile fare in modo che il proprietario dell'oggetto carichi nuovamente l'oggetto con l'oggetto
bucket-owner-full-control
ACL predefinito.
Nota
Per i caricamenti su più account, puoi anche richiedere che l'oggetto predefinito sia incluso ACL nella tua
bucket-owner-full-control
policy sul bucket. Per una policy di bucket di esempio, consulta Concedere autorizzazioni multi-account per il caricamento di oggetti a garanzia del controllo completo da parte del proprietario del bucket. -
-
Mantenere l'autore dell'oggetto come proprietario dell'oggetto: questo metodo non modifica il proprietario dell'oggetto, ma consente di concedere l'accesso agli oggetti singolarmente. Per concedere l'accesso a un oggetto, devi disporre dell'autorizzazione
PutObjectAcl
per l'oggetto. Quindi, per correggere l'errore Accesso negato (403 Forbidden), aggiungi il richiedente come beneficiario per accedere all'oggetto nell'oggetto. ACLs Per ulteriori informazioni, consulta Configurazione ACLs.
Impostazioni dell'opzione S3 Blocco dell'accesso pubblico
Se la richiesta fallita riguarda l'accesso pubblico o politiche pubbliche, controlla le impostazioni di S3 Block Public Access sul tuo account, bucket o punto di accesso. Per ulteriori informazioni sulla risoluzione degli errori di accesso negato relativi alle impostazioni di S3 Block Public Access, consulta. Accesso negato a causa delle impostazioni di blocco dell'accesso pubblico
Impostazioni della crittografia Amazon S3
Amazon S3 supporta la crittografia lato server nel bucket. La crittografia lato server è la crittografia dei dati nella posizione di destinazione eseguita dall'applicazione o dal servizio che li riceve. Amazon S3 crittografa i tuoi dati a livello di oggetto mentre li scrive su dischi nei data AWS center e li decrittografa per te quando ti accedi.
Per impostazione predefinita, Amazon S3 ora applica la crittografia lato server con chiavi gestite di Amazon S3 (SSE-S3) come livello base di crittografia per ogni bucket in Amazon S3. Amazon S3 consente inoltre di specificare il metodo di crittografia lato server durante il caricamento degli oggetti.
Per esaminare lo stato della crittografia lato server e le impostazioni della crittografia del bucket
Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Buckets (Bucket).
-
Nell'elenco Bucket, scegli il bucket per cui vuoi controllare le impostazioni della crittografia.
-
Scegliere la scheda Properties (Proprietà).
-
Scorri verso il basso fino alla sezione Crittografia predefinita e visualizza le impostazioni dell'opzione Tipo di crittografia.
Per verificare le impostazioni di crittografia utilizzando il AWS CLI, usa il get-bucket-encryptioncomando.
Per controllare lo stato della crittografia dell'oggetto
Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Buckets (Bucket).
-
Nell'elenco Bucket scegli il nome del bucket contenente l'oggetto.
-
Nell'elenco Nome scegli il nome dell'oggetto per cui desideri aggiungere o modificare la crittografia.
Viene visualizzata la pagina dei dettagli dell'oggetto.
-
Scorri verso il basso fino alla sezione Impostazioni crittografia lato server per visualizzare le impostazioni della crittografia lato server dell'oggetto.
Per verificare lo stato di crittografia degli oggetti utilizzando il AWS CLI, utilizza il head-objectcomando.
Requisiti relativi a crittografia e autorizzazioni
Amazon S3 supporta tre tipi di crittografia lato server:
-
Crittografia lato server con chiavi gestite Amazon S3 (-S3) SSE
-
Crittografia lato server con () chiavi (-) AWS Key Management Service AWS KMS SSE KMS
-
Crittografia lato server con chiavi fornite dal cliente (-C) SSE
In base alle impostazioni di crittografia correnti, verifica che siano soddisfatti i seguenti requisiti relativi alle autorizzazioni:
-
SSE-S3 — Non sono richieste autorizzazioni aggiuntive.
-
SSE- KMS (con una chiave gestita dal cliente) — Per caricare oggetti, è
kms:GenerateDataKey
richiesta l'autorizzazione su. AWS KMS key Per scaricare oggetti ed eseguire caricamenti multipli di oggetti, èkms:Decrypt
richiesta l'autorizzazione sulla KMS chiave. -
SSE- KMS (con un Chiave gestita da AWS) — Il richiedente deve appartenere allo stesso account che possiede la chiave.
aws/s3
KMS Il richiedente deve inoltre disporre delle autorizzazioni Amazon S3 corrette per accedere all'oggetto. -
SSE-C (con una chiave fornita dal cliente): non sono richieste autorizzazioni aggiuntive. Puoi configurare la policy di bucket per richiedere e limitare la crittografia lato server con chiavi di crittografia fornite dal cliente per gli oggetti nel bucket.
Se l'oggetto è crittografato con una chiave gestita dal cliente, assicurati che la politica della KMS chiave consenta di eseguire le azioni kms:GenerateDataKey
orkms:Decrypt
. Per istruzioni sulla verifica della politica KMS chiave, consulta Visualizzazione di una politica chiave nella Guida per gli AWS Key Management Service sviluppatori.
Impostazioni dell'opzione S3 Blocco oggetti
Se nel bucket è abilitata la funzionalità S3 Blocco oggetti e l'oggetto è protetto da un periodo di conservazione o da un blocco a fini legali, Amazon S3 restituisce un errore di accesso negato (403 Accesso negato) quando si tenta di eliminare l'oggetto.
Per verificare se l'opzione Blocco oggetti è abilitata per il bucket
Accedi a AWS Management Console e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Buckets (Bucket).
-
Nell'elenco Bucket scegli il nome del bucket da controllare.
-
Scegliere la scheda Properties (Proprietà).
-
Scorri verso il basso fino alla sezione Blocco oggetti. Verifica se l'impostazione dell'opzione Blocco oggetti è abilitata o disabilitata.
Per determinare se l'oggetto è protetto da un periodo di conservazione o da un blocco a fini legali, visualizza le informazioni relative al blocco dell'oggetto.
Se l'oggetto è protetto da un periodo di conservazione o da un blocco a fini legali, verifica quanto segue:
-
Se la versione dell'oggetto è protetta dalla modalità di conservazione della conformità, non è possibile eliminarla definitivamente. Una
DELETE
richiesta permanente da parte di qualsiasi richiedente, incluso l'utente Account AWS root, genererà un errore di accesso negato (403 proibito). Inoltre, considera che quando invii una richiestaDELETE
per un oggetto protetto dalla modalità di conservazione della conformità, Amazon S3 crea un contrassegno di eliminazione per l'oggetto. -
Se la versione dell'oggetto è protetta con la modalità di conservazione della governance e disponi dell'autorizzazione
s3:BypassGovernanceRetention
, è possibile aggirare la protezione ed eliminare definitivamente la versione. Per ulteriori informazioni, consulta Bypassare la modalità Governance. -
Se la versione dell'oggetto è protetta da un blocco a fini legali, una richiesta
DELETE
permanente può generare un errore di accesso negato (403 Accesso negato). Per eliminare definitivamente la versione dell'oggetto, è necessario rimuovere il blocco a fini legali applicato alla versione dell'oggetto. Per rimuovere un blocco a fini legali, devi disporre dell'autorizzaziones3:PutObjectLegalHold
. Per ulteriori informazioni sulla rimozione di un blocco a fini legali, consulta Configurazione di S3 Object Lock.
VPCpolitiche degli endpoint
Se accedi ad Amazon S3 utilizzando un endpoint di cloud privato virtuale (VPC), assicurati che la policy dell'VPCendpoint non ti impedisca di accedere alle tue risorse Amazon S3. Per impostazione predefinita, la policy degli VPC endpoint consente tutte le richieste ad Amazon S3. Puoi anche configurare la policy degli VPC endpoint per limitare determinate richieste. Per informazioni su come verificare la policy VPC degli endpoint, consulta le seguenti risorse:
AWS Organizations politiche
Se fai Account AWS parte di un'organizzazione, AWS Organizations le policy possono impedirti di accedere alle risorse di Amazon S3. Per impostazione predefinita, AWS Organizations le policy non bloccano alcuna richiesta ad Amazon S3. Tuttavia, assicurati che AWS Organizations le tue policy non siano state configurate per bloccare l'accesso ai bucket S3. Per istruzioni su come controllare le tue AWS Organizations politiche, consulta le seguenti risorse:
-
Accesso negato a causa di una policy di controllo dei servizi: diniego implicito
-
Accesso negato a causa di una policy di controllo dei servizi: diniego esplicito
-
Accesso negato a causa di una politica di controllo delle risorse: rifiuto esplicito
-
Elenco di tutte le politiche nella Guida AWS Organizations per l'utente
Inoltre, se hai configurato erroneamente la tua policy sui bucket per un account membro in modo da negare a tutti gli utenti l'accesso al tuo bucket S3, puoi sbloccare il bucket avviando una sessione privilegiata per l'account membro in. IAM Una volta avviata una sessione privilegiata, puoi eliminare la policy del bucket non configurata correttamente per riottenere l'accesso al bucket. Per ulteriori informazioni, consulta Eseguire un'attività privilegiata su un account AWS Organizations membro nella Guida per l'utente.AWS Identity and Access Management
Impostazioni del punto di accesso
Se ricevi un errore di accesso negato (403 Accesso negato) mentre effettui richieste tramite i punti di accesso Amazon S3, potresti dover controllare quanto segue:
-
Le configurazioni per i punti di accesso
-
La politica IAM utente utilizzata per i punti di accesso
-
La policy di bucket utilizzata per gestire o configurare i punti di accesso multi-account
Configurazioni e policy dei punti di accesso
-
Quando crei un punto di accesso, puoi scegliere di designare Internet o VPCcome origine della rete. Se l'origine della rete è impostata su VPC Only, Amazon S3 rifiuterà tutte le richieste effettuate al punto di accesso che non provengono da quanto specificato. VPC Per verificare l'origine della rete del punto di accesso, consulta Creazione di access point limitati a un cloud privato virtuale.
-
Con i punti di accesso, puoi anche configurare impostazioni personalizzate dell'opzione Blocco dell'accesso pubblico, che funzionano in modo simile alle impostazioni di Blocco dell'accesso pubblico a livello di bucket o account. Per verificare le impostazioni personalizzate dell'opzione Blocco dell'accesso pubblico, consulta Gestione dell'accesso pubblico agli access point.
-
Per effettuare richieste di successo ad Amazon S3 utilizzando i punti di accesso, assicurati che il richiedente disponga delle autorizzazioni necessarie. IAM Per ulteriori informazioni, consulta Configurazione delle IAM politiche per l'utilizzo dei punti di accesso.
-
Se la richiesta interessa punti di accesso multi-account, assicurati che il proprietario del bucket abbia aggiornato la policy di bucket per autorizzare le richieste provenienti dal punto di accesso. Per ulteriori informazioni, consulta Concessione delle autorizzazioni per i punti di accesso multi-account.
Se l'errore Accesso negato (403 Forbidden) persiste dopo aver controllato tutti gli elementi di questo argomento, recupera l'ID della richiesta Amazon S3 e contattalo per ulteriori informazioni. AWS Support