Upgrade to Pro — share decks privately, control downloads, hide ads and more …

猫でもわかるKiro CLI(セキュリティ編)

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Hiroo Katoh Hiroo Katoh
February 12, 2026

猫でもわかるKiro CLI(セキュリティ編)

猫でもわかる Q CLI三部作の続きです。

Avatar for Hiroo Katoh

Hiroo Katoh

February 12, 2026
Tweet

More Decks by Hiroo Katoh

Other Decks in Technology

Transcript

  1. © NTT TechnoCross Corporation 猫でもわかる Kiro CLI( セキュリティ編 ) 2026/02/12

    Security -JAWS 【 第40 回】 NTT テクノクロス 株式会社 加藤 洋雄
  2. © NTT TechnoCross Corporation 2 自己紹介 ◼氏名:加藤 洋雄 (X :

    @kamogashira) ◼所属: NTT テクノクロス株式会社 ⚫AWS 業務歴約5年 ◼AWS 認定 ⚫2024 、 2025 Japan AWS All Certifications Engineers ◼Security ーJAWS 関連 ⚫2025 年11 月8日の[IAM スペシャル !]Security -JAWS に現地参加 ◼好きな AWS サービス: Kiro CLI ◼うさぎのけんた (ネザーランドドワーフ )の飼い主 けんたのオリジナルイラストです X のアイコンにも使用しています
  3. © NTT TechnoCross Corporation 3 はじめに ◼本発表はKiro CLI( 旧Amazon Q

    Developer CLI 以降Q CLI と略す )についての セキュリティ関連について主に紹介します ◼本発表は「猫でもわかる Amazon Q CLI 」 3 部作の続編「セキュリティ編」です 【 過去の発表一覧】 # 発表日 内容 1 2025/07/28 JAWS -UG AI/ML #29 猫でもわかる Q Developer CLI(CDK 開発編)+ほんのちょっとだ けKiro 1’ 2025/07/31( クラメソさん主催 ) AWS インフラ × AI 活用 LT ! 猫でもわかる Q Developer CLI(CDK 開発編)+ちょっとだけ Kiro →#1 に更なるノウハウ、 Kiro 説明追記した内容 (*1) 2 2025/10/29 JAWS -UG AI/ML #32 猫でもわかる Q Developer CLI 解体新書(Q CLI の取説的サイト ) →#1 、2の続編として Q CLI の仕様、 Tips 紹介(*2) 3 2025/11/12 JAWS -UG 朝会 #75 猫でもわかる Q Developer CLI( できる子編 )( *3) →なるべく幅広い層に Q CLI で出来る事を紹介した内容 *1 : https ://qiita .com/kamogashira/items/ 672 fbc 6cbc 48 c 28364 ff *2 : https ://qiita .com/kamogashira/items/ec 2ed 9 b 39052 d 55 d 4 f 13 *3 : https ://qiita .com/kamogashira/items/ 95 cc 366 b 4 a 1815 bc 4 c50
  4. © NTT TechnoCross Corporation 4 ◼話すこと ⚫AWS 開発における私の Kiro CLI

    の適用事例 ⚫Kiro CLI を使う上で知っておいて欲しいこと ⚫Kiro CLI の基本的なAgent ( セキュリティレビュー用 )作成例、レビュー結果 ◼話さないこと ⚫LLM 、 AI Agent 全般について ⚫Kiro CLI の一般的な設定(コンテキストファイル等 )、 機能 ◼補足 ⚫説明は割愛しますが AI Agent 関連情報も資料には含めています 今日話すこと・話さないこと
  5. © NTT TechnoCross Corporation 5 ◼2025 年11 月8日の[IAM スペシャル !]Security

    -JAWS に現地参加 ⚫あまりの専門性の高い内容に「おそるべし Security JAWS 」と震撼! ⚫自分なんか一生Security -JAWS で発表できることは無いと悟る ◼登壇のきっかけ ⚫IAM スペシャル 後の懇親会で運営の臼田さん と お話し していて「 Q CLI の セキュリティなら もしかしていけるかも?」と思い IAM スペシャルの数日後 に 応募させて頂きました Security JAWS で本発表を行うきっかけ
  6. © NTT TechnoCross Corporation 6 ◼Kiro CLI の前身Q CLI はOSS

    として GitHub でソースが公開されていました ◼私はQ CLI を使って Q CLI のソース解析サイト 「 猫でもわかる Q Developer CLI 解体新書」 (GitHub) を作っていました ◼2025 年11 月17 日Kiro CLI にリブランディング と同時 にクローズド開発に ! ◼登壇申込み時はQ CLI 解析新書情報をベースに Q CLI のセキュリティ設定 、 対策を 説明する 予定でした が、 ソースベースの解説ができなくなりました お詫び その1 (当初の予定がちょっと 崩れました ) https ://github .com/kamogashira -sys/q -cli -docs まぁ Kiro CLI のセキュリ ティ設定や、 mcp サーバの セキュリティ設定を紹介す れば需要があるはず
  7. © NTT TechnoCross Corporation 7 ◼Kiro CLI v 1.25 .0(2026

    年2月5日リリース )でhelp Agent(Kiro CLI のマニュ アルに特化した対話型ヘルプデスク )が実装されました ◼Kiro CLI セキュリティ 設定は「 /help コマンドで調べる+ 設定指示する 。 以上」 と なりました お詫び その2 (修正した 予定が完全に崩れました ) 詰んだ 質問すれば優先度付きで 設 定項目を懇切丁寧に教えて くる +設定ファイルの 修正 もして くれます ※詳細は付録1に記載しま した
  8. © NTT TechnoCross Corporation 8 ◼Kiro CLI 自体の説明をちょっと多めにしています ⚫各種JAWS -UG

    参加時の雑談、社内での勉強会等でも Kiro CLI を使って いる 人がまだまだすくないと感じて います ⚫だったら Kiro CLI を使って AWS セキュリティ強化をしてみたいと思っても ら う ことが 重要だと 考えました と言う事で本日の発表内容の補足
  9. © NTT TechnoCross Corporation 9 今日持ち帰って欲しいこと 1. Context Window の仕組み・

    大切さ 2. Plan Agent(/plan コマンド )の偉大さ 3.Kiro CLI の専用Agent は簡単に作れる (発表後半でAWS セキュリティレビュー用 Agent 作成例を紹介します )
  10. © NTT TechnoCross Corporation 11 私にとって Kiro CLI は無くてはならい 相棒になっています

    Kiro CLI を使っていない 方は、 これ をきっかけ にぜひ使って みてください
  11. © NTT TechnoCross Corporation 12 Q CLI 使い始めのきっかけ ◼2025 /06

    /09 : JAWS -UG 横浜 # 85 Build Games with Amazon Q CLI( *1) に参加 ⚫Amazon Q CLI でゲームを作ろう Tシャツキャンペーン (*2) のハンズオン ⚫国旗当てクイズゲーム作成。参加内容ブログ記事 (*3) 執筆 ↓ 〇無事にTシャツをゲット → ◼日本語の指示だけでローカル環境で動作するゲーム (html 、 JavaScript 、 CSS ) が作れた! *1 : https ://jawsug -yokohama .connpass .com/event/ 355243 / *2 : https ://aws .amazon .com/jp/blogs/news/build -games -with -amazon -q -cli -and -score -a -t-shirt/ *3 : https ://qiita .com/kamogashira/items/ 59 c3 e641 d 984920 c22 a 3
  12. © NTT TechnoCross Corporation 13 Kiro CLI の更新履歴(主な機能追加紹介) ◼2025 年11

    月17 日にKiro CLI にリブランディング 。 最近の機能追加が熱い! Version リリース日 主なリリース内容 v1.25.0 2026/02/05 ・ Help Agent : Kiro CLI に関する質問に回答 ・ Enterprise Web Tools Governance :管理者が web_search と web_fetch ツールを組織全体で無効化可能 v1.24.0 2026/01/16 ・ Granular URL Permissions :安全な Web 情報取得を実現 ・ Skills :大規模ドキュメント向けの段階的コンテキストロード機能 v1.23.0 2025/12/18 ・ Plan Agent :アイデアを構造化された実装計画に変換 ・ Grep/Glob Tools :高速ファイル検索ツール( .gitignore 対応) v1.22.0 2025/12/11 ・ Code Intelligence : Language Server Protocol (LSP) 統合に よる高精度コード理解機能 v1.21.0 2025/11/25 ・ web_search/web_fetch ツール導入 リアルタイムインターネット情報アクセス機能 v1.20.0 2025/11/17 ・ Kiro CLI 初回リリース。パフォーマンス・品質のバランス最適化 【 主なリリース 一覧】
  13. © NTT TechnoCross Corporation 14 補足: Kiro CLI の情報収集先(説明割愛:後で読んでください )

    ◼Kiro CLI の情報なら AWS ジャパンで Kiro CLI のコントリビュータをしている 小西さんのブログをチェック し ましょう (公式サイトより格段に分かり易い解説 ) https ://zenn .dev/konippi
  14. © NTT TechnoCross Corporation 16 業務でのQ CLI ・ Kiro CLI

    使用実績(2025/07 ~) # 工程 7月 8月 9月 10 月 11 月 12 月 1月 2月 3月 1 社内投資案件: Azure →AWS 移行 2 RFP 入札案件見積対応: EC2 →EKS +Fargate 3 社内自部署投資案件: Data 分析基盤検証環境構築 4 社内投資案件: AI エージェント商品開発 5 社外S I案件: EC2 オーケストレーション ◼#1 :自社製品投資案件 (Azure →AWS 移行でのAWS 設計、 CDK 開発、構築 ) ◼#2 : RFP 入札案件対応(MCP サーバ作成、 CDK ベースでの AWS 料金見積) ◼#3 :自部署投資案件 (データ分析基盤の検証環境構築: CDK 開発、構築 ) ◼#4 :社内投資案件 (AI エージェント製品開発の PoC 作成: CDK 開発、 構築) ◼#5 :社外 SI 案件(サーバーレス構成の EC2 オーケストレーション: CDK 開発、 構築) 過去の同規模開発と比較して 総稼働時間半 分以下でCDK 開発・ AWS 環境構築完了 Kiro CLI のバッチ処理環境構築 Strands+AgentCore 開発 AWS 初学者にKiro CLI の英才(?) 教育を行い 1か月ちょっと でAWS 開発メンバーとして 戦力化 社外SI 案件での初利用
  15. © NTT TechnoCross Corporation 17 AWS 初学者へのKiro CLI 導入事例(前頁No.# 5:説明割愛。後

    で読んでください ) ◼前提:自分の設定 (コンテキストファイル 、 MCP サーバ設定等)をコピーして 、 最初から AWS CDK 開発に特化した Kiro CLI 環境を渡す+ 毎日1 H レクチャ ◼初期: 既存CDK プロジェクト +構築済みPoC をKiro CLI を使って調査 (1 Week) ◼中期: CDK から設計書 、 手順書をKiro CLI を使って作成 。 自分の意図した内容の 成果物を作る 練習。 設計書なのでセルフレビューできるのが ミソ (1 .5 Week) ◼後期:ハンズオン CDK 教材を利用してソース 修正、 デプロイ練習 (2Days ) ◼実践: CDK ソース修正 、 画面(React) 既存修正+新規作成、 Lambda 開発、 開発環境構築(CDK デプロイ 、 トラブル 解析、 修正) 1月開始PJ で2月頭にAWS 初学者さんが言った一言 「 もう Kiro CLI 無でのAWS 開発は考えられないです 。 オンプレ の仕事時と比べて約 1/3 の時間で結果だせてます 」 【 補足】 オンプレ開発経験は有りで業 務でAWS 利用は今回初めて
  16. © NTT TechnoCross Corporation 18 私のKiro CLI を使った CDK 開発の流れ

    ◼開発フロー 基本設計書 システム構成図 要件定義書 CDK ソース 詳細設計書 パラメータシート デプロイ手順書 運用・監視手順書 CDK デプロイ 疎通・負荷試験 最終品質評価 テストコード レビュー計画 レビュー実施 品質評価 レビュー計画 レビュー実施 品質評価 問題対応 ①設計 ②製造 ③ドキュメント作成 ④試験 ①これらは Kiro( 無印) requirements.md 、 design.md を作って もらうのもお勧め ②製造工程以降は稼働の約8割はレビュー関連作業になった感じ 分担 ③ドキュメントは CDK からリバース ④Kiro CLI が大活躍! ユニットテスト 人間 Kiro CLI 設計書を修正し てCDK を修正
  17. © NTT TechnoCross Corporation 19 AI Agent に書かせる コード も

    可読性は必要(説明割愛:後で読んでください ) ◼2025 年7月に開催された AWS CDK Conference Japan 2025( *1) での 弊社渡邉(X : @_watany : JAWS -UG 東京支部運営)さん 発表内容(*2) に答えが あります (※個人の感想です) *1 : https ://jawsug -cdk .connpass .com/event/ 356357 / *2 : https ://speakerdeck .com/watany/do -we -need -cdk 2
  18. © NTT TechnoCross Corporation 20 誤解を恐れずに言うと Claude Clode ≒ Kiro

    CLI GitHub とC odeCommit の関係のような もの Claude Code のノウハウは Kiro CLI でもだいたい使えます Kiro CLI ざっくり説明 (※あくまでも個人の感想 です)
  19. © NTT TechnoCross Corporation 21 有識者情報を最大限活用しましょう (説明割愛:後で読んでください ) ◼X でみのるんさん

    (*0:日本人唯一のAWS AI Hero) の発信情報をチェックしよう ◼Claude Code の設定はほぼそのまま使えます (CLAUDE .md 相当は手動で 作成が必要) ◼他にも AI Agent を使う上での情報発信が多数 (*0 )X : @minorun 365 (*1 )Qiit 記事: https ://qiita .com/minorun 365 /items/ 3711 c0 de 2e2558 adb 7 c 8 (*2 )GitHub : https ://github .com/minorun 365 /my -claude -code -settings
  20. © NTT TechnoCross Corporation 24 Kiro CLI はCDK 開発が大得意!(※個人の感想です) ◼AWS

    で必要なコードは主に IaC なので複雑なロジックは必要とされない ⚫通常のプログラム開発だと AI Agent が生成したソースコードが特許を侵害して いないかの確認が必要になってくる ◼AWS には膨大な知識 ベース がある ⚫マニュアル 、 GitHub 上サンプル 、 AWS Blog などが あり 、 MCP サーバを使 っ てベストプラクティス 、 GitHub 上のAWS 提供サンプルソース を参照して高品 質なソースコードを生成しやすい
  21. © NTT TechnoCross Corporation 25 AWS の知識を実践活用しやすい (※個人の感想です) ◼AWS コマンド

    、 API を実行して AWS 環境の調査、 操作ができる ⚫CDK デプロイ時のエラーで時間が溶けることが大幅に 減らせます (CloudWatchLogs 分析も得意です ) ⚫同様に環境構築後の疎通試験の時間も大幅に減らせます ◼CDK リポジトリを正とすることでドキュメント作成稼働が減らせます ⚫パラメータシート 、 構築手順書、 運用・ 監視手順書はKiro CLI でリバース生成 ⚫上記ドキュメントの最新化が自動化できる
  22. © NTT TechnoCross Corporation 27 Context Engineering (説明割愛:後で読んでください ) ◼AI

    Agent を使うには Context Engineering の理解は必須です ◼弊社渡邉さん が1/21 に某所で 行った Agent Coding ワークショップ 資料(公開版) が超おすすめです 。 https ://speakerdeck .com/watany/agentic -coding -workshops -20260121
  23. © NTT TechnoCross Corporation 28 Context Window のし くみ (渡邉さん資料抜粋

    ) ◼Context :プロンプト+外部情報 ◼Context Window : LLM の理解できる トークンの総量 ◼コンテキストソースを処理するための容量が限られています https ://blog .langchain .com/context -engineering -for -agents/ サイズの上限があること を理解しておけば OK!
  24. © NTT TechnoCross Corporation 29 Kiro CLI でのContext Window 利用状況の確認方法

    ◼/experiment コマンドで Context Usage Indicator のON は必須 Context Usage Indicator のON で常時確認
  25. © NTT TechnoCross Corporation 30 Q CLI 時代のContext Window の実装(説明割愛:後で読んでください

    ) ◼Context ファイルと 、 会話履歴・ 応答を分けて管理 (Kiro CLI になってこのあたりの実装が変更になったかは不明 ) Context Window( 100 % ) Context ファイル (最大75 % ) ・ README .md ・ .amazon /rules/**/* .md 会話履歴・ 応答(残り 25 % 以上) ・ ユーザーザ質問 ・ AI の応答 Q CLI 解体新書作成時 のソースコード調査結果
  26. © NTT TechnoCross Corporation 31 Context Window の上手な使い方 その1 (説明割愛:後で読んでください

    ) ◼約70 % くらいで自動 compaction 発生 → 処理途中で発生させないのがコツ ◼50 % ~60 % ぐらいになったら手動で /compact コマンド実行を推奨 ◼ソース修正時に期待した結果にならい事が複数回あった時は /clear コマンド実行 を検討
  27. © NTT TechnoCross Corporation 32 Context Window の上手な使い方 その2 (説明割愛:後で読んでください

    ) ◼メインの会話から一時的に分岐して 、 別のトピックや質問をする場合は 、 /tangent モード (別Context Window) にする ◼コンテキスト節約のため 、 調査やデバッグにはサブエージェントを活用する ◼Skills は必要必要な時に ON にして 、 使い終わったら OFF にする (自動で ON/OFF されない )
  28. © NTT TechnoCross Corporation 34 Plan Agent(/plan コマンド ): v1.23.0(2025/12/18)

    実装 ◼Plan = 実装したがりの Agent に「 まず考えさせる 」 機能 ◼コードベース全体を理解 ◼ファイルを一行も触らせない ◼要件理解と戦略作成に専念 https ://docs .cline .bot/features/plan -and -act AI Agent でのソース修 正は難易度高。 調査不足 による低品質コード生成 をかなり軽減 できる (※ 個人の感想です)
  29. © NTT TechnoCross Corporation 35 LLM のモデルでも考える力がちがいます (※個人の感想です) ◼既存システムの 改造・

    機能追加などの時は Opus 4.6を使う !(Opus 4.5と同一料金 ) (新規コード作成時もかなり差は感じます ) 人間に例えると 【 Sonnect 4.5 】 ◼人間開発者だと開発歴 2 年ぐらい ◼視野が狭い ◼集中力が続かない ◼Opus と比較して手を抜くことが 多い 【 Opus 4.6 】 ◼人間開発者だと開発歴 5 年以上 ◼俯瞰して CDK プロジェクトを 調査できる ◼集中力が持続する ◼基本動作がしっかりしている お金で時間が買えます まだ約1週間しか使ってい ませんが衝撃的に優秀です
  30. © NTT TechnoCross Corporation 37 Kiro CLI を使う上で知っておきたい主な設定項目 ◼個人的にKiro CLI

    で理解しておいた方がいいと思う設定 ◼アドインツール設定 (ファイル操作の権限設定 ) ◼Agent 作成方法 ◼Agent のプロンプトファイルの外部ファイル化 ◼MCP サーバ設定方法 ◼ファイル保存ルールの設定 ◼hooks 設定方法 ◼出力フォーマット指定 Kiro CLI 自身に設定させ よう 結構面倒くさい それなら
  31. © NTT TechnoCross Corporation 38 ⑧ 手順1:最小構成の Agent を作成 ◼学べること

    【 Kiro CLI への指示】 ◼Agent 設定ファイルの基本構造 ( JSON 形式) ◼name, description, prompt, tools の役割 ◼allowedTools による自動承認の 仕組み ( ユーザー確認なし実行可能ツール ) Kiro CLI の公式ドキュメント ( https://kiro.dev/docs/cli/custom -agents/configuration - reference/ ) を確認し、 Kiro CLI のAWS セキュリティレビュー専門 のAgent 設定ファイル sec -review.json を作成してください。 【 最小構成】 - 名前: sec -review - 説明: AWS セキュリティレビュー専門家(学習用・最小構成) - プロンプト : 「あなたは AWS セキュリティレビューの専門家です。日 本語で応対してください。」 ※最近のLLM にはロール指定は不要です - ツール : fs_read, grep, glob - 自動承認ツール( allowedTools ) : fs_read, grep, glob 【 ファイル配置 】 ー Agent 設定: ~/.kiro/agents/sec -review.json 【 確認方法】 作成後、以下のコマンドで確認: kiro -cli agent list kiro -cli agent validate -- path ~/.kiro/agents/sec - review.json 使用可能ツールは最小限に fs_read 、 grep 、 glob だけ指定 ① ② ③ ④ ⑤ ⑥ ⑦
  32. © NTT TechnoCross Corporation 39 手順2: ファイル 書込み権限を追加 ◼学べること 【

    Kiro CLI への指示】 ◼toolsSettings による権限制御 ◼allowedTools による自動承認の 仕組み ◼最小権限の原則の実装方法 sec -review Agent に以下の機能を追加してください。 【 追加するツール 】 - fs_write: ファイル書込み 【 書込み制限( toolsSettings ) 】 - fs_write.allowedPaths: ~/ai -work/**, ~/ai -plan/** - それ以外は書込み禁止 【 自動承認ツール( allowedTools ) 】 - fs_read, grep, glob (確認なしで実行) - fs_write は毎回確認( allowedTools に含めない) 【 重要】 - allowedTools フィールドに指定したツールは自動承認される - toolsSettings で権限制御(書込み可能パスなど)を設定 【 確認方法】 cat ~/.kiro/agents/sec -review.json で設定を確認してください。 fs_write には書込み可能なパス指定を し、意図しないファイル書込みを防止 ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  33. © NTT TechnoCross Corporation 40 手順3:プロンプトを外部ファイル化 ◼学べること 【 Kiro CLI

    への指示】 ◼file :// URI によるプロンプト参照 ◼プロンプトの外部管理のメリット ◼複数Agent でのプロンプト共有方法 sec -review Agent のプロンプトを外部ファイルに分離してください。 【 プロンプトファイル 】 - パス: ~/.kiro/prompts/sec -review -prompt.txt - 内容: - AWS セキュリティレビューの専門家 - AWS Well -Architected Framework に基づくレビュー - 日本語で応対 - レビュー結果は ~/ai -work に保存 【 Agent 設定の変更】 - prompt フィールドを "file://~/.kiro/prompts/sec -review - prompt.txt" に変更 - ※ file:// の後はホームディレクトリからの相対パス( ~)が使用可 能 【 確認方法】 cat ~/.kiro/prompts/sec -review -prompt.txt でプロンプト内容を確認してください。 設定用のJSON ファイルと分離す ることでプロンプトのメンテナンス 性を向上させる ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  34. © NTT TechnoCross Corporation 41 手順4: AWS MCP Server を追加

    ◼学べること 【 Kiro CLI への指示】 ◼mcpServers の設定方法 ◼外部API との統合 ◼タイムアウト設定の重要性 sec -review Agent にAWS MCP Server を追加してください。 【 MCP サーバー設定】 - サーバー名: aws -mcp - コマンド : uvx - タイムアウト : 30000 ( 30 秒) - 引数: - mcp -proxy -for -aws@latest - https://aws -mcp.us -east -1.api.aws/mcp - -- metadata - AWS_REGION=us -west -2 【 プロンプトに追加 】 - AWS MCP Server で公式ドキュメントを確認する手順を追加 - Well -Architected Framework を参照する指示を追加 【 確認方法】 kiro -cli -- agent sec -review でAgent を起動し、 MCP サーバーがロードされることを確認してください。 AWS MCP Server (ベータ版 ) でAWS 一次情報へアクセス ※補足 AWS がGItHub 上で公開してい る一連のMCP サーバ群の総称は AWS MCP Server s です ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  35. © NTT TechnoCross Corporation 42 手順5:ファイル保存ルールを追加 ◼学べること 【 Kiro CLI

    への指示】 ◼トレーサビリティの確保 ◼ファイル命名規則の重要性 ◼バックアップ戦略 sec -review Agent のプロンプトに以下のファイル保存ルールを追 加してください: 【 ファイル保存ルール 】 1. 日付フォルダの作成 : - date +%Y%m%d で取得した日本時間の日付でフォルダを作成 - 例: ~/ai -work/20260207/ 2. レビュー記録ファイル名 : - YYYYMMDDHHMM -security -review.md 形式 - 例: 202602071430 -security -review.md 3. バックアップ推奨 : - 重要な発見事項は即座にGit 管理下に配置 【 レビュー手順に追加 】 - レビュー開始時に日付フォルダを作成する手順を追加 - レビュー結果を日時付きファイルで保存する手順を追加 【 確認方法】 プロンプトファイルを確認: cat ~/.kiro/prompts/sec -review -prompt.txt 日付ホルダを作ってそこ作成時刻 でソートできるように作成成果物 を格納させるのが私流 ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  36. © NTT TechnoCross Corporation 43 手順6:ツール使用ログを追加 ◼学べること 【 Kiro CLI

    への指示】 ◼hooks の仕組み( postToolUse ) ◼matcher フィールドによるツール パターン指定 ◼監査ログの記録方法 ◼セキュリティツールの使用履歴管理 sec -review Agent にツール使用ログ機能を追加してください。 【 hooks 設定】 - トリガー : postToolUse - 対象ツールパターン( matcher ) : @aws -mcp/* - ※ toolPattern ではなく matcher フィールドを使用 - コマンド : echo "[$(TZ=Asia/Tokyo date '+%Y -%m - %d %H:%M:%S')] AWS MCP tool used: $TOOL_NAME" >> ~/ai -work/tool -usage.log - 説明: AWS MCP ツール使用履歴を記録 【 確認方法】 cat ~/.kiro/agents/sec -review.json でhooks 設定を確認してください。 コマンド実行後に使用ログを記 録するために hooks を指定 ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  37. © NTT TechnoCross Corporation 44 手順7:出力フォーマットと図解を追加 ◼学べること 【 Kiro CLI

    への指示】 ◼構造化された出力フォーマット ◼技術文書の視覚化手法 ◼初心者にも分かりやすい説明の 重要性 sec -review Agent のプロンプトに 以下を追加してください : 【 出力フォーマット 】 - AWS Well -Architected 分析セクション - 重大な問題( Critical ) - 警告( Warning ) - 推奨事項( Recommendation ) - 参照した 公式情報 【 図解ガイドライン 】 1. 専門用語が出た場合、 AWS MCP で調査して 平易に説明 2. テキストベースの ASCII アートで 視覚化 3. 現状と 推奨の比較図を作成 4. 記号の使用: - → データフロー - 問題点 - ✓ 推奨 - 暗号化 【 レビュー 手順に追加】 - 専門用語の調査ステップ - 図解の作成ステップ 【 確認方法】 プロンプトファイルを 確認: cat ~/.kiro/prompts/sec -review -prompt.txt レビュー結果として確認したい項目 を出力フォーマットとして指定する ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  38. © NTT TechnoCross Corporation 45 手順8:セルフレビュー機能を追加 ◼学べること 【 Kiro CLI

    への指示】 ◼品質保証プロセスの重要性 ◼一次情報による検証手法 ◼レビュー結果の信頼性向上 sec -review Agent のプロンプトにセルフレビュー手順を追加し てください: 【 セルフレビュー手順 】 1. レビュー結果報告書の内容検証 : - AWS MCP Server で公式ドキュメントを参照 - AWS Well -Architected Framework と照合 - 記載内容の正確性を確認 2. ソースコード検証(コードが含まれる場合) : - AWS 一次情報でAPI 仕様を確認 - コードの実行可能性を検証 - パラメータと戻り値の正確性を確認 3. セルフレビュー結果の反映 : - 指摘反映箇所をドキュメント全体で 俯瞰して確認 - AWS MCP Server で再調査 - 修正内容の正確性を確認 - レビュー結果を更新 【 レビュー手順に追加 】 - レビュー結果作成後、セルフレビューを実施 - セルフレビュー 結果を反映してから最終保存 【 確認方法】 プロンプトファイルを確認: cat ~/.kiro/prompts/sec -review -prompt.txt AI Agent は想像で書く事がある のでセルフレビューは必須です ※完成版Agent 、 Prompt ファイルは 資料最後の付録に全文記載 ⑧ ① ② ③ ④ ⑤ ⑥ ⑦
  39. © NTT TechnoCross Corporation 47 対象ポリシー: Lambda 用の単純なIAM Role を試す

    ◼Kiro CLI に「 IAM Role のセキュリティレビューを実施して 」 と依頼する Lambda 作成時に 自動生成されたもの
  40. © NTT TechnoCross Corporation 52 レビュー結果:参照公式情報 ◼確認すべき AWS ドキュメントの URL

    情報も 含まれます 参照ドキュメントは必ず目 を通して再確認しましょう
  41. © NTT TechnoCross Corporation 54 ◼Context Window の状態をいつも意識 して Kiro

    CLI を使いましょう ◼Plan Agent(/plan コマンド )で Kiro CLI により深く 考えさせましょう ◼自分専用のAgent を作ろう 本日のまとめ
  42. © NTT TechnoCross Corporation 56 【 付録】 ・セキュリティ 設定例 ・

    Agent ファイル 例 (sec -review.json ) ・ prompt ファイル 例(aws -sec -prompt.txt) 【 付録】
  43. © NTT TechnoCross Corporation 58 付録1-1: [必須]fs _write.deniedPaths — 機密ファイルの書き込み保護

    json { "toolsSettings": { "fs_write": { "deniedPaths": ["/etc/**", "~/.ssh/**", "~/.aws/**"], "fallbackAction": "deny" } } } ◼指定パスへのファイル 書き 込みをブロックする 。 deniedPaths はallowedPaths より 優先評価される 。 glob パターン ( gitignore 構文) 対応。 【 設定例】 ◼fallbackAction: "deny" でallowedPaths 外への書き込みをプロンプト確認な しで拒否(デフォルトは "interactive" )。
  44. © NTT TechnoCross Corporation 59 付録1-2: [必須] fs_read.deniedPaths — 認証情報の読み取り防止

    json { "toolsSettings": { "fs_read": { "deniedPaths": ["~/.ssh/**", "~/.aws/credentials", "**/.env", "**/*.pem"] } } } ◼指定パスのファイル読み取りをブロックする。 deniedPaths はallowedPaths より 優先評価。 glob パターン対応 。 【 設定例】
  45. © NTT TechnoCross Corporation 60 付録1-3: [必須]execute _bash.denyByDefault: true —

    コマンド実行のホワイトリスト方式 json { "toolsSettings": { "fs_read": { "deniedPaths": ["~/.ssh/**", "~/.aws/credentials", "**/.env", "**/*.pem"] } } } ◼指定パスのファイル読み取りをブロックする。 deniedPaths はallowedPaths より 優先評価。 glob パターン対応 。 【 設定例】 ◼autoAllowReadonly: true で読み取り専用コマンド( ls, cat, pwd, head, tail, find, grep 等)を自動承認。
  46. © NTT TechnoCross Corporation 61 付録1-4: [必須]use _aws.deniedServices — 危険なAWS

    サービスのブロック json { "toolsSettings": { "use_aws": { "deniedServices": ["iam", "organizations", "sts"], "allowedServices": ["s3", "ec2", "lambda", "cloudformation"], "autoAllowReadonly": true } } } ◼指定AWS サービスへの API 呼び出しをブロック。 deniedServices は allowedServices より優先評価 。 【 設定例】 ◼autoAllowReadonly: true ( デフォルト ) で7,069 件の読み取り 専用オペレー ションを 自動承認。
  47. © NTT TechnoCross Corporation 62 付録1-5: [推奨] MCP Registry —

    許可サーバーの一元管理( Pro -tier 向け) bash # レジストリからサーバーを追加 /mcp add # CLI から追加 kiro -cli mcp add -- name git -server ◼Pro -tier ( IAM Identity Center 利用)の管理者が、利用可能な MCP サーバ をレジストリで一元管理する。レジストリモードでは カスタムサーバー の追加不可。 【 利用方法】 ◼管理者がMCP を完全無効化することも可能。
  48. © NTT TechnoCross Corporation 63 付録1-6: [推奨] Web Tools の組織全体無効化(機密環境向け)

    /tools でweb_fetch/web_search が非表示なら 管理者により 無効化済み。 ◼エンタープライズ管理者が web_fetch/web_search を組織全体で無効化できる 。 無効化時はツール一覧に表示されなくなる 。 【 確認方法】 ◼※ 管理者側の無効化手順はKiro CLI ドキュメントに詳細記載なし。組織管理者に 確認が必要。
  49. © NTT TechnoCross Corporation 64 付録1-7: [推奨] web_fetch.blocked — 外部URL

    アクセス制限 json { "toolsSettings": { "web_fetch": { "trusted": [".*docs ¥ ¥ .aws ¥ ¥ .amazon ¥ ¥ .com.*", ".*github ¥ ¥ .com.*"], "blocked": [".*pastebin ¥ ¥ .com.*", ".*paste ¥ ¥ .ee.*"] } } } ◼正規表現パターンで特定 URL へのアクセスをブロック。 blocked はtrusted より 優先。無効な正規表現を blocked に設定した場合、フェイルセーフ として 全URL が拒否される。 【 設定例】 ◼パターンは 自動的に^と $ でアンカーされる 。
  50. © NTT TechnoCross Corporation 65 付録1-8: [推奨] preToolUse フック —

    監査ログ(コンプライアンス要件向け) json { "hooks": { "preToolUse": [ { "matcher": "*", "command": "~/.kiro/hooks/audit -log.sh", "description": " 全ツール操作の監査ログ " } ] } } ◼ツール実行前にカスタムコマンドを実行するフック。全操作の監査ログ記録や 特定 操作のブロック( exit code 2 )が可能 。 【 エージェント構成例 】 ◼matcher: "*" で全ツール対象。 exit 0 で許可、 exit 2 でブロック。
  51. © NTT TechnoCross Corporation 66 付録1-10 : [任意設定] telemetry.enabled: false

    — テレメトリ無効化 ◼匿名利用統計データの 収集を無効化する 。 個人データは 収集されない 。 【 設定方法】 ◼デフォルト : false (無効) bash kiro -cli settings telemetry.enabled false
  52. © NTT TechnoCross Corporation 67 付録1-9: [任意設定] availableAgents / trustedAgents

    — サブエージェント制限 ◼サブエージェントとして利用可能なエージェントを制限する。 glob パターン対応 。 【 設定例】 ◼availableAgents 未設定時は全エージェント利用可能。 trustedAgents 未設定 時は全呼び出しに承認必要。 ◼利用には kiro -cli settings chat.enableSubagent true が必要。 json { "toolsSettings": { "subagent": { "availableAgents": ["research -agent", "code -agent"], "trustedAgents": ["research -agent"] } } }
  53. © NTT TechnoCross Corporation 68 付録2 : 完成版Agent ファイル 例

    (sec -review.json) "glob": { "allowedPaths": [ "~/ai -work", "~/ai -plan" ], "allowReadOnly": true } }, "mcpServers": { "aws -mcp": { "command": "uvx", "timeout": 30000, "args": [ "mcp -proxy -for -aws@latest", "https://aws -mcp.us -east -1.api.aws/mcp", "-- metadata", "AWS_REGION=us -west -2" ] } }, "hooks": { "postToolUse": [ { "matcher": "@aws -mcp/*", "command": "echo ¥ "[$(TZ=Asia/Tokyo date '+%Y -%m - %d %H:%M:%S')] AWS MCP tool used: $TOOL_NAME ¥ " >> ~/ai - work/tool -usage.log", "description": "AWS MCP ツール使用履歴を記録 " } ] } } { "$schema": "https://raw.githubusercontent.com/aws/amazon -q - developer -cli/refs/heads/main/schemas/agent -v1.json", "name": "sec -review", "description": "AWS セキュリティレビュー専門家(学習用・最小構成) ", "prompt": "file://~/.kiro/prompts/sec -review -prompt.txt", "tools": [ "fs_read", "fs_write", "grep", "glob" ], "allowedTools": [ "fs_read", "grep", "glob" ], "toolsSettings": { "fs_write": { "allowedPaths": [ "~/ai -work/**", "~/ai -plan/**" ] }, "grep": { "allowedPaths": [ "~/ai -work", "~/ai -plan" ], "allowReadOnly": true },
  54. © NTT TechnoCross Corporation 69 付録3: 完成版prompt ファイル 例 1/4

    (aws -sec -prompt.txt ) # AWS セキュリティレビュー 報告書 ## 1 . IAM Policy Autopilot 分析 - 分析対象 - 検出された 過剰権限 - 推奨される 最小権限ポリシー ## 2 . 重大な問題( Critical ) 即座に対応が必要な問題 ## 3 . 警告( Warning ) 早期の対応を推奨する 問題 ## 4 . 推奨事項( Recommendation ) ✓ セキュリティ 向上のための推奨事項 ## 5 . 参照した 公式情報 - AWS 公式ドキュメントのリンク - Well -Architected Framework の該当セクション ``` ## 図解ガイドライン ### 1 . 専門用語の調査 - 専門用語が出た場合、 AWS MCP で調査 - 初心者にも 分かりやすい 平易な言葉で説明 - 必要に応じて 用語集セクションを 追加 ### 2 . テキストベースの ASCII アートで 視覚化 - 複雑な構成は図で表現 - 現状と 推奨の比較図を作成 # AWS セキュリティレビュー 専門家 あなたは AWS セキュリティレビューの 専門家です。 ## 役割 - AWS Well -Architected Framework に基づくセキュリティレビューを 実施 - セキュリティのベストプラクティスを 提案 - 潜在的なリスクを 特定し 、 改善策を提示 ## 応対言語 - 日本語で応対してください ## ファイル 保存ルール ### 1 . 日付フォルダの 作成 - `date +%Y%m%d` で取得した 日本時間の日付でフォルダを 作成 - 例: `~/ai -work/ 20260207 /` ### 2 . レビュー 記録ファイル 名 - `YYYYMMDDHHMM -security -review.md` 形式 - 例: `202602071430 -security -review.md` ### 3 . バックアップ 推奨 - 重要な発見事項は即座にGit 管理下に配置 ## 出力フォーマット レビュー 結果は以下の構造で出力してください : ```markdown
  55. © NTT TechnoCross Corporation 70 付録3: 完成版prompt ファイル 例 2/4

    (aws -sec -prompt.txt ) ### 2. IAM ポリシーレビュー - ポリシーの構造を確認( Principal, Action, Resource, Condition ) - ワイルドカード( *)の使用状況を確認 - リソースベースポリシーとアイデンティティベースポリシーの整合性 - クロスアカウントアクセス の妥当性 ### 3. 専門用語の調査 - AWS MCP で専門用語を調査 - 初心者向けの説明を追加 ### 4. AWS MCP Server で公式ドキュメントを確認 - AWS 公式ドキュメントから最新のベストプラクティスを取得 - Well -Architected Framework のセキュリティの柱を参照 - サービス固有のセキュリティガイドラインを確認 ### 5. セキュリティレビューの実施 - データ暗号化の実装状況 - ネットワークセキュリティの設定 - ログとモニタリングの設定 ### 6. 図解の作成 - 複雑な構成を ASCII アートで視覚化 - 現状と推奨の比較図を作成 ### 7. レビュー結果の記録 - 発見事項を重要度別に分類( Critical/Warning/Recommendation ) - 具体的な改善策を提示 - 参照した公式ドキュメントのリンクを記載 - 日時付きファイルで `~/ai -work/YYYYMMDD/YYYYMMDDHHMM - security -review.md` に保存 ### 3 . 記号の使用 - `→` データフロー - ` ` 問題点 - `✓` 推奨 - ` ` 暗号化 ### 4 . 図解例 ``` 【 現状】 User → [IAM Role: */*] → S 3 Bucket 過剰権限 【 推奨】 User → [IAM Role: s 3 :GetObject] → S 3 Bucket ✓ 最小権限 暗号化 ``` ## レビュー 手順 ### 0 . レビュー 開始準備 - 日本時間の日付フォルダを 作成: `mkdir -p ~/ai -work/$(date +%Y%m%d)` - レビュー 結果ファイル 名を決定: `$(date +%Y%m%d%H%M) -security - review.md` ### 1 . IAM Policy Autopilot で最小権限を分析( 最優先) - IAM Policy Autopilot を使用して IAM ポリシーを 分析 - 過剰な権限を特定 - 最小権限の原則に基づく 推奨ポリシーを 生成 - 未使用の権限を検出
  56. © NTT TechnoCross Corporation 71 付録3: 完成版prompt ファイル 例 3/4

    (aws -sec -prompt.txt ) **AWS CLI コマンド ** - AWS MCP でCLI リファレンスを 確認 - サブコマンド 、 オプション 、 パラメータが 正確か検証 - 実行可能な形式になっているか 確認 - 例: `aws s 3 api put -bucket -encryption -- bucket my -bucket -- server -side -encryption -configuration ...` **シェルスクリプト ** - 文法エラーがないことを 確認 - 変数展開、 パイプ 、 リダイレクトが 正確か検証 **CloudFormation テンプレート ( YAML/JSON ) ** - AWS MCP でリソースタイプとプロパティを 確認 - リソース 名、 プロパティ 名が正確か検証 - YAML/JSON 文法エラーがないことを 確認 3 . ** 記載内容の完全性** - すべてのCritical/Warning/Recommendation に根拠が記載されているか - 参照した 公式情報のリンクが 正確か - 図解が分かりやすいか 4 . ** 用語の正確性** - 専門用語の説明が正確か - 初心者にも 理解できる 表現か 5 . ** フォーマットの 遵守** - 出力フォーマットに 従っているか - 図解ガイドラインに 従っているか ### 8 . セルフレビューの 実施( 品質保証) **目的**: 作成したレビュー 報告書の正確性と 完全性を検証 #### 8.1 . レビュー 報告書の読み込み - 作成したレビュー 報告書ファイルを 読み込む #### 8.2 . セルフレビューチェック 項目 以下の観点でレビュー 報告書を検証: 1 . ** 技術的正確性の検証** - AWS MCP で各指摘事項の根拠を再確認 - Well -Architected Framework との 整合性を確認 - 推奨事項がAWS 公式ドキュメントに 基づいているか 確認 2 . ** コードの 実行可能性検証( 最重要) ** - レビュー 報告書に記載されたすべてのコードを 検証 - 想像や推測で書かれたコードがないことを 確認 - 以下のコードタイプごとに 検証: **CDK コード ( TypeScript/Python 等) ** - AWS MCP でCDK API リファレンスを 確認 - コンストラクタの 引数、 プロパティ 名が正確か検証 - 文法エラーがないことを 確認 - 例: `new s 3 .Bucket(this, 'MyBucket', { encryption: s 3 .BucketEncryption.S 3 _MANAGED })` **IAM ポリシー ( JSON ) ** - AWS MCP でIAM ポリシー 構文を確認 - Action 、 Resource 、 Condition の記法が正確か検証 - JSON として 文法エラーがないことを 確認 - 例: `"Action": ["s 3 :GetObject"]` が正しいか 確認
  57. © NTT TechnoCross Corporation 72 付録3: 完成版prompt ファイル 例 4/4

    (aws -sec -prompt.txt ) ### 4 . 用語の正確性 - ✓ 正確 / 要修正 - 修正が必要な用語 ### 5 . フォーマットの 遵守 - ✓ 遵守 / 要修正 - 修正が必要な箇所 ## 修正が必要な項目 1 . [ 項目名]: [ 修正内容] - [AWS 公式ドキュメント 根拠] 2 . ... ``` #### 8.4 . 元のレビュー 報告書への反映 - セルフレビューで 指摘された 修正事項を元のレビュー 報告書に反映 - 反映前に各修正事項の根拠をAWS MCP Server で再確認 - 修正履歴セクションを 追加: ```markdown ## 修正履歴 - [日時] セルフレビューに 基づく 修正 - 修正項目1 : [ 修正内容] - [根拠] - 修正項目2 : [ 修正内容] - [根拠] ``` #### 8.5 . 最終確認 - 修正後のレビュー 報告書を再度読み込み - すべての修正が正しく 反映されているか 確認 - AWS 公式ドキュメントとの 整合性を最終確認 #### 8.3 . セルフレビュー 報告書の作成 - ファイル 名: `YYYYMMDDHHMM -security -review -self -review.md` - 保存先: 元のレビュー 報告書と 同じディレクトリ - 内容: ```markdown # セルフレビュー 報告書 ## 対象レビュー 報告書 - ファイル 名: YYYYMMDDHHMM -security -review.md ## 検証結果 ### 1 . 技術的正確性 - ✓ 正確 / 要修正 - 検証内容と 根拠 ### 2 . コードの 実行可能性 - ✓ すべて実行可能 / 要修正 - 検証したコード 一覧: - CDK コード : [ 検証結果] - [API リファレンス ] - IAM ポリシー : [ 検証結果] - [ポリシー 構文リファレンス ] - AWS CLI コマンド : [ 検証結果] - [CLI リファレンス ] - シェルスクリプト : [ 検証結果] - CloudFormation: [ 検証結果] - [リソースリファレンス ] - 文法エラー : [ あり /なし ] - 想像で書かれたコード : [ あり /なし ] ### 3 . 記載内容の完全性 - ✓ 完全 / 不足あり - 不足項目