Das Instance-Identitätsdokument für eine EC2-Instance abrufen - Amazon Elastic Compute Cloud

Das Instance-Identitätsdokument für eine EC2-Instance abrufen

Das Instance-Identitätsdokument für eine Amazon-EC2-Instance verwendet ein Klartext-JSON-Format. Eine Beschreibung des Inhalts eines Instance-Identitätsdokuments finden Sie unter Instance-Identitätsdokumente für Amazon-EC2-Instances.

Das Instance-Identitätsdokument ist in den Instance-Metadaten der Instance in der Kategorie dynamische instance-identity/document-Daten gespeichert. Sie greifen auf das Instance-Identitätsdokument für eine Instance zu, indem Sie eine Verbindung mit der Instance herstellen und es aus den Instance-Metadaten abrufen.

Sie können mithilfe der IPv4-Adresse 169.254.169.254 oder der IPv6-Adresse fd00:ec2::254 zu einer Instance zugreifen. Dies sind Link-lokale Adressen, was bedeutet, dass Sie nur von der Instance aus auf sie zugreifen können. In den Beispielen in diesem Abschnitt wird die IPv4-Adresse des IMDS verwendet: 169.254.169.254. Um Instance-Metadaten für EC2-Instances über IPv6 abzurufen, verwenden Sie fd00:ec2::254.

Informationen zum Überprüfen der Echtheit eines Instance-Identitätsdokuments, nachdem Sie es abgerufen haben, finden Sie unter Verifizieren des Instance-Identitätsdokuments.

IMDSv2
Linux

Führen Sie den folgenden Befehl in Ihrer Linux-Instance aus, um das Instance-Identitätsdokument abzurufen.

TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document
Windows

Führen Sie das folgende cmdlet in Ihrer Windows-Instance aus, um das Instance-Identitätsdokument abzurufen.

[string]$token = (Invoke-WebRequest -Headers @{'X-aws-ec2-metadata-token-ttl-seconds' = '21600'} ` -Method PUT -Uri 'http://169.254.169.254/latest/api/token' -UseBasicParsing).Content
(Invoke-WebRequest -Headers @{'X-aws-ec2-metadata-token' = $token} ` -Uri 'http://169.254.169.254/latest/dynamic/instance-identity/document' -UseBasicParsing).Content
IMDSv1
Linux

Führen Sie den folgenden Befehl in Ihrer Linux-Instance aus, um das Instance-Identitätsdokument abzurufen.

curl http://169.254.169.254/latest/dynamic/instance-identity/document
Windows

Führen Sie das folgende cmdlet in Ihrer Windows-Instance aus, um das Instance-Identitätsdokument abzurufen.

(Invoke-WebRequest http://169.254.169.254/latest/dynamic/instance-identity/document).Content

Es folgt eine Beispielausgabe.

{ "devpayProductCodes" : null, "marketplaceProductCodes" : [ "1abc2defghijklm3nopqrs4tu" ], "availabilityZone" : "us-west-2b", "privateIp" : "10.158.112.84", "version" : "2017-09-30", "instanceId" : "i-1234567890abcdef0", "billingProducts" : null, "instanceType" : "t2.micro", "accountId" : "123456789012", "imageId" : "ami-5fb8c835", "pendingTime" : "2016-11-19T16:32:11Z", "architecture" : "x86_64", "kernelId" : null, "ramdiskId" : null, "region" : "us-west-2" }