Após uma pesquisa extensa, não encontrei nenhum guia sobre como fazer upload de imagens para o S3 com ACL privada.
Estou enfrentando um comportamento estranho em que os backups funcionam, mas o upload de imagens não.
Consegui isolar o problema em uma configuração de ACL do bucket (comprovei que se trata da ACL, pois consigo fazer upload de arquivos usando o SDK sem especificar o parâmetro de ACL). Em alguns casos, a permissão “bloquear acesso público” está definida no nível da conta e não no nível do bucket, então desmarcar a caixa de seleção na configuração do bucket não resolve.
Tive o mesmo problema. O upload de backup funciona, mas o upload de imagens mostra “O bucket não permite ACLs”
E foi corrigido modificando uma permissão no IAM e duas configurações no bucket
Primeiro, alterei o guia sobre a permissão do IAM de “s3:HeadBucket” para “s3:ListBucket” porque a Amazon disse que HeadBucket não é uma permissão válida
Então, a parte mais importante, habilitar ACLs, é chamado de Editar Propriedade do Objeto na aba de permissão, com ACLs habilitadas e definidas como gravador de objeto, tudo ficou bem agora