スタートアップでAWS IAM権限管理をうまく行う方法 - ConsoleMe導入記
(engineering.ab180.co)- IAM最小権限ポリシー
「IAMポリシーを作成するときは、最小権限付与という標準的なセキュリティアドバイスに従い、作業の実行に必要な最小限の権限のみを付与します」
これまでは開発者にすべての権限を与えていたが、最小権限ポリシーに従うことにした。
- Jiraを活用した権限申請プロセスの導入記
既存の権限をすべて回収したうえで、必要な権限を申請できるプロセスを Jira + Terraform で作成した。
しかし、以下の4つの理由で使いにくかった。
-
Terraform apply に3〜5分ほど時間が必要
-
開発者のIAM policyに対する理解が浅く、時間がかかる
-
権限追加申請が頻繁に発生する
-
頻繁に変更されるIAMの特性上、Githubとの同期が合わないことが多い
- IAM権限申請の世界に差した一筋の光、ConsoleMe
Netflixが2020年に公開した、AWSマルチアカウント環境でIAM権限管理を容易にするオープンソースプロジェクト。Webコンソールを提供し、IAM権限申請やRoleに対する一時権限の利用を支援する。ユーザーがWeb上の権限エディタで自由に修正し、管理者が確認して approve するとすぐ適用される方式。
- SSO(Single sign-on)を使った一時権限の発行
AWS上で AWS STS(Secure Token Service) を利用してIAM Roleに対する一時権限を取得するのは、IAM User を使うより安全な方法。ConsoleMeでは、SSOを通じてGoogleアカウントまたはSSO providerを使い、IAM Roleに対する一時権限を簡単に取得できるよう支援する。
- それで、導入して改善しましたか?
はい。6か月間チームで導入・運用したあとに振り返ってみると、ConsoleMeを使うようになってから、セキュリティチームは権限申請に関する証跡やログ管理がしやすくなり、開発チームは最短30分、長いと1日かかっていたプロセスが5分ほどで済む簡単な権限申請プロセスに変わり、全員が満足できました。
3件のコメント
個人的に良い資料をありがとうございます。 :)
弊社も会計監査のためにセキュリティを強化する必要があるので、役に立ちそうです
私がよく分かっていないだけかもしれませんが(スタートアップで新人なので…)、セキュリティ監査だけでなく会計監査のときにもITセキュリティを監査するんですね、すごい……。初めて知りました。
監査準備、頑張ってください(笑)
たいていは会計監査がきっかけで、セキュリティに気を使うようになりますね(笑)
頑張ってください〜