AWSの新サービス “DevOps Agent” にIAMロールの整理整頓を手伝ってもらう

AWSの新サービス "DevOps Agent" にIAMロールの整理整頓を手伝ってもらう

はじめに

みなさんこんにちは!エンジニアのおすずです。
今回は、AWS re:Invent 2025 で発表された新サービスの中で一番気になったAWS DevOps Agentを実際に試してみました。

AWS re:Inventとは

Amazon Web Services (AWS)が主催する世界最大級の公式カンファレンスです。毎年米国ラスベガスで開催され、世界中から数万人規模の参加者が集まります。

AWS re:Inventでは、新サービス・新機能の発表を中心に、AWSの思想や実運用に踏み込んだ講演が多数行われ、今後のAWSの方向性を把握する重要な場となっています。

引用:https://reinvent.awsevents.com/

DevOps Agentは、今までのAWS監視ツールと異なり、“常時オンの自律的 DevOps エージェント” として設計されています。
まだプレビュー期間なので無料で試すことができ、us-east-1リージョンのみで利用可能です。

社内のエンジニアに、「DevOps Agentでどんなことできたら便利だと感じますか?」と聞いてみたところ、

  • ログの分析
  • IAMの精査(未使用ロールの消去、ロールの不足の確認など)

といった声があがりました。

そこで本記事では不要なIAMロール / ポリシーの精査がどこまでできるかを検証してみようと思います。

DevOps Agentとは

AWS DevOps Agent は、インシデントの検出・解析・解決支援を自律的に行う AI エージェントで、AWS Frontier Agentsの1つです。

AWS Frontier Agentsとは

AWS が2025年の re:Invent で発表した、次世代の自律型 AI エージェントの総称。

従来の単発タスク支援型 AI ではなく、長時間・大規模に自主的に動作し、チームの一員のように複雑な仕事を完結させることを目指した新クラスのエージェントとのこと。

直近で発表された、Kiro Autonomous AgentやAWS Security Agentもこれに含まれるそうです。

参考: https://aws.amazon.com/jp/ai/frontier-agents/

ポータルサイトを通じて利用でき、自然言語でエージェントに調査を依頼することが可能です。

実際の画面はこちら↓

公式ドキュメントでは、従来の CloudWatch アラームや DevOps Guruと違い、監視データだけでなく、

  • オブザーバビリティツール(CloudWatch、Datadog等)
  • コードリポジトリ(GitHub / GitLab)
  • CI/CD パイプライン
  • ランブックやドキュメント

などを横断的に関連付けて解析し、人間のDevOpsエンジニアのようにインシデント対応を実行すると説明されています。

具体的には:

  • アラート受信時に即時調査開始
  • 根本原因分析(Root Cause Analysis)
  • 修復アクションの提案
  • 将来のインシデントを防ぐための推奨事項生成

といった機能が含まれています。

