ハンズラボエンジニアブログAWSの話題を中心に、日々の業務やプログラミングの徒然を綴るエンジニアブログです。ー後編ーAWS2016年3月3日ハンズラボPocketどうも、吉田です!最近デスクで観葉植物を育て始めました、育つと木になるようなのでどーしよう!?とか思いながら水やりしてます。権限委譲の2回目です。書いたSTSの続きを書いていきます。やりたいこと[アカウントAのIAMを使ってアカウントBの情報を取りたい]では実際にやっていきます。アカウントが2つ登場するので混乱するかもしれませんが頑張って書きます!アカウントA:HANDSアカウントB:LABとします。HANDSアカウント側の作業(IAMユーザーの作成)HANDSのアカウントを使ってTEBAの情報を取得するのでまず、HANDSアカウントでCLIが使えるようにします。ロールの作成)HANDSアカウントに家の鍵を渡す家主を作成します。[手順]1.IAMロール[TEBA]を作成します2.クロスアカウントアクセスの設定をします。AWS間のアクセスになるため、HANDSアカウントのIDを入力してください。3.ロールのポリシーとして「SecurityAudit」を当てます。4.信頼関係の編集からエンティティを「:root」から「:user/0303_test」に変更しますロールの作成ポリシーの調整HANDSアカウント側の作業(TEBAのロールを使えるようにする)作成した家主の鍵を使えるようにします。ポリシーを参考にカスタムポリシーを作成するお疲れ様です!これで使用するための設定が完了しました。あとは実際に使えるように手元のクライアントに情報を登録しましょう。上のサンプルをそのまま使用します。今回やりたかったこととしては1.大量のアカウントの情報を引っ張れるようにしたい2.だけど全部クレデンシャルに書くと怖いしもれたとき大変なので、HANDSで作成したCLIのクレデンシャルのみ登録し、対象はARNと、どのユーザー情報が信頼を結んでいるかだけを記載する方法を取ります。これなら手間がかからず、何かあってもHANDSユーザーの鍵をどうにかするだけで済みます。修正する2.profileを指定してCLIコマンドを叩く!credentialsのプロファイル[]に書くのはイタリックの赤字だけです。書いちゃダメこんな形で取得することができたので、あとは必要なアカウント数だけ1.ロールを作成する2.ロールを使えるようカスタムポリシーを修正する3.クレデンシャルに登録する上記作業を繰り返せば大丈夫です。プロファイルを付け替えるだけなのでfor文でぶん回せばいくらでも一覧取得ができます。${TARGET_LIST}みたいにぶん回しておけば一括取得も可能です。