AWS Systems Manager の機能であるオートメーションを使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスからインスタンスメタデータへのアクセスを、インスタンスメタデータサービスバージョン 2 (IMDSv2) に適用したいと考えています。
簡単な説明
インスタンス上のインスタンスメタデータ IMDSv2 への IMDSv2 アクセスのみを強制するには、Systems Manager AWSSupport-ConfigureEC2Metadata ランブックを実行します。
重要: IMDSv2 を適用すると、IMDSv1 が非アクティブになります。IMDSv2 を適用すると、IMDSv1 を使用するアプリケーションが正しく機能しなくなる可能性があります。IMDSv2 を適用する前に、Amazon EC2 メタデータを使用するすべてのアプリケーションが IMDSv2 と互換性があることを確認してください。実装のベストプラクティスに関するその他のガイダンスについては、「IMDSv2 を必要とする推奨パス」を参照してください。
解決策
前提条件: 次のアクションを使用するための正しい AWS Identity and Access Management (IAM) アクセス許可があることを確認します。ロールの設定方法の詳細については、「コンソールを使用して Automation 用のサービスロールを作成する」を参照してください。
Systems Manager コンソールを使用してオートメーションを実行します。[オートメーションドキュメント] リストで、AWSSupport-ConfigureEC2Metadata を選択します。[実行モード] セクションで、[実行モード] に [シンプルな実行] を選択します。 [レート制御] を選択して複数のターゲットでオートメーションを実行することもできます。次に、[入力パラメータ] で次の設定を行います。
- InstanceId にインスタンスの ID を入力します。
- HttpPutResponseHopLimit に、1 ~ 64 までの新しい値を入力します。
注: コンテナ環境では、ホップ制限が 1 になると問題が発生する可能性があります。詳細については、「インスタンスメタデータアクセス考慮事項」の「コンテナ環境では、再設定またはホップ制限を 2 に引き上げることを検討してください」セクションを参照してください。
- HttpTokens で required を選択します。
- MetadataAccess で enabled を選択します。
- (オプション) AutomationAssumeRole でロールを選択します。ロールを指定しない場合、オートメーションはドキュメントを実行するユーザーのアクセス許可を使用します。
関連情報
EC2 インスタンスのインスタンスメタデータにアクセスする