¿Cómo puedo solucionar los errores «403 Acceso denegado» de un bucket de Amazon S3 con acceso de lectura público?

4 minutos de lectura
0

Quiero acceder a un objeto de mi bucket de Amazon Simple Storage Service (Amazon S3) que permite el acceso de lectura público. Sin embargo, aparece un error «403 Acceso denegado».

Solución

Si no puede acceder a los objetos desde un bucket de S3 público, ejecute el runbook de automatización AWSSupport-TroubleshootS3PublicRead en AWS Systems Manager. Esto le permitirá analizar las configuraciones de los permisos que afectan al bucket y a los objetos, como la política de bucket y las listas de control de acceso (ACL) a objetos.

Nota: El runbook AWSSupport-TroubleshootS3PublicRead analiza errores 403 de objetos que pueden leerse de manera pública. No evalúa los permisos de los objetos privados.

  1. Abra la consola de Systems Manager.
  2. En el panel de navegación, elija Automatización.
  3. Elija Ejecutar automatización.
  4. En Elegir documento, seleccione la pestaña Propiedad de Amazon.
  5. En la barra de búsqueda Documento de automatización, introduzca AWSSupport-TroubleshootS3PublicRead y, a continuación, pulse Intro.
  6. Elija AWSSupport-TroubleshootS3PublicRead.
  7. Elija Ejecutar automatización.
  8. Elija Ejecución sencilla.
  9. (Opcional) En AutomationAssumeRole, puede seleccionar un rol de AWS Identity and Access Management (IAM) que Systems Manager pueda asumir para enviar solicitudes al bucket. Si deja este campo en blanco, Systems Manager utilizará su identidad de IAM actual para configurar el runbook.
    Importante: La política de confianza del rol de IAM que seleccione debe permitir que Automatización de Systems Manager asuma el rol. Además, el rol de IAM debe tener los permisos necesarios para el runbook. Consulte la sección Required IAM permissions en AWSSupport-TroubleshootS3PublicRead.
  10. Como S3BucketName, introduzca el nombre del bucket de S3 para el que desea solucionar el problema.
  11. (Opcional) Como S3PrefixName puede especificar un prefijo para análisis. Si deja este campo en blanco, el runbook generará una lista para el bucket y evaluará los primeros objetos geográficamente.
  12. (Opcional) Con StartAfter puede especificar el nombre clave a partir del cual debe generar la lista el runbook.
  13. En MaxObjects, introduzca el número máximo de objetos que desea que el runbook evalúe. El valor predeterminado es cinco.
  14. En IgnoreBlockPublicAccess se recomienda dejar el valor false.
    Advertencia: Si cambia el valor a true, se ignorará la configuración de bloqueo del acceso público de Amazon S3 que podría bloquear el acceso.
  15. En HttpGet, deje el valor true si desea que el runbook realice una solicitud HTTP GET parcial (el primer byte) para cada objeto. Si desea que el runbook realice una solicitud GET completa, cambie el valor a false.
  16. Para Verbose indique true si desea ver información detallada durante el análisis. Indique false si solo desea ver los mensajes de advertencia y error.
  17. (Opcional) Para CloudWatchLogGroupName puede introducir el nombre del grupo de registro de Amazon CloudWatch al que desee enviar los resultados del análisis. Si especifica un nombre y el grupo de registro no existe, el runbook intentará crear un grupo de registro con ese nombre.
  18. (Opcional) Como CloudWatchLogStreamName puede introducir el nombre de la secuencia de registro de CloudWatch a la que desee enviar los resultados del análisis. Si especifica un nombre y el grupo de registro no existe, el runbook intentará crear un grupo de registro con ese nombre. Si deja este campo en blanco, el runbook utilizará el ID de ejecución del runbook como nombre de secuencia de registro.
  19. Como ResourcePartition, seleccione la partición en la que se encuentra el bucket de S3. Las opciones son aws, aws-us-gov o aws-cn.
  20. (Opcional) En Tags, introduzca hasta cinco etiquetas de pares clave-valor.
  21. Elija Ejecutar.
  22. Utilice Estado de ejecución para realizar un seguimiento del progreso del runbook.
  23. Cuando el estado sea Correcto, revise los resultados que se muestran en Salidas. Los resultados pueden incluir códigos de error para cada objeto evaluado por el runbook. Use estos códigos de error para diagnosticar la causa de los errores de acceso denegado de las solicitudes anónimas a cada objeto.
    Consejo: Para revisar el resultado de un paso individual de la evaluación, elija el ID del paso en cuestión en Pasos ejecutados. Pasos ejecutados se encuentra debajo de Estado de ejecución.