Suporte para IMDSv2

É ótimo saber disso!

E espero que isso se aplique a outros também.

Mas estou me perguntando por que isso não é um problema para nós. Temos isso definido como 1 e, ainda assim, funciona?

discourse(prod)> ENV['AWS_EC2_METADATA_V1_DISABLED'] = 'true'
=> "true"
discourse(prod)> c = Aws::S3::Client.new(region: ENV['DISCOURSE_S3_REGION'])
=> #<Aws::S3::Client>
discourse(prod)> c.config.credentials.disable_imds_v1
=> true
discourse(prod)> c.list_objects_v2(bucket: ENV['DISCOURSE_S3_BUCKET']).contents.count
=> 1000

e essa instância tem esses metadados de acordo com o mesmo comando de consulta:

{
    "State": "applied",
    "HttpTokens": "optional",
    "HttpPutResponseHopLimit": 1,
    "HttpEndpoint": "enabled",
    "HttpProtocolIpv6": "disabled",
    "InstanceMetadataTags": "disabled"
}

Estamos executando o Discourse em um contêiner docker no EC2, assim como outros, então… qual é a diferença?