はじめに
AWS Community Hero の山口です。みなさん、AWS アカウントへのアクセスをどのように管理していますか ?
AWS 環境を運用していると、「一時的に管理者権限が必要」な場面は意外と多くあります。障害対応、本番環境の緊急メンテナンス、運用タスクの実施など・・・。しかし、そのたびに恒久的な権限を付与してしまっては、セキュリティリスクが高まり、監査対応も難しくなります。そんな課題を解決するのが、AWS が提供するオープンソースソリューション「Temporary Elevated Access Management (TEAM)」です。
Temporary Elevated Access Management (TEAM) サイト
TEAM は、2023 年 6 月 8 日に AWS 公式ブログで初めて紹介されました。筆者はその直後、2023 年 6 月 13 日・14 日に米国カリフォルニア州アナハイムで開催された AWS re:Inforce 2023 にて TEAM の存在を知り、その後の参加報告会などのイベントで、セキュリティ強化に役立つソリューションとして各所で紹介してきました。
最近では、JAWS-UG 各支部の勉強会やイベントでも TEAM に関する発表を目にする機会が増えてきました。そこで今回、改めてこの場で皆さんに TEAM をご紹介したいと思います。
ご注意
本記事で紹介する AWS サービスを起動する際には、料金がかかります。builders.flash メールメンバー特典の、クラウドレシピ向けクレジットコードプレゼントの入手をお勧めします。
builders.flash メールメンバー登録
TEAM リリースの背景
「管理者権限を恒久的に付与するのは避けたい。でも、柔軟に昇格できる仕組みがない」というニーズに対し、最小権限の原則(PoLP) を実現するベストプラクティスの 1 つとして提供されたものです。
TEAM のリリースは、単なる便利ツールの提供ではなく、「クラウドセキュリティの標準を引き上げる」という明確なメッセージでもあります。
- セキュリティリスクへの対応強化
- 求められる透明性と説明責任
- そして DevSecOps の浸透による「開発者主導のセキュリティ」
これらの時代的な潮流に対応するために、TEAM のようなアプローチが必要不可欠になりつつあります。
TEAM が活躍するシーン
では、どのようなシチュエーションで TEAM は特に力を発揮するのでしょうか?実際の現場でありがちな状況にフォーカスして解説します。
|
シチュエーション |
TEAM の活用 |
1. 本番環境でのトラブルシューティング |
本番環境で問題が発生。開発者が Amazon S3 バケットや Amazon RDS のデータを確認・修正する必要があるが、常時管理者権限は持っていない。 |
開発者が TEAM 経由で「一時的な管理者アクセス」をリクエストし、承認者が承認すれば、時間制限付きで必要なアクセスのみが付与される。アクセス終了後は自動でロールから削除され、監査ログにも記録が残る。 リスクを抑えてスピーディな対応が可能となり、アクセスログで説明責任を果たせる。 |
2. 定期メンテナンス作業 |
月 1 回の AWS Lambda 関数の更新作業、Amazon ECS タスク定義の更新など、限定的な操作が必要な運用業務。 |
あらかじめ定義された「メンテナンス作業用グループ」への一時参加をリクエスト。特定の時間枠でのみ昇格アクセスを得て作業し、その後は自動的に権限が解除される。 スケジュールベースで計画的な権限付与を行うことができ、作業者に恒久的な Admin 権限を与える必要がなくなる。 |
3. 外部ベンダーや一時的な委託作業員へのアクセス提供 |
社外のセキュリティベンダーや SIer が特定の AWS アカウントに一時的な作業アクセスを必要としている。 |
一時的に必要な IAM Identity Center グループにアクセスを許可し、アクセス期間や対象範囲を厳密に制限可能。作業完了後に自動でアクセスを無効化。 「いつの間にか残っている外部アクセス」を防止し、内部統制・監査にも強い対応が可能となる。 |
TEAM は、単なるアクセス制御ツールではなく、「日常業務とセキュリティ強化の架け橋」となります。さまざまなシチュエーションにおいて “必要なアクセスを、必要なときだけ、正しく記録して与える” という運用を、無理なく組織に定着させる仕組みそのものです。
2. 定期メンテナンス作業
月 1 回の AWS Lambda 関数の更新作業、Amazon ECS タスク定義の更新など、限定的な操作が必要な運用業務。
あらかじめ定義された「メンテナンス作業用グループ」への一時参加をリクエスト。特定の時間枠でのみ昇格アクセスを得て作業し、その後は自動的に権限が解除される。
スケジュールベースで計画的な権限付与を行うことができ、作業者に恒久的な Admin 権限を与える必要がなくなる。
3. 外部ベンダーや一時的な委託作業員へのアクセス提供
社外のセキュリティベンダーや SIer が特定の AWS アカウントに一時的な作業アクセスを必要としている。
一時的に必要な IAM Identity Center グループにアクセスを許可し、アクセス期間や対象範囲を厳密に制限可能。作業完了後に自動でアクセスを無効化。
「いつの間にか残っている外部アクセス」を防止し、内部統制・監査にも強い対応が可能となる。
TEAM の全体構成をざっくり理解する
TEAM は、AWS が提供するマネージドサービスとサーバーレスアーキテクチャをベースに構築されています。AWS Lambda、Amazon API Gateway、Amazon DynamoDB などを組み合わせることで、インフラの運用コストや保守負荷を最小限に抑えた構成となっています。
主な構成コンポーネント
コンポーネント |
役割 |
IAM Identity Center |
AWS アカウントへの実際の権限付与 |
Amazon Cognito |
TEAM Web アプリケーションのユーザー認証 |
Amazon DynamoDB |
リクエストやセッションのメタデータ保存 |
Amazon API Gateway + AWS Lambda |
バックエンド API 処理 (リクエスト管理、承認処理など) |
Amazon EventBridge + AWS Lambda |
スケジュール管理 (期限切れアクセスの自動削除など) |
Amazon S3 + Amazon CloudFront |
TEAM アプリケーション静的Webページ (申請画面・管理画面) の配信 |
AWS Step Functions |
リクエストの通知、承認など一連の処理ワークフロー |
TEAM のデプロイ方法
TEAM はオープンソースソリューションのため、機能の追加や修正に伴いデプロイ手順も更新されます。最新の詳細な手順は TEAM公 式のデプロイガイドをご参照ください。本項では、TEAM を利用するための前提条件などの情報を記載します。
TEAM をデプロイするための前提条件:
AWS Organization
セットアップ済みの IAM Identity Center
TEAM アプリケーション専用 AWS アカウント
AWS Cloudtrail Lake イベント データストア
Organization 管理アカウントへの管理権限をもつ IAM ユーザー
AWS CLI を実行するための名前付きプロファイルが必要
TEAM アプリケーション専用アカウントへの管理権限をもつ IAM ユーザー
AWS CLI を実行するための名前付きプロファイルが必要
AWS CLI、git-remote-codecommit、jq を実行できる環境
AWS CloudShell を利用可能
補足:TEAM をデプロイガイドの注意点
TEAM 公式のデプロイガイドではデプロイ用のスクリプトを実行は、どの AWS アカウントで行うべきかについては言及されていません。Organization 管理アカウントへの管理権限をもつ IAM ユーザー、TEAM アプリケーション専用アカウントへの管理権限をもつ IAM ユーザーそれぞれの名前付きプロファイルがセットアップされた環境であればどの AWS アカウントでも実行可能です。
TEAM 利用の流れ (ワークフロー)
まとめ
権限昇格の運用を仕組み化したい方にとって、TEAM は実用性の高い選択肢です。承認フローや自動失効など、現場で求められる機能が揃っており、セキュリティとスピードを両立できます。検証環境から気軽に導入できます。
IAM ロールの恒久付与に不安を感じている方は、TEAM の導入を検討してみてください。必要なときだけ、安全に昇格できる仕組みがあることで、開発・運用チーム双方の安心感と監査対応力が高まります。まずは動かして学ぶのがおすすめです。
本記事の内容が、アクセス管理や権限運用に潜むリスクを見直すきっかけとなり、セキュリティ強化に向けた一歩につながれば幸いです。
筆者プロフィール
山口 正徳
フォージビジョン株式会社 / AWS Community Hero
大手 SIer 、フリーランスを経て、クラウドインテグレーションを手掛けるフォージビジョン株式会社にインフラエンジニアとして入社。現在、同社で AWS 事業部長を務める。
JAWS DAYS 2014 への参加をきっかけに AWS に興味を持ち、2016 年から本格的に AWS を使いはじめる。2018 年から JAWS-UG 千葉支部の運営に携わるように。現在「APN Ambassador / 2020 APN AWS Top Engineers」であり、全世界共通の認定プログラムである AWS 公式の「APN Ambassador」のひとりでもある。

Did you find what you were looking for today?
Let us know so we can improve the quality of the content on our pages