Supporto IMDSv2

È fantastico saperlo!

E spero che questo si applichi anche ad altri.

Ma mi chiedo perché questo non sia un problema per noi. L’abbiamo impostato su 1 eppure funziona?

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:0x00007f9d8c0a4b00>
discourse(prod) > c.config.credentials.disable_imds_v1
=> true
discourse(prod) > c.list_objects_v2(bucket: ENV['DISCOURSE_S3_BUCKET']).contents.count
=> 1000

e quell’istanza ha questi metadati secondo lo stesso comando di query:

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

Stiamo eseguendo Discourse in un container Docker su EC2, come altri, quindi… qual è la differenza?