Come faccio a risolvere gli errori 403 Access negato da un bucket Amazon S3 con accesso pubblico in lettura?

4 minuti di lettura
0

Vorrei accedere a un oggetto nel mio bucket Amazon Simple Storage Service (Amazon S3) che consente l'accesso pubblico alla lettura. Tuttavia, ricevo un errore 403 Accesso negato.

Risoluzione

Se non riesci ad accedere agli oggetti da un bucket S3 pubblico, esegui il runbook di automazione AWSSupport-TroubleshootS3PublicRead su AWS Systems Manager. Ciò consente di analizzare alcune impostazioni delle autorizzazioni che influiscono sul bucket e sui relativi oggetti, come la policy dei bucket e gli elenchi di controllo dell'accesso agli oggetti (ACL).

Nota: Il runbook AWSSupport-TroubleshootS3PublicRead analizza 403 errori provenienti da oggetti leggibili pubblicamente. Non valuta le autorizzazioni per gli oggetti privati.

  1. Apri la console Systems Manager.
  2. Nel riquadro di navigazione, scegli Automazione.
  3. Scegli Esegui automazione.
  4. In Scegli documento, scegli la scheda Owned by Amazon.
  5. Nella barra di ricerca dell'Automazione documenti, inserisci AWSSupport-TroubleshootS3PublicRead, quindi premi Invio.
  6. Scegli AWSSupport-TroubleshootS3PublicRead.
  7. Scegli Esegui automazione.
  8. Scegli Esecuzione semplice.
  9. (Facoltativo) Per AutomationAssumeRole, puoi selezionare un ruolo di AWS Identity and Access Management (IAM) che Systems Manager assume per inviare richieste al tuo bucket. Se lasci vuoto questo campo, Systems Manager utilizza la tua identità IAM corrente per configurare il runbook.
    Importante: La politica di fiducia del ruolo IAM selezionato deve consentire a Systems Manager Automation di assumere il ruolo. Inoltre, il ruolo IAM deve disporre delle autorizzazioni necessarie per il runbook. Consulta la sezione Autorizzazioni IAM richieste in AWSSupport-TroubleshootS3PublicRead.
  10. Per S3BucketName, inserisci il nome del bucket S3 che desideri risolvere.
  11. (Facoltativo) Per S3PrefixName, puoi specificare un prefisso da analizzare. Se lasci vuoto questo campo, il runbook elenca il bucket e valuta i primi oggetti lessicograficamente.
  12. (Facoltativo) Per StartAfter, puoi specificare il nome della chiave da cui desideri che il runbook inizi a essere elencato.
  13. Per MaxObjects, inserisci il numero massimo di oggetti che desideri che il runbook valuti. Il valore predefinito è cinque.
  14. Per IgnoreBlockPublicAccess, è consigliabile lasciare il valore come false.
    Avvertenza: Se modifichi il valore su true, verranno ignorate le impostazioni di Amazon S3 Block Public Access che potrebbero bloccare l'accesso.
  15. Per HttpGet, lascia il valore true se vuoi che il runbook esegua una richiesta HTTP GET parziale (il primo byte) per ogni oggetto. Cambia il valore su false se desideri che il runbook esegua una richiesta GET completa.
  16. Per Verbose, inserisci true per visualizzare informazioni dettagliate durante l'analisi. Per visualizzare solo i messaggi di avviso e di errore, inserisci false.
  17. (Facoltativo) Per CloudWatchLogGroupName, puoi inserire il nome del gruppo di log di Amazon CloudWatch a cui desideri inviare i risultati dell'analisi. Se specifichi un nome e il gruppo di log non esiste, il runbook tenta di creare un gruppo di log con quel nome.
  18. (Facoltativo) Per CloudWatchLogStreamName, puoi inserire il nome del flusso di log di CloudWatch a cui desideri inviare i risultati dell'analisi. Se specifichi un nome e il gruppo di log non esiste, il runbook tenta di creare un gruppo di log con quel nome. Se lasci vuoto questo campo, il runbook utilizza l'ID di esecuzione del runbook come nome del flusso di log.
  19. Per ResourcePartition, seleziona la partizione in cui si trova il bucket S3. Le opzioni sono aws, aws-us-gov o aws-cn.
  20. (Facoltativo) Per i tag, inserisci fino a cinque tag di coppia chiave-valore.
  21. Scegli Esegui.
  22. Usa lo stato di Esecuzione per tenere traccia dell'avanzamento del runbook.
  23. Dopo che lo stato indica un Successo, esamina i risultati elencati in Output. I risultati potrebbero includere codici di errore per ogni oggetto valutato dal runbook. Usa questi codici di errore per diagnosticare la causa degli errori di accesso negato per le richieste anonime a ciascun oggetto.
    Suggerimento: Per esaminare il risultato di una singola fase della valutazione, scegli lo Step ID pertinente in Fasi eseguite. Le Fasi eseguite sono elencate sotto lo stato di esecuzione.