Soporte de IMDSv2

¡Esto es genial saberlo!

Y ojalá esto se aplique a otros también.

Pero me pregunto por qué esto no es un problema para nosotros. Lo tenemos configurado en 1 y aun así 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

y esa instancia tiene estos metadatos según el mismo comando de consulta:

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

Estamos ejecutando Discourse en un contenedor docker en EC2, al igual que otros, así que… ¿cuál es la diferencia?