2017-11-15 2 views
0

IAMロールが関連付けられているEC2インスタンス上にあり、AWS CLIから実際にこのロールを使用していることを確認できます。AWSからサーバーで使用されているロールを見つけるCLI

私はこのような何かを呼び出すことができることを想像しています(ただし、CLIのドキュメントでのそれのような何かを見つけることができません):

$ aws get-current-role-details 

この機能は存在していますか?

+0

"サーバー上で"と言っているときは、EC2インスタンスで意味しますか? – Bruce

+0

次のコマンドは、EC2インスタンスに付加されているIAMロールの詳細を示します。インスタンスメタデータに存在します:カールhttp://169.254.169.254/latest/meta-data/iam/info これはあなたが探しているものですか? –

+0

私はec2インスタンスからこれを実行しようとしていることを反映するために私の質問を更新しました。インスタンスのメタデータを見つけることは、私が興味を持っているものではありません(私はコンソールからこれを見つけることができます)。 AWS CLIがどのような役割を果たしているかなど、知りたいことがあります。 –

答えて

3

残念ながら、その情報を取得する簡単な方法はありません。

ステップ1.インスタンスのメタデータから現在のEC2インスタンスIDを取得します。

curl -s http://169.254.169.254/latest/meta-data/instance-id 

現在のリージョンも必要な場合があります。

curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone/ | sed 's/\(.*\)[a-z]/\1/' 

ステップ2. EC2インスタンスに接続されているIAMインスタンスプロファイルのIDを取得します。

aws ec2 describe-instances \ 
    --region us-east-1 \ 
    --instance-id i-12345678 \ 
    --query 'Reservations[0].Instances[0].IamInstanceProfile.Id' 

必要に応じてEC2インスタンスIDと地域を忘れずに置き換えてください。

ステップ3. IAMインスタンスプロファイルの役割を取得します。

aws iam list-instance-profiles \ 
    --query "InstanceProfiles[?InstanceProfileId=='ABCDEFG'].Roles" 

IAMインスタンスプロファイルIDを忘れずに置き換えてください。

注:

  • IAMインスタンスプロファイルは、それに関連付けられた複数のIAM役割を有することができます。通常は1つだけですが、それ以上のものを持つことができます。
関連する問題