AWSなどクラウドサービスで管理するアカウントが増えると、クレデンシャル管理が面倒になることがあると思います。
AWS SSOで複数のAWSアカウントを運用しており、基本的に--profile
でクレデンシャルを切り替えていました。
以下のような課題がありました。
~/.aws/config
が肥大化する- AWSアカウントが増えたときに
~/.aws/config
に追記するのが面倒 - CDKなどAWS SSOの名前付きプロファイルが対応していないサービスもある(2022年3月 現在)
- コンソールのAWS SSOの一時的クレデンシャル コピペが面倒
- aws-vaultやaws2-wrapでcredential_process使うのも
~/.aws/config
に記述が増える
Leappを使うことで、上記が楽になったため紹介します。
Leappとは
クラウドクレデンシャル(AWS IAMアクセスキーなど)を管理できるデスクトップアプリケーションです。
GUIでクレデンシャルの切り替えができます。
AWS、GCP、Azureなどに対応しています。
LeappでAWS SSOのクレデンシャルを切り替える
Leappを使って、AWS SSOのクレデンシャルを切り替えてみます。
インストール
Macは、brewでインストールできます。
$ brew install leapp
AWS SSOインテグレーションの設定
公式サイトでビデオで紹介されています。
AWS SSOのURLとリージョンを指定するだけです。
Leapp Docs Configure AWS Single Sign-On integration
LeappでAWS SSOにログイン
セッションの横のアイコンクリックか画面下の「Start Session」でセッションが開始されます。
ちなみに、画面下の「Open Web Console」でマネジメントコンソールを開くことができます。
コンソールで開始したセッションの認証情報を使えていることがわかります。
小ネタ ピン留め
よく使うセッションをピン留めしておけば、「Pinned」からピン留めしたセッションだけ表示できます。
所感
Leappの紹介でした。
AWS CDKのAWS SSO名前付きプロファイルのIssueで紹介されていて知りました。
Github aws/aws-cdk AWS SSO Named Profiles Support
GUIで手軽に設定や認証情報の切り替えができて便利です。
現在対応している、IntegrationはAWS SSOのみですが「Okta」や「One Login」なども対応する予定があるみたいです。
今後の発展が楽しみです。
Leapp Docs Integrations
Leapp Roadmap