(引用:https://aws.amazon.com/jp/devops-agent/

試してみる

セットアップ

セットアップはとても簡単です。

マネジメントコンソールの検索バーで「DevOpsAgent」と検索し、「Create agent space」ボタンを押下します。

その後の画面で設定する項目は主に以下の4つだけでした。

  • Agent Space details(Spaceの名前など)
  • Give this Agent Space AWS resource access(Agent Spaceへのロール割り当て)
  • Include AWS tags [optional](任意でタグの設定が可能)
  • Enable web app(ポータル用のロールの作成)

全てデフォルト値で設定したのち、今回はアカウント内のIAMロールのポリシーを精査したいので、以下のポリシーをAgent Spaceのロールへ追加しました。

{
  "Sid": "AllowIAMReadOnlyAudit",
  "Effect": "Allow",
  "Action": [
    "iam:ListRoles",
    "iam:GetRole",
    "iam:ListPolicies",
    "iam:GetPolicy",
    "iam:GetPolicyVersion",
    "iam:ListAttachedRolePolicies",
    "iam:ListRolePolicies",
    "iam:GetRolePolicy"
  ],
  "Resource": "*"
}

調査を実行

さて、自分のアカウントには、過去色々なハンズオンで作成されたリソースたちが削除されています。ただ中途半端にIAMやCFnスタックだけ残っていたりする…という散らかった状況なので、特にリソースは用意せずこのまま調査を実行してみます。

ポータル画面の「Start an investigation」をクリックし、とりあえず「investigation details」だけ入力して調査を始めてみます。

※使用したプロンプト(現時点では日本語非対応のため英語で入力しました)

There is a potential risk of unintended privilege usage due to overly permissive IAM policies.
We would like to investigate which IAM policies are not actively used and may pose a security risk.

(日本語:IAMポリシーの精査をして、未使用ロールや過剰権限の可能性があるロールを洗い出してください)

何やら解析が始まります。(Chromeの翻訳で日本語にしてます)

途中動きがなくなったので不安になり、右隣のチャットで調査が完了したのかと聞いてみました。

待つこと約1分、Agentからの回答が返ってきました。

以下4つのロールを洗い出してくれたようです。

  1. AdministratorAccess(AWS管理ポリシー)が付与されていながら、今年4月から半年以上未使用だったロール。EC2 からAssumeRole可能のため、放置すると権限昇格リスクがある
  2. 廃止された GitLab インスタンスから残存しているS3アクセス用のロール(GitLabのセルフホストのハンズオンを行った時の名残)。
    カスタムポリシーは適切にバケット限定だが、ロール自体は不要で攻撃対象になりうる
  3. 上記と同様のロール
  4. 未使用の AmazonECSTaskExecutionRolePolicy が付与されたロール。
    ECSタスク自体は ecsExecTaskRole を使用中のため、未使用ロールとして削除候補となる、もしくは設定不整合の可能性がある。

しっかりみてくれてますね。Gitlabのハンズオンのことなんてすっかり忘れていましたし、未使用のロールにAdministratorAccessポリシーが付与されているのは、まずいですね。

調査いただいた内容をもとに、IAMをしっかり整理したいと思います!

余談

最初は「未使用 IAM ポリシーの一覧化して」と、ストレートにお願いしてみました↓

 Investigation details: We would like to conduct a review of IAM policies associated with existing resources and users. Please identify and list any unused IAM policies across all resources.

(日本語:既存のリソースおよびユーザーに関連付けられた IAM ポリシーをレビューしたい。すべてのリソースに対して、未使用の IAM ポリシーを特定し、一覧化してください。)

しかし DevOps Agent は 運用インシデントの調査や根本原因分析 を主な目的として設計されているため、この依頼内容は本来の設計目的とは少しズレている、と指摘されてしまいました。

さらに、 IAM ポリシーのレビューに対しては、以下の選択肢を提案してくれました。

  • より包括的な未使用アクセス分析にはAWS IAM Access Analyzerを使用する
  • IAMコンプライアンス向けに特別に設計されたAWS Configルールを使用する

なるほど…

DevOps Agent はあくまで インシデントの検出・原因分析に特化した自律型エージェントなんだな、と改めて理解しました。今回のように少し用途がズレた依頼だと、代替手段を提案してくれます。

まとめ

今回、AWS re:Invent 2025 で発表された新サービスの中で一番気になったAWS DevOps Agentを実際に試してみて、自然言語で調査を依頼して1分くらいできちんと調査してくれたので純粋に感動しました。速い!

IAMの精査などは自分でやろうと思ったら時間がかかる上、実運用中のプロジェクトともなるとなおさら手が回らないと思います。

そんな手が回らない時に、調査のハードルを下げてくれるサポート役としても使えるのかなと思いました。

何より自然言語で依頼できるのが良いですね。

障害発生時の調査も迅速化できるかもしれません。
次は、ログの分析もしてみたいと思います!

ではまた👋

実際に使用するAWS環境ってどんな感じ?〜Webアプリ編〜の記事サムネイル