👥

スタートアップ企業がAWS IAM Identity Centerを導入して得られた利点

2023/10/05に公開

こんにちは、アルダグラムの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つの画面で簡単に管理できるようになりました。

sso-list.jpg

スタートページが統一化されるのでアカウント間の切り替えが容易

提供されるスタートページから各AWSアカウントへ簡単にアクセスできるようになりました。

aws-sso-top.jpg

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の設定を必須にすることができるようになりました。

settting.jpg

ユーザーがID/PASSを入力後に追加でMFAコードの入力が求められます。(WebUI/CLI共に同様)

mfa.jpg

料金の心配が不要

IAM Identity Centerは追加の料金なしでサービスを利用できます(よくある質問

デメリットについて

半年以上の運用を経て、特にデメリットは感じていません。

まとめ

IAM Identity Centerはサービスとしての知名度は低いかもしれませんが、複数のAWSアカウントを持つ企業にとっては非常に有益だと感じました。ユーザー管理の効率化やセキュリティの強化など、多くの利点を享受できているので導入して良かったと感じます。

また、社内のIdP(アイデンティティプロバイダ)基盤を整備して、こちらと連携することで、IAMによるユーザー管理をよりシンプルにできる見込みなので将来的に取り組んでいきたいと考えています。

今後もクラウドのマネージドサービスを活用し、運用の効率化を図っていきたいと思います。

アルダグラム Tech Blog

Discussion