Começamos a usar o Discourse em uma instância AWS EC2 há um ano. E esta semana atualizamos nossa instância para usar apenas o IMDSv2, isso quebrou nossos uploads do AWS S3 com a mensagem de erro “unable to sign request without credentials set”. Também utilizamos a configuração “s3 use iam profile”.
O serviço IMDS local é usado pelo Discourse para obter credenciais para fazer outras chamadas de API de serviço relacionadas à AWS. Isso é feito usando o Ruby aws-sdk-s3