スタートアップ企業がAWS IAM Identity Centerを導入して得られた利点
こんにちは、アルダグラムのSREエンジニア、okenak です。
2023年初頭にAWSのIAMユーザー管理をIAM Identity Centerへ移行する機会がありました。そこで得られたいくつかの利点について、今回シェアしたいと思います。
ちなみに、IAM Identity Centerという名前はちょっと長めですよね。(略語とかあれば知りたい)
導入の経緯
IAM Identity Centerの導入に際して、以下の情報が役立ちました。
https://aws.amazon.com/jp/blogs/startup/techblog-iam-sso-practice/
従来の管理方法
当初は、開発と本番環境でIAMユーザーをそれぞれ管理していました。しかし、組織が成長するにつれて運用に関するいくつかの課題が出てきました。
運用上の課題感
- 各AWSアカウントでのIAMユーザーの管理が手間になってきた
- ユーザー毎に発行しているアクセスキーがセキュリティのリスクとなる可能性があった
- 2段階認証(MFA)の有効化を推奨していたが社内の浸透がいまいちだった
- 複数のAWSアカウント間での切り替えに認証が入り作業がスムーズに行えなかった
そこで、これらの課題を解消するために、IAM Identity Centerの導入を考えました。
導入で得られた利点
IAMユーザーの権限整理や再発行の手間は発生しましたが、移行後の利点は大きいと感じます。
IAMユーザーの一元管理が可能
複数のAWSアカウント間でIAMユーザーを1つの画面で簡単に管理できるようになりました。
スタートページが統一化されるのでアカウント間の切り替えが容易
提供されるスタートページから各AWSアカウントへ簡単にアクセスできるようになりました。
CLIのSSOログインによりアクセスキーの管理が不要
aws cli version2以降でSSOログインが利用できるようになりました。(詳細はこちらを参照)
# 認証情報をリクエスト
$ aws sso login --profile dev-kanna
# ブラウザが立ち上がったらAllowボタンを押す
# 開発環境に対してコマンドを実行する例
aws s3 ls --profile dev-kanna
# 本番環境に対してコマンドを実行する例
aws s3 ls --profile prd-kanna
# 都度引数にprofileで向き先の指定が面倒な場合は事前に以下を実行しておく
export AWS_PROFILE=dev-kanna
プロファイルの設定例です
$ vim ~/.aws/config
#内容サンプルなので適宜書き換えてください
[profile dev-kanna]
sso_start_url = https://d-xxxx.awsapps.com/start#/
sso_region = ap-northeast-1
sso_account_id = xxxx
sso_role_name = AdministratorAccess
region = ap-northeast-1
output = json
[profile prd-kanna]
sso_start_url = https://d-xxxx.awsapps.com/start#/
sso_region = ap-northeast-1
sso_account_id = xxxx
sso_role_name = AdministratorAccess
region = ap-northeast-1
output = json
もしアクセスキーが必要な場合は一時的な認証情報として発行が可能です(こちら)
MFAの強制設定が可能
サインイン時のMFAの設定を必須にすることができるようになりました。
ユーザーがID/PASSを入力後に追加でMFAコードの入力が求められます。(WebUI/CLI共に同様)
料金の心配が不要
IAM Identity Centerは追加の料金なしでサービスを利用できます(よくある質問)
デメリットについて
半年以上の運用を経て、特にデメリットは感じていません。
まとめ
IAM Identity Centerはサービスとしての知名度は低いかもしれませんが、複数のAWSアカウントを持つ企業にとっては非常に有益だと感じました。ユーザー管理の効率化やセキュリティの強化など、多くの利点を享受できているので導入して良かったと感じます。
また、社内のIdP(アイデンティティプロバイダ)基盤を整備して、こちらと連携することで、IAMによるユーザー管理をよりシンプルにできる見込みなので将来的に取り組んでいきたいと考えています。
今後もクラウドのマネージドサービスを活用し、運用の効率化を図っていきたいと思います。
株式会社アルダグラムのTech Blogです。 世界中のノンデスクワーク業界における現場の生産性アップを実現する現場DXサービス「KANNA」を開発しています。 採用情報はこちら herp.careers/v1/aldagram0508/
Discussion