IAM Identity Centerで運用管理ユーザのAWS CLIが使えるまで

投稿日:

更新日:

カテゴリ:

AWS CLI使いたいです。なんでだって?だって。。。かっこうよく見せられるじゃん〜
AWSの画面ゴロゴロ変わるので、更新が大変のと、コマンドならソース管理できるのは一旦内緒です!

導入

AWSのIAM Identity Centerで運用管理ユーザ作成の続きになります。
早速管理ユーザでAWSコンソールにログインしましょう。

AWS証明書の確認

ログイン後の画面から、次の「Command line or programmatic access」を選択します。

そうしますと、次のようなアクセスキーやシークレットキーが表示されます。あとは、これまでになかったセッショントークンもありますね。

AWS CLIインストール

AWS CLIのインストールは公式を参考にするといいと思います。
macOSでbrew好みなら、次でインストールできます。

brew install awscli

AWS CLI初期設定

次のコマンドを実行して初期設定を行います。

% aws configure sso
 SSO session name (Recommended): my-sso # 任意のセッション名
 SSO start URL [None]: https://xxxxxxxxxx.awsapps.com/start# # 証明書画面の「SSO Start URL」に書かれているもの
 SSO region [None]: ap-northeast-1 # 証明書画面の「SSO Region」に書かれているもの
 SSO registration scopes [sso:account:access]: #デフォルトのまま行くので、何も入力しなくて良い
 Attempting to automatically open the SSO authorization page in your default browser. If the browser does not open or you wish to use a different device to authorize this request, open the following URL: 

 https://device.sso.ap-northeast-1.amazonaws.com/

 Then enter the code: 

 KDWC-DWGD

このときには、ブラウザが開かれ、次の画面が出ると思います。

Allowボタンをクリックして許可します。

画面が次のように変わりましたら、ターミナルに戻ります。

次のようにリージョンなどの情報を入力して行きます。

The only AWS account available to you is: <アカウントID>
Using the account ID <アカウントID>
The only role available to you is: AdministratorAccess
Using the role name "AdministratorAccess"
CLI default client Region [None]: ap-northeast-1 # 東京リージョン
CLI default output format [None]: json #デフォルトはjson形式
CLI profile name [AdministratorAccess-<アカウントID>]: #そのまま行くので、何も入力しなくて良い

To use this profile, specify the profile name using --profile, as shown:

aws s3 ls --profile AdministratorAccess-<アカウントID>

初期設定はここまでで完了になります。
早速上の一番最後にあるaws s3 ls --profile AdministratorAccess-<アカウントID>コマンド試してみましょう。
S3に何も置いてない場合、結果は空のはずですが、これでOKです。

プロファイルの指定

上記初期設定したにも関わらず、awsコマンド打ったら、次が表示された場合、プロファイルをしてしてないことが原因の可能性があります。

You must specify a region. You can also configure your region by running "aws configure".

この場合、初期設定セッションの最後のように--profileでプロファイルを指定すれば問題解消されるはずが、毎回指定が面倒の場合、次のコマンド実行した上でaws s3 lsとか実行すると、プロファイルの指定は必要なくなるはずです。

export AWS_PROFILE=AdministratorAccess-<アカウントID>
export AWS_PROFILE=AdministratorAccess-<アカウントID>

ターミナルを閉じても、この設定を維持したいなら、上記設定を.zshrc/.bashrcとかに追加して置くといいでしょう。
もしくは、~/.aws/configにある[profile AdministratorAccess-<アカウントID>][default]に変えてもプロファイルの指定をしなくて良くなります。

参考

  1. AWS CLI の最新バージョンをインストールまたは更新します。
  2. aws configure sso ウィザードでプロファイルを設定する
  3. AWS CLI の名前付きプロファイル
  4. Homebrew awscli

投稿日

カテゴリー:

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です