本稿は、日本取引所(以下「JPX」)グループの戦略的なデータ・デジタル事業を担う株式会社 JPX 総研による「生成 AI で“探せなかった開示情報”を見つけ出す 〜 JPX の AI 開示情報検索サービス J‑LENS 〜」について、アーキテクティングと開発をリードされた 太子 智貴 様に寄稿いただきました。 イントロダクション 上場企業が日々開示する適時開示情報は投資家による投資判断だけでなく、企業担当者における同業他社分析・市場動向の把握に活用される重要な情報源となっています。一方で、この開示資料の量は膨大であり、年間で 10 万ページ規模にのぼる情報の中から、関心のあるテーマや企業に関する記載を素早く見つけるのは容易ではありません。加えて、開示資料は年々増加・高度化しており、投資家や企業担当者にとって「必要な情報にいかに早く、正確に辿り着けるか」は大きな課題となっています。 従来型のキーワード検索では、表記ゆれやあいまいな表現、否定形を含む記載などを適切に拾いきることが難しいケースも少なくありません。 こうした課題を解決するため、JPX では、生成 AI を活用した AI 開示情報検索サービス 「 J-LENS(ジェイ・レンズ) 」 を開発しました。 本記事では、J-LENS の背景、仕組み、技術的な工夫、そして今後の展望について紹介します。 会社・サービス紹介 日本取引所グループ(JPX)は、東京証券取引所・大阪取引所などを運営し、日本の金融市場インフラを支えています。その中で 株式会社 JPX 総研 は、データとテクノロジーを軸に、市場参加者の利便性向上や新たな付加価値創出を目的としたサービス開発を担っています。 今回紹介するサービスの J-LENS は、この JPX 総研が中心となり開発した、 上場企業の適時開示情報等(TDnet 開示情報)を対象とした AI 検索サービス です。 J-LENS を使ってみる 課題 日本市場に関心のある投資家が上場企業について理解を深めようとする際、参照すべき情報は多岐にわたります。決算短信を始めとした財務データ、製品情報等のニュース、株主や投資家向けの決算説明資料、業績予想等の適時開示資料など、企業に関する情報は豊富に存在している一方で、それらは複数の開示資料に分散しています。 そのため、投資家は「この企業の成長領域は何か」「直近の業績変化の要因は何か」「事業上のリスクはどこにあるのか」といった関心に応じて、複数の資料を横断的に確認し、必要な情報を探し出す必要があります。 しかし、従来の検索手法では、適切なキーワードを自分で考え、検索結果から関連する資料を選び、さらに資料内の該当箇所を読み解く必要があります。また、同じ意味を持つ用語でも、「TOB」と「公開買付け」のように資料によって表記が異なる場合があり、検索語の選び方によっては必要な情報を見落としてしまう可能性もあります。 特に企業比較や過年度比較などを把握したい場合には、情報収集と整理に大きな手間がかかります。 こうした背景から、投資家が自然な問いかけを起点に、信頼できる企業情報へ効率的にアクセスし、理解を深められるような新しい情報探索体験が求められています。 ソリューション こうした「膨大で分散した開示資料から、意図に合う情報へ自然に辿り着きたい」という課題に対し、JPX 総研では生成 AI を活用した AI 開示情報検索サービス 「J-LENS(ジェイ・レンズ)」 を開発しました。 J-LENS は、ユーザーが入力した 自然な文章の質問を起点 に検索できるよう設計しており、従来のキーワード検索で生じやすい表記ゆれ等による探しづらさの低減を狙っています。 また、生成 AI による検索意図の解析により 日本語以外の入力にも対応 しており、ブラウザの翻訳機能等と組み合わせることで、海外ユーザーにも利用しやすい情報探索体験を提供します。 技術的詳細 活用した主な AWS サービス J‑LENS の基盤には、主に以下の AWS サービスを採用しています。 Amazon Bedrock 生成 AI を活用し、検索クエリの意味理解や回答生成を実施 Amazon OpenSearch Service 開示資料をベクトル化し、意味的類似度に基づく検索を実現 検索精度向上のための AI 補助処理 Step1:開示資料の収集・分割 JPXが保有するデータレイク(J-LAKE)より、決算短信やコーポレート・ガバナンス報告書などの開示資料を収集し、検索に適した単位に分割します。開示資料はページ数や構成が資料ごとに異なるため、単純な固定長分割ではなく、開示種別に応じた内容のまとまりを意識して、分割を行う必要があります。 例えば、決算短信やコーポレード・ガバナンス報告書などはページ数が多く、比較的資料構成が決まっているのでセクション単位で分割し、業績や配当予想の修正のような短い開示資料は開示単位で分割するなど、分割粒度と分割手法も資料種別に応じて切り替えており、後続の検索や要約に活用しやすい形に整えています。 Step2:生成 AI による企業・資料の分析 検索精度を高めるため、資料自体の特徴を分析し、テーマや企業属性に関するタグ情報を付与します。あわせて、各企業の事業内容や特徴に関する情報もメタデータとして整理します。これにより、本文中に明示されていない企業属性や関心テーマも検索に活用しやすくなります。 Step3:Amazon OpenSearch Service への登録 分割した本文情報に加え、フィルタリング条件や画面表示に用いるメタデータをあわせて Amazon OpenSearch Service に登録します。本文の意味情報と構造化された情報を組み合わせることで、自然文検索と条件指定の双方に対応できるようにしています。 Step4:ユーザーの自然文クエリを解析 ユーザーが入力した質問に対して、生成 AI が検索意図を解析します。例えば、対象企業、業種、期間、テーマなどを推定し、Amazon OpenSearch Service で検索しやすい形に整理します。これにより、ユーザーの質問をそのまま検索するだけではなく、検索対象を適切に絞り込むことができます。 Step5:構造化フィルタとベクトル検索の併用 検索期間、上場市場、業種、開示項目などの構造化フィルタと、意味的な近さに基づくベクトル検索を組み合わせて検索を実行します。膨大な開示資料の中から、検索意図に合う可能性の高い資料群に対象を絞り込むことで、関連性の高い結果を得やすくしています。 Step6:検索結果の整理とリランキング Amazon OpenSearch Service から取得した検索結果に対して、検索クエリとの関連性や重要語句などを踏まえて結果を整理・リランキングします。単純なベクトル検索だけでは上位に出にくい資料もあるため、AI を用いて企業名・業種・市場区分・商品名などの重要情報を検索文から抽出し、各チャンクに付与されたメタデータと照合しながら、検索結果を再評価しています。これにより、利用者の検索意図に近い結果をより高い精度で提示できるようにしています。 Step7:回答理由の提示 検索結果とともに、なぜその資料が関連すると判断されたのかを表示します。これにより、利用者は検索結果の妥当性を確認しながら、該当する適時開示資料の本文に進むことができます。また、回答だけに依存せず原文確認につなげることで、事実と異なる回答の抑制にもつなげています。 効果・成果 情報探索の効率化(“探す”から“辿り着く”へ) J-LENS により、投資家や企業担当者は、膨大な開示資料の中から関心テーマに基づく情報へ短時間で到達しやすくなりました。検索結果には資料本文へのリンク、タイトル、開示日等に加え、検索結果が選ばれた理由が提示されるため、内容確認や比較確認にかかる負荷の軽減にもつながります。 単純なベクトル検索だけでは拾いきれない“意図”への対応 開示情報の探索では、本文中の語句の近さだけでなく、「その開示を提出した企業がどのようなビジネスを行っているか」が判断材料になります。たとえば「生成 AI 関連サービスを提供する企業の業績動向」を調べる際、本文に「生成 AI」という語が含まれるかだけでは十分ではなく、システム開発、SaaS、データ分析、業務自動化といった事業領域を踏まえることで、検索意図に近い企業の開示情報を見つけやすくなります。 同様に「海外展開を強化している企業」を探す場合も、本文表現だけでなく、海外売上比率や海外子会社の有無、グローバルな製造・販売網といった企業ごとの事業特性を踏まえることが重要です。 そこで J-LENS では、各企業の事業内容や特徴を生成 AI であらかじめ分析し、検索時に開示資料本文の内容と組み合わせて評価します。さらに、ユーザーの検索クエリについても生成 AI で質問意図を解析し、検索対象となる企業群や資料群を絞り込んだうえで検索を行うことで、膨大な開示資料の中から関心により近い企業や開示情報を上位に提示しやすくしています。 “想定外の発見”と、定性的情報の横断比較を後押し 単純なキーワード一致に依存せず、文脈や意味に基づいて関連情報を抽出することで、従来の検索では見落とされがちであった情報に加え、ユーザーが事前に想定していなかった企業や観点の新たな発見にもつながります。 また、従来は人手で複数資料を読み比べる必要があった定性的な情報についても自然文で横断的な検索が可能となり、投資判断や企業分析における初動調査の効率化が期待できます。 海外ユーザーの利用性 生成 AI による検索意図の解析により、日本語以外の入力にも対応しており、ブラウザの翻訳機能等と組み合わせることで、海外ユーザーにとってもスムーズな情報探索が可能です。 今後の展望 さらなる生成 AI 活用の拡大 J-LENS は現在 β 版として公開しており、利用者からのフィードバックを踏まえながら継続的な改善を進めています。 「検索精度・回答品質のさらなる向上」、「フィルタ機能や検索履歴などの利便性向上」といったフィードバックを踏まえた改善策に加え、ユーザの検索ログ・アクセスログに鑑みたサービスの提供も予定しています。 今後提供するサービスでは、単に情報を「探す」だけでなく、検索結果を起点に企業を「比較・分析し、深く理解する」体験へと進化させていきます。 具体的には検索によって抽出された企業について、事業内容の整理や特徴の深掘り、業界内での位置づけの可視化、類似企業との比較といった分析を可能とすることで、従来は人手に依存していた企業分析プロセスを高度化し、意思決定をより効率的に支援することを目指します。 これらの分析知見の抽出や整理にも生成 AI を活用することで、ユーザーが自然な問いかけを通じて開示検索をきっかけにより深い企業理解を得られる環境の実現を目指します。 執筆者 J-LENS 開発担当(左から、株式会社 JPX 総研 フロンティア戦略部 斎藤裕哉、三村優里香、IT ビジネス部 太子 智貴)
本ブログは、 株式会社テイツー 様とアマゾン ウェブ サービス ジャパン合同会社が共同で執筆いたしました。 AWS 上に既にあるリソースを別のシステムの一部として活用しよう、というアイデアを思いつくことは頻繁にあるかと思います。しかし実現に向けたアクションとなると、連携方式の選定や既存システムへの影響評価など検討すべきことが山積し断念、気がつくと巨大で複雑な連携システムが出来上がっていた・・・こんな経験はありませんか。テイツーはこの課題をクラウドの特徴を捉えたシンプルな設計判断で乗り越え、わずか約 3 ヶ月での新サービスリリースを実現しました。 このブログでは既存の AWS 資産を活用した新サービス創出までのアプローチと、リユース業界における店舗 DX の取り組みについてご紹介します。 株式会社テイツー(以下、テイツー)は、「古本市場」「ふるいち」「トレカパーク」などのリユース店舗を全国 180店舗(執筆時点)展開する東証スタンダード上場企業です。同社はトレーディングカードの読取査定機「 TAYS 」の開発・運用を通じて、 AWS の活用を進めてきました。テイツーはこの TAYS の AWS 基盤を活かし、店舗向け POP 自動生成サービス「POP×THREE」をわずか約 3 ヶ月で開発・リリースしました。 リユース業界における店舗運営の課題 テイツーは 1989 年の創業以来、書籍、家庭用テレビゲーム、トレーディングカード、ホビー、スマートフォン、CD、DVD、衣類など幅広いカテゴリのリユース品を取り扱い、「家族で楽しめる廉価な娯楽の提供」を事業の柱としてきました。近年はトレーディングカード市場の拡大に伴い、トレカ読取査定機「TAYS」を自社開発し、BtoB サービスとして外販するなど、テクノロジーを活用した事業展開にも積極的に取り組んでいます。 一方で、リユース業界特有の課題として、商品の買い取り価格が市場動向に応じて日々変動するという点があります。特にトレーディングカードの分野では、新タイトルの発売や大会の開催などによって価格が大きく変動するため、店舗に掲示する買い取り告知 POP を頻繁に更新する必要があります。 これまでは全店舗に配信する買い取り告知 POP の作成に、1 回あたり約 1〜2 時間の作業時間を要していました。主な作業内容はカードの価格変更やタイトルの入れ替えですが、告知を一から作成する場合にはさらに多くの時間がかかるケースもありました。全国の店舗に対してタイムリーに情報を届けるためには、この POP 作成業務の効率化が不可欠でした。 TAYS から POP×THREE へ – 既存 AWS 基盤を活かした新サービス構想 テイツーが運用するトレカ査定システム「TAYS」は、読み取りスキャナーと連携し AWS を中心としたクラウド上でAIによる判定、データ閲覧と編集を可能にした、トレカ買い取りに特化した基盤です。 TAYS の基盤では、Amazon Aurora MySQL を DB サーバとして採用し、Amazon EC2 上のLinux でアプリケーションを稼働させています。AWS WAFによるセキュリティ対策も施されており、全国の店舗からインターネット経由で安全にアクセスできる構成となっています。 TAYS 自身は元々、外販向けの構想や個店ごとの価格設定などを見据えて設計されていました。つまり、そのデータベースには買い取り以外にも店舗運営に必要な商品・価格情報が蓄積されており、新たなサービスを構築するためのデータ資産がすでに存在していたのです。 ここから生まれたのが「POP×THREE」です。TAYS のデータ資産とインフラ基盤を API 経由で活用し、その上にフロントエンドを構築するというアプローチで新サービスを開発できるのでは、という発想からスタートしました。実装内容をなるべく少なく、リリースを速くしたいという方針のもと、2025 年 9 月下旬に開発をスタートし、同年末には提供を開始しています。 POP×THREE のサービス概要 POP×THREE は、TAYS に蓄積された商品・価格データを活用し、店舗向けの買い取り告知 POP を効率的に作成するサービスです。商品データを一括投入し、テンプレートを活用して POP を量産するツールとして設計されています。画像認識には独自構築の画像認識モデルを用いており、カード画像の細かな違いを認識することでトレーディングカードにおけるバリアントの判定も可能となっています。 システムアーキテクチャ POP×THREE はあくまでフロントエンドとして機能し、バックエンドは既存の TAYS 基盤との連携を前提に設計されています。ここでは、TAYS の既存基盤と POP×THREE の新規構成の両方をご紹介します。 TAYS + POP×THREE 基盤 TAYS POP×THREE 構成図(一部省略) TAYS のシステム基盤は、以下の構成となっています。 ネットワーク・アクセス: Amazon Route 53 による DNS 管理、 Elastic Load Balancing (ALB) によるトラフィック分散 コンピューティング: オートスケール構成のAmazon EC2 データベース: Amazon Aurora MySQL をメインの DB サーバとして採用 ストレージ連携:カード画像・スキャン画像・OCR ログなどのデータを各サーバ間で共有。画像処理や一括データ更新を実行 セキュリティ: AWS WAF による Web アプリケーション保護 POP×THREE のワークロード増加に伴いオートスケール化とセキュリティ強化策を講じることで、TAYS は全国の店舗と本部を結ぶより堅牢なシステム基盤として安定稼働しています。 POP×THREE の構成 POP×THREE は、TAYS の資産を最大限に活かすことを念頭に、既存 AWSアカウントに同居する形で構築しました。東京リージョンの 2 つのアベイラビリティゾーンにまたがる構成で、高可用性を確保しています。 ネットワーク・アクセス:共通 ALB によるトラフィック分散 コンピューティング: Private Subnet 内に本番環境・検証環境で分離して配置 キャッシュ: Amazon ElastiCache を本番・検証それぞれに配置し、パフォーマンスを最適化。スロークエリログおよびエンジンログを CloudWatch Logs で管理 セキュリティ: WAF Charmと共通 AWS WAF による Web アプリケーション保護 ログ管理: Amazon CloudWatch Logs と Amazon Data Firehose によるログの収集・S3 への転送(本番・検証それぞれ)。AWS WAF ログ、ALB ログも Amazon S3 に保管 設定管理: AWS Systems Manager パラメータストアによる構成情報の一元管理 設計上のポイント POP×THREE の設計において最も重要な判断は、TAYS の既存データをどのように新サービスから利用するかという連携方式の選定でした。新システムを構築する際の一般的なアプローチとしては、①DB レプリカや DMS によるデータ同期、②既存システム側に専用 API を公開し新システムがそれを利用する、③既存 DB を直接参照する、といった選択肢が考えられます。 テイツーが採用したのは②のアプローチです。TAYS 側に POP×THREE 専用(連携アプリ用)の API を設置し、POP×THREE はその API を介して商品・価格データを取得する構成としました。この判断の背景には、TAYS と POP×THREE で保守を担当する開発ベンダーが異なるという事情もありました。①のレプリカ構成では DB 構造への依存が強くなり、スキーマ変更のたびに両ベンダー間で調整が発生します。DMS によるデータ同期についても、レプリケーションの複雑性と継続的なメンテナンス負荷を踏まえ、現在の運用体制では現実的ではないと判断しました。③は②の構成が取れれば必要ありません。 API を採用した最大の狙いは、システム間の責務を明確に分離し、将来的な変更や機能追加のスピードを確保することにあります。これを介することで、DB 構造変更時の影響範囲は TAYS 側に閉じ、POP×THREE 側は API の後方互換性さえ保たれていれば独立して開発・デプロイが可能です。保守ベンダーが異なっていても、調整コストを最小限に抑えながら利用者の要望に迅速に応えられる構成となっています。一方で、POP×THREE から見れば TAYS が稼働していなければデータ取得ができないという依存は残りますが、Aurora MySQL 自体の高可用性構成と、読み取りレプリカの追加による柔軟なスケーリングにより、実運用上のリスクは許容範囲と判断しました。 加えて年内リリースの方針のもと、各ベンダーがスケジュール遵守を前提に開発を進める必要がありました。API のインターフェース仕様を早期に確定させたことで、TAYS 側(API 公開)と POP×THREE 側(フロントエンド構築)の開発を並行して進められたことも、約 3 ヶ月という短期間でのリリースを支えた要因です。AWS という共通のクラウド基盤上で IAM やネットワーク設計が標準化されていたことで、異なるベンダー間の技術的な齟齬が生じにくかった点も大きく寄与しています。 導入効果 POP×THREEにより、テイツーでは以下の効果が得られています。 業務効率化 すでに POP×THREE を導入している外販先企業では、数時間単位での業務効率化につながっているとのことです。 テイツー直営店での本格利用はこれからですが、全店舗に配信する予定の買い取り告知 POP の作成業務において、運用次第では 1 枚あたり約 30 分程度の作業時間短縮が見込まれています。従来は 1 回あたり約 1〜2 時間を要していた作業であり、特に価格変更やタイトルの入れ替えといった定型的な更新作業での効率化が期待されます。 外販先での実績を踏まえ、さらなる効果が期待されています。 安定稼働とスケーラビリティ POP×THREE はサービス開始以来システムダウンを経験していません。テイツーは「クラウドの恩恵として、マネージドサービスでインフラ管理コストを下げつつも、安定稼働している」と評価しています。 スケーラビリティの面では、直近でトレーディングカードのビッグタイトルが発売され大規模な負荷が発生した際、TAYS のオートスケール対応を実施しました。常時複数台のサーバを配置する構成へ移行し、今後のさらなるトラフィック増加にも対応できる体制を整えています。 AWS の活用メリット テイツーが AWS を活用する中で特に評価しているのは、以下の点です。 複数ベンダーとの円滑な連携: POP×THREE の開発では複数の開発ベンダーに依頼しましたが、AWS という認知度の高い基盤があったことでスムーズに連携を行うことができました 適切なサービス選択の提案: AWS からの技術支援により、要件に合った適切なサービスの選択を行うことができました クラウドの安定性: お客様向けサービスの基盤として、高い可用性と安定稼働を実現しています テイツー様からのコメント 「当社として本件は単なるシステム導入事例ではなく、AWS ならではのスピーディーな立ち上げとして対外的に発信できるテーマだと考えています。 トレカ査定システム TAYS の開発・運用を通じて培った AWS 基盤を最大限に活用することで、POP×THREE を約 3 ヶ月という短期間で立ち上げることができました。既存の RDS を活用し、フロントエンドの開発に集中するというアプローチは、実装をなるべく速く、少なくしたいという当社の方針に合致するものでした。また、AWS からの適切なサービス選択の提案により、限られたリソースの中でも最適なアーキテクチャを構築できたと感じています。 本取り組みは、既存データ資産を活用し小さく始めることで再現可能なモデルであり、AWS の各サービスの機能を利用して継続的に最適化できる点も大きな強みです。 システムの安定稼働はお客様へのサービス品質に直結するものであり、クラウドの恩恵を日々実感しています。今後も AWS の技術を活用し、リユース業界における店舗 DX をさらに推進してまいります。」 — 株式会社テイツー 情報システム部マネジャー 野口 義弘 様 今後の展望 テイツーでは、POP×THREE の展開をさらに加速させるとともに、AWS 基盤の強化を進めていく計画です。現在は TAYS が公開する API を介したデータ連携により運用していますが、導入先の拡大に伴うトラフィック増加に備え、Aurora の読み取りレプリカ追加やキャッシュ戦略の見直しも視野に入れています。さらに、中長期的には API の拡充やイベント駆動型の連携導入により、TAYS と POP×THREE それぞれが独立してスケール・進化できるアーキテクチャへの発展を段階的に進める方針です。直営店についてはこれから POP×THREE の利用を本格化させる段階であり、現場からのフィードバックを得ることで今後の展開を検討していく予定です。 テイツーの取り組みは、既存の AWS 基盤を活かして新たなサービスを迅速に立ち上げるという、クラウド活用の好例です。リユース業界における店舗 DX の推進に向けて、テイツーの挑戦は続きます。
みなさん、こんにちは。ソリューションアーキテクトの市川、井上、新澤、川﨑です。この記事では、 AWS Summit Japan 2026 で AWS IoT サービスを利活用した展示の一部をご紹介します。各ブースで表示している資料もこちらに掲載予定です。 AWS IoTで実現するロボット遠隔テレオペレーション体験 (A026) Physical AIの分野では、データ収集、モデルのトレーニング、シミュレーション、現実世界への反映というサイクルを回す必要があります。このデモでは、AWSのIoTサービスを使ってデータ収集をする方法について展示を行っています。コントローラーでセイコーエプソンさんのロボットを操作し、エッジデバイス上のAWS IoT GreengrassからAWS IoT CoreやS3にデータを保存する様なアーキテクチャを紹介します。 赤枠がブースのおおよその展示場所を示しています。 図1:A026展示場所 AIエージェントで実現するスマートマシン -産業機械の自律診断とリアルタイム安全監視-(A162) このブースでは、AWS上に構築されたエージェント型の産業機械保全ワークフローをご紹介します。AIエージェントが故障を自律的に診断し、現場オペレーターへの通知からサポートへのエスカレーションまでを一気通貫で実行する様子をご覧いただけます。エッジAIによる安全監視、計画外ダウンタイムの削減、インシデント対応の迅速化など、建設・製造・農業・鉱業の各現場における機器管理・保守を変革する次世代のフィールドオペレーションを、ぜひブースでご体験ください。 赤枠がブースのおおよその展示場所を示しています。 図2:A162 と A026 展示場所 Physical AIへの第一歩 AWS IoTで実現するPhysical AI基盤 (A161) Physical AIの実現には、クラウドで学習したAIモデルをエッジデバイスにデプロイし、エッジデバイスのセンサーデータをクラウドに送信するための安定した基盤が不可欠です。本ブ ースでは、AWS IoT Core , AWS IoT Greengrass , Amazon Kinesis Video Streams などを用いてデバイス接続からエッジコンピューティング、映像配信を Raspberry PiやJetsonを利用したライブデモで体験いただけます。A/Bデプロイやロールバック等の本番運用機能、生成AI活用に関してもご紹介させていただきます。IoT をこれからはじめる方からエッジAI検討中の方まで、Physical AIへの第一歩をここから踏み出してください。 赤枠がブースのおおよその展示場所を示しています。 図2:A162 と A026 展示場所 builders’ Fair: クラウドVLAが操るミニロボたち ミニロボたちがクラウドベースのVLAで自律的に考えて卓上のフィールドを動き回ります。荷物・障害物・危険エリアなどをAIが見て判断し、複数のミニロボが「何を運ぶ?」「どこに片付ける?」「どう分担する?」「こっち危ないから回り道しよう」と自分たちで動きます。来場者の皆さんもぜひ障害物を置いたり、荷物を散らかしたりしてください。ミニロボたちは協力しながらタスク完遂を目指します。さて、ミニロボたちはちゃんとやりとげることができるか?温かい目で見守ってください! 赤枠がブースのおおよその展示場所を示しています。 図3:展示場所 インダストリブース:AWS認定デバイスウォール(A017) 昨年のAWS Summit Japan 2025 でご好評いただいた AWS Summit Japan 2025 での AWS 認定デバイスウォール展示のご紹介 が今年も登場します! エッジデバイスとクラウドを連携させるニーズが高まる中、多様なエッジデバイスから最適なものを選ぶことはお客様にとって課題となっています。 AWS 認定デバイスプログラム は、AWSのIoTサービスとの接続が検証された信頼性の高いデバイスを取りそろえたプログラムです。本展示では、認定デバイスを通じてプログラムの価値とハードウェアパートナーとの協力体制を紹介し、日本国内におけるエッジとAWSを活用したサービス構築の迅速化とビジネスの加速を支援します。 AWS Summit Japan 2026 製造業向け展示の見どころ紹介! でもブース情報記載しておりますのでご確認ください。 赤枠がブースのおおよその展示場所を示しています。 図4:A017展示場所 市川 純 プロトタイピングソリューションアーキテクト AWS では IoT に関連するプロトタイピングを支援する、ソリューション アーキテクトとして、お客様の IoT 関連案件を支援しています。 新澤 雅治 IoT スペシャリスト ソリューションアーキテクト 製造業、 IT ベンダーを経て AWS に 入社。現在は IoT スペシャリストソリューションアーキテクトとして、主に製造業のお客様の Industrial IoT 関連案件の支援に携わる。 井上 昌幸 IoT Specialist Solutions Architect Internet of Things と Robotics 界隈で面白い事を探しながら、今日もこつこつリアルな世界とクラウドを繋いでいます。あなたのとっておきのアイデアを AWS と一緒にカタチにしましょう。 川﨑 裕希 アマゾンウェブサービスジャパン合同会社のソリューションアーキテクトです。普段は製造業のお客様のご支援を中心に活動しています。IoTやエッジデバイスに興味があり、エッジ推論の検証が最近の趣味です。 <!-- '"` -->
本記事は 2026 年 5 月 11 日 に公開された「 Amazon Aurora DSQL connections: Drivers, strings, and best practices 」を翻訳したものです。 Amazon Aurora DSQL への初めての接続を設定しようとしていますか? PostgreSQL を使ったことがあれば流れは似ていますが、いくつか重要な違いがあります。長期間有効なパスワードの代わりに、 短命の IAM 認証トークン を使用します。静的なエンドポイントの代わりに、複数のアベイラビリティゾーンにまたがる分散クラスターエンドポイントを使用します。接続タイムアウトのトラブルシューティング、トークンの有効期限管理、ドライバーの初回設定など、接続パターンを理解しておくと一般的な問題を回避できます。 本記事では、接続文字列の設定方法、Python・Java・Node.js でのドライバー設定、認証・接続プーリング・ライフサイクル管理のベストプラクティスについて説明します。 接続アーキテクチャ Amazon Aurora DSQL は、従来の PostgreSQL デプロイとは根本的に異なる分散接続アーキテクチャを採用しています。アプリケーションは単一のデータベースインスタンスに接続するのではなく、複数のアベイラビリティゾーンにトラフィックを分散するルーティングレイヤーを介して接続します。ドライバーや接続文字列を設定する前に、エンドポイントの構造とワイヤプロトコルの動作を理解しておく必要があります。以下のセクションでは、接続前に知っておくべきエンドポイント形式とワイヤプロトコルの互換性について説明します。 エンドポイント形式 Amazon Aurora DSQL クラスターのエンドポイントは次のパターンに従います。 <cluster-id>.dsql.<region>.on.aws 例: weaxxxxxxxxxxxxxxxxqdqqm.dsql.us-east-1.on.aws デュアルスタック形式で、IPv4 と IPv6 の両方をサポートしています。エンドポイントは Aurora DSQL の分散ルーティングレイヤーに接続し、複数のアベイラビリティゾーンへの接続分散を自動的に処理します。 主要な接続パラメータ: Host: クラスターエンドポイント (上記の形式)。 Port: 5432 (PostgreSQL 標準ポート)。 Database: postgres (デフォルトのデータベース名)。 SSL Mode: すべての接続で必須。 ワイヤプロトコルの互換性 Amazon Aurora DSQL は標準の PostgreSQL v3 ワイヤプロトコルを使用しており、psql、pgjdbc、psycopg、psycopg2 などの一般的な PostgreSQL ドライバーとの互換性があります。既存のツールやライブラリは、最小限の設定変更で利用できます。 認証とセキュリティ Aurora DSQL では、従来の PostgreSQL データベースとは異なる認証方式とネットワークセキュリティを採用しています。以下のセクションでは、IAM ベースのトークン生成、ネットワーク接続オプション、認証情報管理のベストプラクティスについて説明します。 IAM ベースの認証 Amazon Aurora DSQL は短命の IAM 認証トークンのみを使用します。IAM 認証には以下のセキュリティ上の利点があります。 セキュリティの強化: パスワードの保存やローテーションに伴うリスクを軽減します。 アクセス制御の一元化: AWS Identity and Access Management (AWS IAM) による統一的な権限管理が可能です。 監査証跡: 接続試行が AWS CloudTrail に記録されます。 自動期限切れ: トークンはデフォルトで 15 分後に期限切れになります (最大 1 週間まで設定可能)。デフォルトを超える有効期間の延長は推奨しません。漏洩した長命トークンは重大なセキュリティリスクです。延長が必要な場合は、トークンのスコープを最小限の権限に絞り、CloudTrail で長命トークンを監視してください。 アクセス制御パターンとセキュリティのベストプラクティスの詳細については、 Amazon Aurora DSQL のセキュリティ対策:アクセス制御のベストプラクティス を参照してください。 AWS Command Line Interface (AWS CLI) でのトークン生成: 以下のコマンドで、AWS CLI を使用して Aurora DSQL クラスターの認証トークンを生成します。 aws dsql generate-db-connect-admin-auth-token \ --region us-east-1 \ --hostname <your-cluster-id>.dsql.us-east-1.on.aws 必要な IAM 権限: { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dsql:DbConnect", "dsql:DbConnectAdmin" ], "Resource": "arn:aws:dsql:region:account-id:cluster/cluster-id", "Condition": { "IpAddress": { "aws:SourceIp": ["10.0.0.0/8"] } } } ] } dsql:DbConnect: 通常のデータベースユーザーとしての接続権限を付与します。 dsql:DbConnectAdmin: 管理者権限を付与します。 最小権限の原則 ユースケースごとに必要最小限の権限のみを付与します。 標準のアプリケーションアクセスには dsql:DbConnect を使用します。 dsql:DbConnectAdmin は管理タスク専用に限定します。 既知のネットワーク範囲のみにアクセスを制限するため、IP ベースの 条件 を追加します。 ネットワークセキュリティ Amazon Aurora DSQL はパブリックアクセスとプライベートアクセスの両方をサポートしています。 パブリックエンドポイントアクセス は以下によりセキュリティを確保します。 IAM ベースの認証 – パスワードベースの脆弱性を軽減します。 IP ベースのアクセス制御 – IAM ポリシー条件により接続を制限します。 SSL/TLS 暗号化の必須化 – 暗号化されたトランスポートが必須です。 プライベートエンドポイントアクセス (AWS PrivateLink) はトラフィックを AWS 内に保持します。 VPC インターフェイスエンドポイント – インターネットに公開されないプライベート接続。 VPC エンドポイントポリシー – ネットワークレベルの追加のアクセス制御。 セキュリティグループ – 特定のサブネットとポートへのトラフィックを制限。 VPC エンドポイントポリシーをアタッチして、エンドポイント経由で接続できるプリンシパルを制限します。設定しない場合、VPC 内のすべてのプリンシパルがエンドポイントを使用してクラスターに接続できます。 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:role/your-app-role" }, "Action": [ "dsql:DbConnect" ], "Resource": "arn:aws:dsql:region:account-id:cluster/cluster-id" } ] } ネットワークエグレス制御 インバウンドアクセスの制御だけでは不十分です。エグレス制限がなければ、侵害されたアプリケーションが外部にデータを送出する可能性があります。アプリケーションホストからのアウトバウンドトラフィックを制限してください。 セキュリティグループのアウトバウンドルール – 必要な宛先 (Aurora DSQL のポート 5432、AWS サービスエンドポイントなど) へのトラフィックのみを許可します。 VPC Network ACLs – セカンダリレイヤーとしてサブネットレベルのエグレス制限を追加します。 VPC Flow Logs – 予期しないアウトバウンドトラフィックパターンを監視します。 AWS Network Firewall – セキュリティグループを超えた、きめ細かいエグレスフィルタリングに使用します。 認証情報の管理 Aurora DSQL に接続する際の認証情報管理のベストプラクティスを以下に示します。 認証情報をハードコードしない – アプリケーションコードに埋め込まないでください。 環境変数を使用する – ホスト名やリージョンなどの設定値には環境変数を使用します。 トークンを動的に生成する – 接続時に AWS SDK 呼び出しでトークンを生成します。 AWS Secrets Manager を使用する – 接続設定の保存に利用します。 IAM 認証情報を定期的にローテーションする – AWS のセキュリティベストプラクティス に従います。 認証試行を監視する – CloudTrail による異常検知 を活用します。 認証トークンをログに記録・永続化しない – トークンはデータベースパスワードとして渡されるため、接続文字列ログ、アプリケーションログ、エラーメッセージに漏洩する可能性があります。ロギングフレームワークでパスワードフィールドを確実にマスクし、URL や診断出力にトークンを含めないでください。 接続の監視 CloudTrail はすべての Aurora DSQL 認証イベントを記録します。異常な接続アクティビティを検知するアラートを設定してください。 認証失敗 – DbConnect または DbConnectAdmin の繰り返し失敗に対して Amazon CloudWatch アラームを作成し、認証情報の悪用や設定ミスを検知します。 予期しない送信元 IP やリージョン – CloudTrail イベントを sourceIPAddress と awsRegion でフィルタリングし、想定外のネットワーク範囲からの接続をフラグ付けします。 異常な接続パターン – CloudWatch 異常検知を使用して、接続量の急増や通常の運用時間外の接続を監視します。 長命トークンの使用 – 要求された有効期間がデフォルトの 15 分を超える GenerateDbConnectAdminAuthToken 呼び出しを追跡します。 自動対応として、CloudTrail イベントの Amazon EventBridge ルールを使用して、 Amazon Simple Notification Service (Amazon SNS) 通知や AWS Lambda による修復ワークフローをトリガーできます。 SSL/TLS の設定 Amazon Aurora DSQL は接続に暗号化トランスポートを必須としています。 sslmode=require – 暗号化の最小要件。 sslmode=verify-full – 完全な証明書検証とホスト名検証によるセキュリティ強化。 本番環境の推奨事項: verify-full モードを使用してください。証明書チェーンとホスト名の両方を検証し、中間者攻撃への対策となります。 Amazon Aurora DSQL コネクター AWS は Amazon Aurora DSQL コネクターを提供しています。コネクターは透過的な認証レイヤーとして機能し、IAM トークンの生成とリフレッシュを自動的に処理します。認証コードではなく、接続コードだけを記述すれば済みます。 利用可能なコネクター JDBC Connector – 標準の Java データベース接続レイヤーに IAM 認証を統合し、既存の Java データアクセスフレームワークとシームレスに連携します。 Python Connector – psycopg、psycopg2、asyncpg (非同期ワークロード) をサポートします。認証プラグインとして動作し、既存の接続ワークフローを変更せずにトークン生成を処理します。 Node.js Connectors – node-postgres (pg) と Postgres.js の両方に対応しています。 Go Connector – pgx をラップし、IAM 認証の自動処理、SSL 設定、接続管理を行います。 Ruby Connector – Ruby アプリケーション向けの IAM ベース認証を提供します。 .NET Connector – Npgsql をラップし、IAM 認証の自動処理、SSL 設定、接続管理を行います。 Rust Connector – SQLx をラップし、IAM 認証の自動処理、SSL 設定、接続管理を行います。 実装の詳細については、 Amazon Aurora DSQL Connectors GitHub を参照してください。 コネクター使用の利点 トークン管理の自動化 – クラスターホスト名からのリージョン自動検出を含む、IAM トークン生成とリフレッシュのライフサイクル全体を管理します。 シームレスな統合 – 接続プーリングライブラリ (HikariCP、psycopg ConnectionPool、psycopg2 ThreadedConnectionPool、asyncpg ネイティブプール) と透過的に連携します。 フレームワークサポート – Spring Boot、Django など、標準的なデータベースドライバーインターフェイスに依存するフレームワークと互換性があります。 ボイラープレートの削減 – 手動のトークン生成コードの記述やメンテナンスが不要です。 クイックスタート例 (JDBC コネクター) 以下の例は、Java で JDBC コネクターを使用して Aurora DSQL クラスターに接続する方法を示しています。コードを実行する前に、プロジェクトの依存関係に Aurora DSQL JDBC ドライバーを追加し、IAM 認証情報を設定済みであることを確認してください (環境変数、インスタンスプロファイル、または AWS 認証情報ファイルのいずれか)。JDBC URL に jdbc:aws-dsql:// プレフィックスを設定し、 DriverManager.getConnection を呼び出します。コネクターが IAM トークン生成を自動的に処理するため、手動のトークンコードは不要です。コネクターは、トークンを長期間キャッシュするのではなく、新しい接続または接続プールの初期化ごとに新しいトークンを生成します。 // Change the JDBC URL prefix to jdbc:aws-dsql:// String url = "jdbc:aws-dsql://" + clusterEndpoint + ":5432/postgres"; Connection conn = DriverManager.getConnection(url, "admin", ""); // No password needed — the connector handles token generation automatically 手動接続パターン コネクターを使用しない場合 (学習目的、デバッグ、カスタム認証フローなど) は、AWS SDK で IAM トークンを手動で生成し、データベースパスワードとして渡せます。 接続には最低限 sslmode=require が必要です。トークンは、呼び出し元の IAM アイデンティティから派生し、特定のクラスターホスト名にスコープされた、有効期限付きの認証情報です。 SDK トークン生成メソッド Python (boto3) generate_db_connect_admin_auth_token Java DsqlClient.generateDbConnectAdminAuthToken Node.js GenerateDbConnectAdminAuthTokenCommand Go dsql.GenerateDbConnectAdminAuthToken Ruby Aws::DSQL::Client#generate_db_connect_admin_auth_token .NET AmazonDSQLClient.GenerateDBConnectAdminAuthToken Rust dsql::Client::generate_db_connect_admin_auth_token 生成したトークンを、接続確立時にデータベースパスワードとして渡します。 完全なコード例については、 Amazon Aurora DSQL ユーザーガイド と Amazon Aurora DSQL Code Samples を参照してください。 接続プーリング 適切に設定された接続プーリングは、レイテンシーを低減し、Aurora DSQL の接続レート制限への到達を回避します。本セクションでは、プールの設定、サイジング、考慮すべき主要な制約について説明します。 クライアント側プーリングが必須 Aurora DSQL にはサービスレイヤーでの組み込み接続プーリングがありますが、新しい接続ごとに TLS ハンドシェイクとサービスによる認証が必要です。接続をプールすれば、そのコストをリクエストごとではなく一度だけ支払えばよくなります。 PgBouncer や pgpool-II などのサーバー側コネクションプーラーは使用しないでください。 これらのツールは従来の PostgreSQL アーキテクチャ向けに設計されており、Amazon Aurora DSQL の分散接続処理で可用性の問題を引き起こす可能性があります。 プール設定 最も重要なパラメータは 最大接続寿命 です。Amazon Aurora DSQL は接続期間に 60 分のハードリミットを適用します。プールの最大ライフタイムを 45〜55 分に設定し、Aurora DSQL が接続を切断する前にプロアクティブにリサイクルしてください。 Java で HikariCP を使用する場合は、 maximumPoolSize 、 maxLifetime (60 分未満) を設定し、手動のトークン管理を避けるために JDBC Connector を使用します。HikariCP の完全な設定については、公式ガイド「 Using Amazon Aurora DSQL with JDBC, Hibernate, and HikariCP 」を参照してください。 Python の場合は、手動で生成した IAM トークンを使用して psycopg2 で接続するか ( Amazon Aurora DSQL ユーザーガイド – Psycopg2 の使用 を参照)、 Amazon Aurora DSQL Python Connector (GitHub) を使用してトークンのボイラープレートを完全に排除できます。 接続制限とクォータ 接続プールのサイジングを決定する前に、Amazon Aurora DSQL の接続制限を理解しておく必要があります。Amazon Aurora DSQL は接続作成レートの制御に トークンバケットアルゴリズム を使用しています。新しい接続ごとにトークンを 1 つ消費し、バケットは一定レートで補充されます。バケット容量を上限としてバーストも可能です。 クラスターあたりのデフォルト制限は以下のとおりです。 クォータ デフォルト値 備考 最大確立接続数 10,000 クラスターごとの制限。Service Quotas で調整可能 新規接続レート (定常状態) 100 接続/秒 トークンバケットの補充レート バースト容量 1,000 接続 補充前の t=0 時点で利用可能なトークン数 最大接続期間 60 分 ハードリミット。1 時間後に接続切断 最大トランザクション期間 5 分 トランザクションごと (BEGIN から COMMIT まで) トークンバケットの実際の動作: アプリケーション起動時に 1,000 接続を開いた場合、すべて成功します (バーストトークン 1,000 個)。ただし、バケットは空になります。1,001 番目の接続は、バケットが 100 トークン/秒で補充されるのを待つ必要があります。クライアント側プーリングが重要な理由はここにあります。接続を再利用すれば、作成バジェットの消費を避けられます。 接続ライフサイクル Aurora DSQL の接続には最大ライフタイムが固定されており、有効期限付きトークンを使用するため、アプリケーションは接続のリサイクルとトークンリフレッシュを適切に処理する必要があります。 1 時間の接続制限 Amazon Aurora DSQL のすべての接続の最大ライフタイムは 60 分です。1 時間後、接続がアイドル状態でもアクティブ状態でも、サービスが接続を切断します。これは設計上の仕様です。Aurora DSQL の分散アーキテクチャでは内部コンポーネントがバックグラウンドで障害復旧や交換されるため、1 時間の制限によりアプリケーションが定期的に新しい接続を確立し、正常なインフラに自然に接続されるようになっています。Aurora DSQL は切断にジッターを適用するため、接続が同時に切断されることはなく、トランザクション中の接続は切断されません。 トークンの有効期限管理 トークンはデフォルトで 15 分後に期限切れになります (最大 1 週間まで設定可能)。重要なポイント: 有効なトークンで接続が確立された後は、トークンが期限切れになっても接続は有効なままです。新しいトークンが必要なのは新しい接続を確立するときだけであり、60 分の接続制限がバインディング制約となります。トークンの有効期限は制約になりません。 トークンはリージョンスコープでもあります。 region=us-east-1 で生成されたトークンは us-east-1 エンドポイントへの接続にのみ有効で、同じマルチリージョンクラスターの us-east-2 エンドポイントには使用できません。マルチリージョンデプロイでは、アプリケーションが接続する各リージョンエンドポイントに対して個別のトークンを生成してください。 推奨アプローチ: Amazon Aurora DSQL コネクター を使用してください。新しい接続ごとに自動的にトークンを生成するため、トークン管理コードが不要です。 接続リトライロジック 分散システムでは一時的な接続障害は例外ではなく通常の動作です。内部コンポーネントに障害が発生した場合、Aurora DSQL が自動的に処理しますが、アプリケーション側ではその接続に対するエラーが発生します。 SerializationFailure (OCC コンフリクト) と OperationalError (一時的な障害) の両方に対して、エクスポネンシャルバックオフとジッターを伴うリトライロジックを実装してください。推奨パターンについては、Amazon Aurora DSQL の同時実行制御ドキュメントと AWS Builders’ Library – タイムアウト、リトライ、ジッター付きバックオフ を参照してください。 マルチリージョン接続パターン 地理的リージョンをまたいだ高可用性が必要なアプリケーション向けに、Amazon Aurora DSQL マルチリージョンクラスターはリージョンエンドポイントで読み書き両方をサポートするアクティブ-アクティブアーキテクチャを提供します。 アクティブ-アクティブ マルチリージョンアーキテクチャ Amazon Aurora DSQL マルチリージョンクラスターは、アクティブ-アクティブアクセスのためのリージョンエンドポイントを提供します。アプリケーションはどちらのエンドポイントにも接続して読み書きが可能で、地理的な分散とリージョンフェイルオーバーを実現します。 エンドポイント選択戦略 レイテンシーのために最寄りのリージョンエンドポイントに接続し、プライマリリージョンに問題がある場合はセカンダリエンドポイントへのヘルスベースのフェイルオーバーを実装します。 フェイルオーバーロジックは事前にテストしておいてください。 一般的な接続問題のトラブルシューティング 本セクションでは、Aurora DSQL に接続する際に発生しやすいエラーや接続障害と、その原因および推奨される対処方法について説明します。認証失敗、タイムアウトエラー、ドライバーの互換性の問題のいずれの場合も、以下のガイダンスで問題を迅速に診断・解決できます。 問題 1: “Connection Attempt Failed” 症状: Amazon Aurora DSQL エンドポイントへの接続を確立できない 一般的な原因: IAM 権限の不備、認証トークンの期限切れ、ネットワーク接続の問題、エンドポイント形式の誤り 解決方法: 接続失敗を解決するには、以下の手順を順に実行してください。まず、IAM ユーザーまたはロールのポリシーに適切な dsql:DbConnect または dsql:DbConnectAdmin 権限がアタッチされていることを確認します。次に、認証トークンが期限切れでないことを確認します。トークンは短命であり、新しい接続試行のたびに再生成が必要です。クラスターエンドポイントの形式が正しいこと、ポート 5432 へのアウトバウンドトラフィックをブロックするネットワークレベルの制限 (セキュリティグループ、VPC ルーティングルール、ファイアウォールポリシーなど) がないことを確認してください。以下の例は、新しいトークンを生成して明示的なエラーハンドリングで接続を試みることで、根本原因を特定しやすくする方法を示しています。 # Verify IAM permissions aws iam get-user # Test token generation aws dsql generate-db-connect-admin-auth-token \ --region us-east-1 \ --hostname <cluster-id>.dsql.us-east-1.on.aws # Test network connectivity nc -zv <cluster-id>.dsql.us-east-1.on.aws 5432 問題 2: “Access Denied” エラー 症状: 接続は確立されるが認証に失敗する 解決方法: IAM ポリシーに dsql:DbConnect または dsql:DbConnectAdmin が含まれていることを確認します。 IAM ポリシーのアクセス制限条件 (aws:SourceIp、aws:RequestedRegion、aws:PrincipalTag など) を確認します。基本権限が付与されていても、条件によって接続がサイレントに拒否される場合があります。 トークンが正しいリージョンで生成されていることを確認します。 AWS 認証情報が期限切れでないことを確認します。 問題 3: PrivateLink 接続の問題 VPC の外部から PrivateLink 経由で接続する場合、クライアントはクラスターエンドポイントを VPC エンドポイント IP に解決する必要があります。2 つのアプローチがあります。 オプション 1: PGHOSTADDR で IP アドレスをオーバーライド export PGHOSTADDR=<vpce-ip-address> export HOSTNAME=<cluster-id>.dsql.<region>.on.aws psql -h $HOSTNAME -U admin -d postgres SNI に正しいホスト名を使用しながら VPC エンドポイント IP に接続します。 オプション 2: amzn-cluster-id 接続オプションを使用 (DNS 不要) export CLUSTERID=<cluster-id> export PGOPTIONS="-c amzn-cluster-id=$CLUSTERID" psql -h <vpce-endpoint> -U admin -d postgres クラスター識別子を接続オプションとして直接渡し、DNS 解決を不要にします。VPC エンドポイントのプライベート DNS が設定されていない場合に便利です。 詳細については、 PrivateLink 接続エンドポイントを使用した Amazon Aurora DSQL への接続 を参照してください。 問題 4: 接続プールのヘルスチェックストーム 症状: 負荷スパイク時の大量の接続切断と再確立、カスケード的なヘルスチェック失敗、接続レート制限エラー 原因: 短いヘルスチェック間隔 (HikariCP のデフォルト 5 秒タイムアウトなど) により、数千のプール接続に対して同時にヘルスチェックがトリガーされる場合があります。多数のチェックが同時に失敗すると、プールがすべての接続の再確立を試み、100 接続/秒のレート制限を使い果たして障害がカスケードします。 解決方法: すべての接続に固定間隔を使用するのではなく、接続間でヘルスチェック間隔をずらします。 不要な接続リサイクルを避けるため、アイドルタイムアウトを増やします。 HikariCP の場合、 connectionTimeout と validationTimeout をデフォルトより長く設定します。 maxLifetime に十分なジッターを設定します (HikariCP は自動的に ±2.5% を適用)。同期した接続期限切れを回避できます。 まとめ 本記事では、JDBC や PostgreSQL 互換クライアント、AWS CLI など、さまざまなドライバーやツールを使用して Amazon Aurora DSQL に接続する方法を紹介しました。接続アーキテクチャ、IAM ベースの認証トークンの生成と使用方法、認証情報管理と接続プーリングのベストプラクティスについて解説しました。クイックスタート例と、一般的な接続問題の診断・解決に役立つトラブルシューティングガイドも提供しました。 実際に試してみたいですか? プレイグラウンド でセットアップなしに Aurora DSQL を体験できます 。接続の操作、クエリの実行、本記事で紹介した機能の確認を実際に行えます。 著者について Alex Pawvathil Alex は、AWS のシニアテクニカルアカウントマネージャーで、データベースアーキテクチャとエンタープライズ規模の実装を専門としています。クラウドアーキテクチャ、データベース戦略、エンタープライズアドバイザリーで 14 年以上の実務経験があり、Amazon RDS for SQL Server の実装とエンタープライズ規模のデプロイメントの専門家です。 Sandhya Khanderia Sandhya は、AWS のシニアテクニカルアカウントマネージャー兼データアナリティクススペシャリストです。AWS のお客様と密接に連携し、継続的なサポートと技術ガイダンスを提供しています。ベストプラクティスを活用したソリューションの計画・構築を支援しながら、AWS 環境の運用状態をプロアクティブに健全に保つことに取り組んでいます。 Rob Petersen Rob は、AWS のシニアテクニカルアカウントマネージャーで、IT 業界での 20 年の経験を活かし、お客様のクラウド導入ジャーニーを支援しています。大規模なクラウドマイグレーションのリードとハイブリッドインフラストラクチャの運用管理の両方の経験があり、クラウド導入時に組織が直面する課題と機会について独自の視点を持っています。 この記事は Kiro が翻訳を担当し、Solutions Architect の Arisa Izuno がレビューしました。
本記事は 2026 年 3 月 30 日に公開された ” Introducing CloudWatch Metrics for AWS Direct Connect Virtual Interface BGP Health and Prefix Count ” を翻訳したものです。 本日、 AWS Direct Connect は Amazon CloudWatch における 仮想インターフェイス(VIF)に関する3 つの新しいメトリクス VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised のサポートを発表しました。これらのメトリクスにより、API を手動でポーリングしたりコンソールを確認したりすることなく、CloudWatch から直接 Border Gateway Protocol(BGP)セッションの正常性とプレフィックス数を把握できるようになります。本ブログでは、新しいメトリクスの概要、ユースケース、および修復アクションをトリガーするアラームの設定方法について説明します。CloudWatch で利用可能な Direct Connect メトリクスの完全なリストについては、 Direct Connect ユーザーガイドの Amazon CloudWatch によるモニタリング を参照してください。 VIF BGP ステータスおよびプレフィックス数メトリクスの提供前 この機能が提供される前は、Direct Connect の CloudWatch メトリクスは物理接続の正常性とトラフィックスループットのみをカバーしていました。BGP セッションステータス、オンプレミスルーターから受け入れたプレフィックス数、AWS からの経路広報、サイレントな経路の消失といった BGP レベルのテレメトリについては、Direct Connect API をポーリングしたり、独自の Lambda 関数を作成したり、またはオンプレミスのネットワーク管理ツールに頼る必要がありました。 Monitor BGP status on AWS Direct Connect VIFs and track prefix count advertised over transit VIF の記事では、そのようなアプローチの一例が紹介されています。今回の新しい CloudWatch メトリクスにより、そうした複雑さは不要となり、プレフィックス数のモニタリングはトランジット VIF に限定されなくなりました。 新しいメトリクスの概要 3 つの新しい CloudWatch メトリクスは、プライベート仮想インターフェイス、パブリック仮想インターフェイス、トランジット仮想インターフェイスの 3 種類すべての VIF タイプで利用できます。 図 1 は、オンプレミスネットワークが 3 種類の仮想インターフェイスを通じて AWS リソースに接続する様子を示すマルチリージョン Direct Connect アーキテクチャです。この図では、企業のデータセンターからDirect Connect を使用して AWS リージョン(us-east-1 および us-west-2)に接続する構成を示しています。プライベート仮想インターフェイスは、単一の VPC に直接接続するか、 Direct Connect ゲートウェイ を介して異なる AWS リージョンの複数の VPC に接続し、プライベートリソースへのアクセスを提供します。トランジット仮想インターフェイスは AWS Transit Gateway への接続を可能にし、単一の仮想インターフェイスを通じて異なる AWS リージョンの複数の VPC にアクセスできます。パブリック仮想インターフェイスは、パブリックインターネットを経由することなく、 Amazon S3 、 Amazon Kinesis 、 Amazon SQS 、 Amazon SNS などの AWS パブリックサービスエンドポイントへのアクセスを提供します。 また、このアーキテクチャでは各仮想インターフェイスのタイプに対して今回の CloudWatch メトリクスで導入された新しい BGP モニタリング機能も紹介しています。この図は、これらのメトリクスが CloudWatch に収集され、さらに CloudWatch ダッシュボードの作成や CloudWatch アラームの生成、Amazon SNS 経由での通知に活用することで、Direct Connect インフラストラクチャ全体にわたる包括的なモニタリングとアラートを実現する方法を示しています。 図 1: 3 種類すべての Direct Connect 仮想インターフェイスのタイプに対応した 3 つの新しい CloudWatch BGP メトリクス VirtualInterfaceBgpStatus このメトリクスは、仮想インターフェイス上の BGP セッションの現在の状態を示します。値が 1 の場合は BGP セッションが確立されていることを示し、値が 0 の場合は切断されていることを示します。このメトリクスに CloudWatch アラームを設定することで、BGP セッションが切断された際に通知を受け取ることができ、DescribeVirtualInterfaces API のポーリングや Direct Connect コンソールの確認が不要になります。 VirtualInterfaceBgpPrefixesAccepted このメトリクスは、仮想インターフェイスを介してオンプレミスのネットワークから受け取った BGP プレフィックスの数を示します。Direct Connect では、 BGP セッションごとにプレフィックス数の上限が設定されており、この上限は仮想インターフェイスのタイプによって異なります。上限を超えると、BGP セッションはアイドル状態となり、セッションステータスがダウンになります。VIF タイプごとの経路数の上限の現在のクォータ値については、 Direct Connect のクォータ ページを参照してください。 VirtualInterfaceBgpPrefixesAccepted をモニタリングすることで、当該の上限を下回るしきい値で CloudWatch アラームを事前に設定しておき、上限に近づく前に早めに通知を受け取ることができます。また、このメトリクスは予期しない経路の消失を検知するのにも役立ちます。たとえば、オンプレミス側でルーティングポリシーの変更が行われ、AWS への経路広報が停止した場合などです。 VirtualInterfaceBgpPrefixesAdvertised このメトリクスは、仮想インターフェイスを介して AWS からオンプレミスネットワークに広報された BGP プレフィックスの数を示します。プレフィックス数の上限はアウトバウンドの経路広報にも適用され、仮想インターフェイスのタイプによって異なります。 VirtualInterfaceBgpPrefixesAdvertised メトリクスを追跡することで、AWS が想定通りの経路を広報していることを確認し、意図しない変更を検出できます。たとえば、経路集約やポリシー変更により経路が予期せず消失された場合などです。 ユースケース Direct Connect の 3 つの新しい CloudWatch メトリクスは、主に 2 つの運用ニーズに対応します。 BGP セッションの正常性のモニタリング VirtualInterfaceBgpStatus メトリクスに対して CloudWatch アラームを直接作成できるようになりました。Lambda 関数や API ポーリングは不要です。メトリクスの値が 0 に変化すると、CloudWatch がアラームを発報 し、Amazon Simple Notification Service( Amazon SNS )を通じて通知を受け取ることができます。これにより、BGP セッションのステータス変化に関連するトラフィック障害について、運用の複雑さと平均検出時間(MTTD)の両方を削減できます。 BGP プレフィックス数の変更のモニタリングと診断 VirtualInterfaceBgpPrefixesAccepted と VirtualInterfaceBgpPrefixesAdvertised メトリクスをモニタリングすることで、該当のプレフィックス数の上限を下回るしきい値に CloudWatch アラームを設定しておき、BGP セッションに影響が及ぶ前に早期に通知を受け取ることができます。 プレフィックス数の上限超過の防止だけでなく、これらのメトリクスは BGP セッションが維持されたままでもトラフィックに影響を与える経路変化の検知と診断にも役立ちます。BGP セッション自体は維持されているものの、経路がサイレントに消失される場合があります。たとえば、ルーティングポリシーの変更によって、オンプレミス側が特定のプレフィックスの経路広報を除外したり、意図しない変更により AWS 側から広報されるはずのプレフィックスが外部に広報されなくなった場合です。このような状況では、 VirtualInterfaceBgpStatus は 1 のままですが、影響を受けたプレフィックス宛てのトラフィックは流れなくなります。BGP ステータスとあわせて受信・広報プレフィックス数のメトリクスをモニタリングすることで、いずれかの方向での急激な減少を検出し、トラフィックへの影響と紐づけることで、根本原因の特定にかかる時間を短縮できます。 マルチリージョン構成やディザスタリカバリ (DR) 構成において、2 つの Direct Connect ロケーションが 2 つのリージョンに対してアクティブ/パッシブまたはアクティブ/アクティブの BGP 構成で接続されている場合、これらのメトリクスを使うことで、両方のパスが想定どおりのルートテーブルを双方向で保持していることを確認できます。スタンバイパスが想定されるプレフィックスの一部しか受信または広報していない場合、フェイルオーバーパスに問題があることを示しています。各仮想インターフェイスの両方のプレフィックスメトリクスに CloudWatch アラームを設定しておくことで、DR イベントや計画されたメンテナンスウィンドウの前に、この状態を事前に検知できます。 CloudWatch ダッシュボードでの BGP メトリクスのモニタリング 3 つの BGP メトリクスすべてを 1 つの CloudWatch ダッシュボードにまとめることで、仮想インターフェイス全体の BGP セッションの正常性とプレフィックス数を統合的に把握できます。図 2 は、 VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised をまとめて表示したダッシュボードの例です。 図 2: AWS Direct Connect 仮想インターフェイスの BGP セッションステータスとプレフィックス数を表示する CloudWatch ダッシュボード BGP モニタリングのための CloudWatch アラームの設定 以下の手順では、BGP セッションの障害を検出するために VirtualInterfaceBgpStatus メトリクスに CloudWatch アラームを作成する方法を説明します。 前提条件 アクティブな Direct Connect 仮想インターフェイスを持つ AWS アカウント CloudWatch アラームおよび SNS トピックを作成するための権限 BGP ステータスアラームの作成 CloudWatch コンソールを開き、ナビゲーションペインで アラーム を選択し、 アラームの作成 を選択します。 メトリクスの選択 を選択します。 検索ボックスに VirtualInterfaceBgpStatus と入力し、対象の仮想インターフェイス ID のメトリクスを選択して、 メトリクスの選択 を選択します。 統計 で 最小 を選択し、 期間 を 5 分に設定します。 条件 で、しきい値タイプを 静的 に設定し、 より低い を選択して、BGP セッションがダウンした際にアラームが発報されるよう しきい値に 1 を入力します。 次へ を選択し、アラートを受け取るための Amazon SNS 通知アクションを設定します。 次へ を選択し、アラームの名前を入力し、 次へ を選択し、 アラームの作成 を選択します。 図 3: VirtualInterfaceBgpStatus メトリクスの CloudWatch アラーム プレフィックス数アラームの作成 前述の手順のステップ 1〜2 を繰り返します。 メトリクス名を検索し、対象の仮想インターフェイスのメトリクスを選択します。 VirtualInterfaceBgpPrefixesAccepted は、AWS がオンプレミスネットワークから受け入れたプレフィックス数をモニタリングします。 VirtualInterfaceBgpPrefixesAdvertised は、AWS がオンプレミスネットワークに広報したプレフィックス数をモニタリングします。 統計 で 最大 を選択し、 期間 を 5 分に設定します。 条件 で、しきい値タイプを 静的 に設定し、比較演算子を選択して、しきい値を入力します。 プレフィックス数がしきい値を超えた場合にアラームを発報するには 以上 を選択します。たとえば、受信または広報プレフィックス数が適用されるプレフィックス上限に近づいたことを検出する場合です。 プレフィックス数がしきい値を下回った場合にアラームを発報するには 以下 を選択します。たとえば、受信または広報プレフィックス数が想定される最小値を下回り、経路の消失が発生した可能性を検出する場合です。 次へ を選択し、アラートを受け取るための SNS 通知アクションを設定します。 次へ を選択し、アラームの名前を入力し、 次へ を選択し、 アラームの作成 を選択します。 クリーンアップ テスト目的で CloudWatch アラームを作成した場合は、不要な課金を避けるために削除してください。料金の詳細については、 Amazon CloudWatch の料金ページ を参照してください。 CloudWatch コンソールを開きます。 ナビゲーションペインで アラーム を選択します。 作成したアラームを選択し、 アクション から 削除 を選択します。 考慮事項 メトリクスデータは、Direct Connect が利用可能なすべての AWS リージョンで利用できます。メトリクスは、Direct Connect ロケーションが紐づいているリージョンと同じリージョンの CloudWatch に公開されます。サポートされているロケーションの最新リストについては、 Direct Connect のロケーション ページを参照してください。 Direct Connect リソースに対する、すべての CloudWatch メトリクスは、追加費用なしで提供されます。 3 つの BGP メトリクスすべてを CloudWatch ダッシュボードにまとめることで、すべての仮想インターフェイスにわたる BGP セッションの正常性と経路数を一元的に把握することを推奨します。 メトリクスの値は 5 分ごとに更新されます。CloudWatch メトリクスは収集時点の BGP セッション状態を取得するため、収集間隔の間に発生して回復した BGP セッションのフラッピングはメトリクスに反映されない場合があります。BGP ステータスメトリクスは継続的に監視することで、セッションの安定性の傾向を追跡してください。 マルチリージョンまたはディザスタリカバリ (DR) アーキテクチャでは、各仮想インターフェイスに対して個別に CloudWatch アラームを作成することを推奨します。プライマリパスとスタンバイパスの間でプレフィックス数に大きな差がある場合、スタンバイ側の経路情報が不完全または正常に機能していない可能性があります。 まとめ Direct Connect 仮想インターフェイス向けの新しい CloudWatch メトリクス VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised により、BGP セッションの正常性とプレフィックス数をネイティブに可視化できるようになりました。BGP の障害検出や経路変更のモニタリングに、独自の Lambda 関数や API ポーリングは不要になりました。これらのメトリクスに CloudWatch アラームを設定することで、BGP の問題の検出時間を短縮し、プレフィックス数の上限超過による BGP セッションの切断を防止し、ハイブリッドネットワークが想定通りに動作していることを確認できます。Direct Connectと CloudWatch の詳細については、以下を参照してください。 AWS Direct Connect のユーザガイド Amazon CloudWatch のユーザガイド (訳者注:原文は 2026 年 4 月 13 日にメトリクスの公開リージョンに関する記述が更新されており、本翻訳は更新後の内容に基づいています) 翻訳は Technical Account Manager の豊山が担当しました。原文は こちら です。
本記事は 2026 年 3 月 30 日に公開された ” Introducing CloudWatch Metrics for AWS Direct Connect Virtual Interface BGP Health and Prefix Count ” を翻訳したものです。 本日、 AWS Direct Connect は Amazon CloudWatch における 仮想インターフェイス(VIF)に関する3 つの新しいメトリクス VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised のサポートを発表しました。これらのメトリクスにより、API を手動でポーリングしたりコンソールを確認したりすることなく、CloudWatch から直接 Border Gateway Protocol(BGP)セッションの正常性とプレフィックス数を把握できるようになります。本ブログでは、新しいメトリクスの概要、ユースケース、および修復アクションをトリガーするアラームの設定方法について説明します。CloudWatch で利用可能な Direct Connect メトリクスの完全なリストについては、 Direct Connect ユーザーガイドの Amazon CloudWatch によるモニタリング を参照してください。 VIF BGP ステータスおよびプレフィックス数メトリクスの提供前 この機能が提供される前は、Direct Connect の CloudWatch メトリクスは物理接続の正常性とトラフィックスループットのみをカバーしていました。BGP セッションステータス、オンプレミスルーターから受け入れたプレフィックス数、AWS からの経路広報、サイレントな経路の消失といった BGP レベルのテレメトリについては、Direct Connect API をポーリングしたり、独自の Lambda 関数を作成したり、またはオンプレミスのネットワーク管理ツールに頼る必要がありました。 Monitor BGP status on AWS Direct Connect VIFs and track prefix count advertised over transit VIF の記事では、そのようなアプローチの一例が紹介されています。今回の新しい CloudWatch メトリクスにより、そうした複雑さは不要となり、プレフィックス数のモニタリングはトランジット VIF に限定されなくなりました。 新しいメトリクスの概要 3 つの新しい CloudWatch メトリクスは、プライベート仮想インターフェイス、パブリック仮想インターフェイス、トランジット仮想インターフェイスの 3 種類すべての VIF タイプで利用できます。 図 1 は、オンプレミスネットワークが 3 種類の仮想インターフェイスを通じて AWS リソースに接続する様子を示すマルチリージョン Direct Connect アーキテクチャです。この図では、企業のデータセンターからDirect Connect を使用して AWS リージョン(us-east-1 および us-west-2)に接続する構成を示しています。プライベート仮想インターフェイスは、単一の VPC に直接接続するか、 Direct Connect ゲートウェイ を介して異なる AWS リージョンの複数の VPC に接続し、プライベートリソースへのアクセスを提供します。トランジット仮想インターフェイスは AWS Transit Gateway への接続を可能にし、単一の仮想インターフェイスを通じて異なる AWS リージョンの複数の VPC にアクセスできます。パブリック仮想インターフェイスは、パブリックインターネットを経由することなく、 Amazon S3 、 Amazon Kinesis 、 Amazon SQS 、 Amazon SNS などの AWS パブリックサービスエンドポイントへのアクセスを提供します。 また、このアーキテクチャでは各仮想インターフェイスのタイプに対して今回の CloudWatch メトリクスで導入された新しい BGP モニタリング機能も紹介しています。この図は、これらのメトリクスが CloudWatch に収集され、さらに CloudWatch ダッシュボードの作成や CloudWatch アラームの生成、Amazon SNS 経由での通知に活用することで、Direct Connect インフラストラクチャ全体にわたる包括的なモニタリングとアラートを実現する方法を示しています。 図 1: 3 種類すべての Direct Connect 仮想インターフェイスのタイプに対応した 3 つの新しい CloudWatch BGP メトリクス VirtualInterfaceBgpStatus このメトリクスは、仮想インターフェイス上の BGP セッションの現在の状態を示します。値が 1 の場合は BGP セッションが確立されていることを示し、値が 0 の場合は切断されていることを示します。このメトリクスに CloudWatch アラームを設定することで、BGP セッションが切断された際に通知を受け取ることができ、DescribeVirtualInterfaces API のポーリングや Direct Connect コンソールの確認が不要になります。 VirtualInterfaceBgpPrefixesAccepted このメトリクスは、仮想インターフェイスを介してオンプレミスのネットワークから受け取った BGP プレフィックスの数を示します。Direct Connect では、 BGP セッションごとにプレフィックス数の上限が設定されており、この上限は仮想インターフェイスのタイプによって異なります。上限を超えると、BGP セッションはアイドル状態となり、セッションステータスがダウンになります。VIF タイプごとの経路数の上限の現在のクォータ値については、 Direct Connect のクォータ ページを参照してください。 VirtualInterfaceBgpPrefixesAccepted をモニタリングすることで、当該の上限を下回るしきい値で CloudWatch アラームを事前に設定しておき、上限に近づく前に早めに通知を受け取ることができます。また、このメトリクスは予期しない経路の消失を検知するのにも役立ちます。たとえば、オンプレミス側でルーティングポリシーの変更が行われ、AWS への経路広報が停止した場合などです。 VirtualInterfaceBgpPrefixesAdvertised このメトリクスは、仮想インターフェイスを介して AWS からオンプレミスネットワークに広報された BGP プレフィックスの数を示します。プレフィックス数の上限はアウトバウンドの経路広報にも適用され、仮想インターフェイスのタイプによって異なります。 VirtualInterfaceBgpPrefixesAdvertised メトリクスを追跡することで、AWS が想定通りの経路を広報していることを確認し、意図しない変更を検出できます。たとえば、経路集約やポリシー変更により経路が予期せず消失された場合などです。 ユースケース Direct Connect の 3 つの新しい CloudWatch メトリクスは、主に 2 つの運用ニーズに対応します。 BGP セッションの正常性のモニタリング VirtualInterfaceBgpStatus メトリクスに対して CloudWatch アラームを直接作成できるようになりました。Lambda 関数や API ポーリングは不要です。メトリクスの値が 0 に変化すると、CloudWatch がアラームを発報 し、Amazon Simple Notification Service( Amazon SNS )を通じて通知を受け取ることができます。これにより、BGP セッションのステータス変化に関連するトラフィック障害について、運用の複雑さと平均検出時間(MTTD)の両方を削減できます。 BGP プレフィックス数の変更のモニタリングと診断 VirtualInterfaceBgpPrefixesAccepted と VirtualInterfaceBgpPrefixesAdvertised メトリクスをモニタリングすることで、該当のプレフィックス数の上限を下回るしきい値に CloudWatch アラームを設定しておき、BGP セッションに影響が及ぶ前に早期に通知を受け取ることができます。 プレフィックス数の上限超過の防止だけでなく、これらのメトリクスは BGP セッションが維持されたままでもトラフィックに影響を与える経路変化の検知と診断にも役立ちます。BGP セッション自体は維持されているものの、経路がサイレントに消失される場合があります。たとえば、ルーティングポリシーの変更によって、オンプレミス側が特定のプレフィックスの経路広報を除外したり、意図しない変更により AWS 側から広報されるはずのプレフィックスが外部に広報されなくなった場合です。このような状況では、 VirtualInterfaceBgpStatus は 1 のままですが、影響を受けたプレフィックス宛てのトラフィックは流れなくなります。BGP ステータスとあわせて受信・広報プレフィックス数のメトリクスをモニタリングすることで、いずれかの方向での急激な減少を検出し、トラフィックへの影響と紐づけることで、根本原因の特定にかかる時間を短縮できます。 マルチリージョン構成やディザスタリカバリ (DR) 構成において、2 つの Direct Connect ロケーションが 2 つのリージョンに対してアクティブ/パッシブまたはアクティブ/アクティブの BGP 構成で接続されている場合、これらのメトリクスを使うことで、両方のパスが想定どおりのルートテーブルを双方向で保持していることを確認できます。スタンバイパスが想定されるプレフィックスの一部しか受信または広報していない場合、フェイルオーバーパスに問題があることを示しています。各仮想インターフェイスの両方のプレフィックスメトリクスに CloudWatch アラームを設定しておくことで、DR イベントや計画されたメンテナンスウィンドウの前に、この状態を事前に検知できます。 CloudWatch ダッシュボードでの BGP メトリクスのモニタリング 3 つの BGP メトリクスすべてを 1 つの CloudWatch ダッシュボードにまとめることで、仮想インターフェイス全体の BGP セッションの正常性とプレフィックス数を統合的に把握できます。図 2 は、 VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised をまとめて表示したダッシュボードの例です。 図 2: AWS Direct Connect 仮想インターフェイスの BGP セッションステータスとプレフィックス数を表示する CloudWatch ダッシュボード BGP モニタリングのための CloudWatch アラームの設定 以下の手順では、BGP セッションの障害を検出するために VirtualInterfaceBgpStatus メトリクスに CloudWatch アラームを作成する方法を説明します。 前提条件 アクティブな Direct Connect 仮想インターフェイスを持つ AWS アカウント CloudWatch アラームおよび SNS トピックを作成するための権限 BGP ステータスアラームの作成 CloudWatch コンソールを開き、ナビゲーションペインで アラーム を選択し、 アラームの作成 を選択します。 メトリクスの選択 を選択します。 検索ボックスに VirtualInterfaceBgpStatus と入力し、対象の仮想インターフェイス ID のメトリクスを選択して、 メトリクスの選択 を選択します。 統計 で 最小 を選択し、 期間 を 5 分に設定します。 条件 で、しきい値タイプを 静的 に設定し、 より低い を選択して、BGP セッションがダウンした際にアラームが発報されるよう しきい値に 1 を入力します。 次へ を選択し、アラートを受け取るための Amazon SNS 通知アクションを設定します。 次へ を選択し、アラームの名前を入力し、 次へ を選択し、 アラームの作成 を選択します。 図 3: VirtualInterfaceBgpStatus メトリクスの CloudWatch アラーム プレフィックス数アラームの作成 前述の手順のステップ 1〜2 を繰り返します。 メトリクス名を検索し、対象の仮想インターフェイスのメトリクスを選択します。 VirtualInterfaceBgpPrefixesAccepted は、AWS がオンプレミスネットワークから受け入れたプレフィックス数をモニタリングします。 VirtualInterfaceBgpPrefixesAdvertised は、AWS がオンプレミスネットワークに広報したプレフィックス数をモニタリングします。 統計 で 最大 を選択し、 期間 を 5 分に設定します。 条件 で、しきい値タイプを 静的 に設定し、比較演算子を選択して、しきい値を入力します。 プレフィックス数がしきい値を超えた場合にアラームを発報するには 以上 を選択します。たとえば、受信または広報プレフィックス数が適用されるプレフィックス上限に近づいたことを検出する場合です。 プレフィックス数がしきい値を下回った場合にアラームを発報するには 以下 を選択します。たとえば、受信または広報プレフィックス数が想定される最小値を下回り、経路の消失が発生した可能性を検出する場合です。 次へ を選択し、アラートを受け取るための SNS 通知アクションを設定します。 次へ を選択し、アラームの名前を入力し、 次へ を選択し、 アラームの作成 を選択します。 クリーンアップ テスト目的で CloudWatch アラームを作成した場合は、不要な課金を避けるために削除してください。料金の詳細については、 Amazon CloudWatch の料金ページ を参照してください。 CloudWatch コンソールを開きます。 ナビゲーションペインで アラーム を選択します。 作成したアラームを選択し、 アクション から 削除 を選択します。 考慮事項 メトリクスデータは、Direct Connect が利用可能なすべての AWS リージョンで利用できます。メトリクスは、Direct Connect ロケーションが紐づいているリージョンと同じリージョンの CloudWatch に公開されます。サポートされているロケーションの最新リストについては、 Direct Connect のロケーション ページを参照してください。 Direct Connect リソースに対する、すべての CloudWatch メトリクスは、追加費用なしで提供されます。 3 つの BGP メトリクスすべてを CloudWatch ダッシュボードにまとめることで、すべての仮想インターフェイスにわたる BGP セッションの正常性と経路数を一元的に把握することを推奨します。 メトリクスの値は 5 分ごとに更新されます。CloudWatch メトリクスは収集時点の BGP セッション状態を取得するため、収集間隔の間に発生して回復した BGP セッションのフラッピングはメトリクスに反映されない場合があります。BGP ステータスメトリクスは継続的に監視することで、セッションの安定性の傾向を追跡してください。 マルチリージョンまたはディザスタリカバリ (DR) アーキテクチャでは、各仮想インターフェイスに対して個別に CloudWatch アラームを作成することを推奨します。プライマリパスとスタンバイパスの間でプレフィックス数に大きな差がある場合、スタンバイ側の経路情報が不完全または正常に機能していない可能性があります。 まとめ Direct Connect 仮想インターフェイス向けの新しい CloudWatch メトリクス VirtualInterfaceBgpStatus 、 VirtualInterfaceBgpPrefixesAccepted 、 VirtualInterfaceBgpPrefixesAdvertised により、BGP セッションの正常性とプレフィックス数をネイティブに可視化できるようになりました。BGP の障害検出や経路変更のモニタリングに、独自の Lambda 関数や API ポーリングは不要になりました。これらのメトリクスに CloudWatch アラームを設定することで、BGP の問題の検出時間を短縮し、プレフィックス数の上限超過による BGP セッションの切断を防止し、ハイブリッドネットワークが想定通りに動作していることを確認できます。Direct Connectと CloudWatch の詳細については、以下を参照してください。 AWS Direct Connect のユーザガイド Amazon CloudWatch のユーザガイド (訳者注:原文は 2026 年 4 月 13 日にメトリクスの公開リージョンに関する記述が更新されており、本翻訳は更新後の内容に基づいています) 翻訳は Technical Account Manager の豊山が担当しました。原文は こちら です。
こんにちは。Amazon Web Services Japan のソリューションアーキテクト、田中 里絵 です。 本ブログは、2026 年 4 月〜5 月にかけて全国 5 拠点・計 8 回で開催した「 AWS Local Executive Roadshow 」シリーズの第 4 回レポートです。シリーズの背景や全体像については、 シリーズ 初回のイベントレポート をご覧ください。 前日(4 月 22 日)の AI を自社の業務に活かしたい企業の皆様向けセッションに続き、2026 年 4 月 23 日は同じ名古屋にて、AI で顧客を支援する IT 企業のエグゼクティブの皆様をお迎えし、「 AI ツールで実現する継続収益ビジネス 〜開発力を資産に変える〜 」と題したイベントを開催しました。AI エージェント時代のビジネスモデル変革をテーマに、登壇企業の実体験から「開発力をどう資産に変えるか」を共に考える一日となりました。 イベントの流れ 当日はまず、Amazon Web Services Japan のソリューションアーキテクト古屋 楓から「AWS で一歩先へ!生成 AI 時代のビジネスモデル変革の打ち手」と題したオープニングセッションを実施しました。このセッションでは、AI Agent を活用して IT 企業のビジネスの形がどう変わっていくのか、 Kiro のデモを交えながら解説しました(AWS セッションの詳細については 大阪・IT 企業編のイベントレポート をご覧ください)。 写真: AWS 古屋によるオープニングセッション ここからは、中部を拠点に AI を活用したビジネス変革に取り組まれている 2 社のパネルディスカッションの内容をご紹介します。 事例紹介:エスツーアイ株式会社様 〜Kiro の仕様駆動開発で、製造業 SI の課題に挑む〜 1 社目は エスツーアイ株式会社 様です。愛知県知多郡東浦町に本社を構え、製造業、特に自動車部品メーカー向けの SI を行っておられる会社です。生産準備段階から量産までの全体をカバーし、一貫して担当されています。当日はシステム開発センター 部長の與儀(よぎ) 智章 様にお話しいただきました。 背景と課題、お取り組み内容 與儀様は、製造業 SI の構造的な課題として 3 つを挙げられました。1 つ目は、新規開発における仕様のブレです。プロジェクトごとに要件定義や設計・開発を進めていく中で、同じ機能でもユーザーによって要求が異なったり、開発者が過去の経験を新しいプロジェクトに取り入れようとすることで、仕様にブレが生じ、設計や機能が肥大化してしまう。2 つ目は、運用保守における属人化です。お客様ごとにカスタマイズした構築をしているため、システムに人が紐づいてしまい、負荷分散しようとしても引き継ぎコストがかかる。3 つ目は、レガシーシステムからの再構築で発生する仕様漏れです。何十年も前のシステムを新しい仕組みに移行する際、仕様を誰も把握していない状態で進めざるを得ず、後工程で問題が発覚してしまう。 與儀様は、コーディングエージェントを活用してこれらの打ち手になりえるかを探るため、まず自社の休暇申請システムおよび出張旅費精算システムの開発で Kiro の活用にチャレンジをされました。Kiro の仕様駆動開発(Spec 駆動開発)では、要件定義 → デザイン → タスク化・実装という 3 つのフェーズを踏むため、従来のウォーターフォール型で起きがちだった仕様のブレを早い段階で防ぐことができます。実際に、画面が動作するところまで 2〜3 日で到達できたとのことで、早い段階でユーザーに見せることで後工程での問題発生を防ぐ効果が期待できると話されました。 さらに、あえてコーディングルールを縛らずに Kiro に開発させたところ、自社では通常採用しないような設計パターン(例:メール送信処理をデータベースで管理しバッチ実行する方式)が提案され、検討した結果そちらの方が設計として優れていたというケースもあったとのことです。AI を「指示通りに動く道具」ではなく「新しい設計のアイディアを一緒に作るパートナー」として活用できる可能性を実感されたといいます。 一方で、チーム開発に展開する際にはソース管理やコーディングルールの整備が必要になること、AI による変更の影響範囲をどう管理するかといった課題も見えてきた、と述べられました。 今後の展望 今後は、自社が持つ製造業関連のノウハウを最大限活用し、例としてプロジェクトの上流工程段階でのモック開発や、会議ログをもとにしたユーザー向けドキュメントの自動作成など、AI を活用してビジネスのスピード向上を目指したい、と述べられました。また、人間がどう統制し、AI がどう自律的に動くか、といったルールやフレームワークの整備を行うことで、より効果的に AI を活用していきたいとも述べられていました。今回は社内システムの事例についてお話いただきましたが、こうしたお取り組みを通して、SI の業務でどう AI を活用していくかも探っていかれるとのことです。 事例紹介:i Smart Technologies 株式会社様 〜IoT × AI で製造現場の意思決定を変える「AI 製造部長」〜 2 社目は i Smart Technologies 株式会社 様です。愛知県碧南市に本社を構え、自動車部品メーカーであるアサヒ鉄工様のグループ会社として、アサヒ鉄工で培った IoT の改善ノウハウを他の製造業に展開されている会社です。当日は COO の松下 隼人 様にお話しいただきました。 背景と課題、お取り組み内容 i Smart Technologies 様は、製造業のお客様向けに IoT ソリューションで生産性データを収集し、データベースに蓄積するところまでは実現されていました。課題は、蓄積されたデータを現場の意思決定にどうつなげるか、でした。製造現場の担当者は日々の業務に追われており、ダッシュボードを見に行く余裕がない。データはあるのに活用されない、という状況にありました。これを解決するために開発されたのが「 AI 製造部長 」です。 AI 製造部長は、IoT で収集した生産性データを Amazon Bedrock で解析し、製造部長のように分かりやすい言葉で現場スタッフに通知するサービスです。現場での朝礼代わりに使ってもらい、製造現場の意思決定に活かすことを目指して開発をスタートしました。 開発にあたって、まず課題となったのが AI の回答が安定しないことでした。当時の生成 AI の言語モデルは、2026年現在と比べると能力の制約も大きくありました。ときに抽象的な質問、ときにコンテキストが多い質問など、ユーザーの様々な質問に対して効率的に回答を得るために、モデル頼みではなく、データを含めたサービス全体の設計が必要だと気づかれたとのことです。 この壁を乗り越えるために取られたアプローチが 2 つあります。1 つ目は、 ルールベースとのハイブリッド設計 です。よくある質問に対しては、事前に情報を整理して AI に提供しておくようにして回答品質を担保しつつ、それ以外の質問に対してはAIが情報を動的に取得して回答するようにしました。2 つ目は、 AI を表面上見せない設計 です。製造現場のユーザーは AI に質問を書くこと自体にハードルがあるため、プッシュ型でユーザーに情報を届ける方式も採用しました。 今後の展望 導入後、現場からは「面白い」という声があり、積極的に使ってもらえるようになったとのことです。AI への抵抗感の強いメンバーもいたため、まずは正確性のある情報を通知するところから運用を開始し、AI の信頼感を少しずつ醸成していきました。このこつこつと実績を積み上げていったことで、今では「人間が書いてるのでは?」と時折聞かれるほど現場に溶け込み、信頼感を獲得されているといいます。 「製造業は、業界の性質上属人化している業務も多く、会社全体のモデルを変えるような AI 活用にはチャレンジがある。同じような業界で情報交換をしたり、会社と会社で関係づくりをして、収益モデルを業界全体で変えていくような動きができれば」と述べていただきました。会場ではこのようなメッセージで、大きく共感しながら聞いているお客様が多くおられました。 写真: エスツーアイ株式会社 與儀様、i Smart Technologies 株式会社 松下様、AWS 植木によるパネルディスカッション まとめ 名古屋でご登壇いただいた 2 社に共通していたのは、AI を「道具」ではなく「パートナー」として位置づけ、自社のドメイン知識と掛け合わせることで新しい価値を生み出すという発想でした。S2I 様は Kiro の仕様駆動開発で製造業 SI の構造的課題に向き合い、i Smart Technologies 様は IoT データと Amazon Bedrock を組み合わせて製造現場の意思決定を変えるサービスを生み出されました。 このブログシリーズでは、本イベントの開催レポートを各拠点の開催順にお届けしていきます。今回お届けした名古屋編に続き、次回は広島編を予定していますので、どうぞお楽しみに。 そして読者の皆様へ…もし本ブログを読んで「うちの会社の取り組みもぜひ発信したい」「AWS と一緒に何か取り組みたい」「AI で日本をもっと元気にしていきたい」と感じていただけたなら、ぜひ担当営業、あるいはお近くの AWS メンバーまでお気軽にお声がけください。 関連ブログ エスツーアイ株式会社様の AWS 生成 AI 事例「Kiro を活用した経費精算システムの迅速な開発」のご紹介 AWS Local Executive Roadshow 大阪・初回レポート(実践企業に学ぶ生成 AI 導入の勘所 〜眠るデータを企業価値に変える〜) AWS Local Executive Roadshow 大阪・IT 企業編レポート(AI ツールで実現する継続収益ビジネス 〜開発力を資産に変える〜)
みなさんこんにちは!製造業のお客様を中心に技術支援をしているソリューションアーキテクトの吉川と岩根です。まもなく AWS Summit Japan 2026 が開催されます。今年も千葉の幕張メッセで開催いたしますので是非ご参加ください!今年も製造業向けの展示を出展する予定ですので、その内容をご紹介します!各展示ごとのブログも続々投稿する予定です。 AWS Summit とは AWS Summit は、共に未来を描くビルダーが一堂に会して、アマゾン ウェブ サービス (AWS) に関して学習し、ベストプラクティスの共有や情報交換ができる、クラウドでイノベーションを起こすことに興味がある全ての皆様のためのイベントです。日本最大の “AWS を学ぶイベント”、それが AWS Summit です。基調講演、260を超えるAWSセッション・事例セッション・パートナーセッションがあり、 300以上の展示でオフラインならではの体験ができます。開催期間は 6 月 25 日 (木) と 26 日 (金) の 2 日間で会場は幕張メッセです。 本ブログでは数ある展示とセッションの中から製造業に関する展示とセッションをご紹介いたします。まだ登録してない方は以下のリンクから是非ご登録ください。 登録はこちら 製造業に関する展示は Hall 7 の AWS Expo 内にある AWS Industries Zone にあります。 AWS Industries Zone では、製造、金融、自動車など 13 の業界別に特化したソリューションと、Physical AI の特設展示をご覧いただけます。各業界をリードするお客様の AWS 活用事例や、生成 AI をはじめとする最新テクノロジーの実用的なデモを通じて、業界固有の課題解決方法をご覧いただけます。また、業界に精通したエキスパートと具体的な活用シナリオについて、ご相談いただけます。 製造領域では、Smart Manufacturing を中心としたコンセプチュアルな 製造 Highlight 展示 と、お客様事例展示や、 Product Engineering や Smart Product などの最新のデモを含む 製造 Industry 展示 の2つの展示エリアを用意しています。 展示全体像 赤い枠が製造展示のエリア A WS Expo 内の Industries Zone の図。赤い枠が製造業むけ展示。上が Highlight 展示、下が Industry 展示 製造業 Highlight 展示の概要 Highlight 展示では「 AI で加速する製造業のルネッサンス」をテーマとして、製造業の未来を体感できる展示を行います。3つの展示で構成されており、以下のような配置となっています。その他に、エリア内に設置された100インチモニタを使用して、各ブースの説明をライトニングトーク形式で紹介したり、展示の概観が分かるような動画を投影する予定です。 生産ラインの未来 製造業では、需要と供給が絶えず変動する中、生産ラインの最適な稼働が求められています。本展示では、生産ライン全体のシミュレーションによりボトルネックを特定し、生産効率を最大化する仕組みをご紹介します。 技術要素として、以下の3点を取り上げます。 ソフトウェア定義型の生産ライン ― ライン構成をコードで定義し、リポジトリで管理する仕組み デジタルツインによるシミュレーション ― 現場から収集したデータを基に、仮想空間上で生産プロセスを検証・最適化する仕組み AI エージェントによる意思決定支援 ― 生産ラインを含む多様なデータを活用し、データドリブンな判断を実現する仕組み これら3つの要素を組み合わせた生産ラインの将来像を、実機デモを交えてご覧いただきます。 工場のデジタルツインとシミュレーションを活用して AI アシスタントでボトルネックの分析 ソフトウェア定義型ファクトリー これまでハードウェアとして物理的に存在していた PLC を仮想化し、ソフト PLC(仮想 PLC )として動作させることで、生産ラインの制御ロジックをソフトウェアとして扱えるようになります。本展示では、物理 PLC からソフト PLC への移行を実際にお見せし、その可能性を体感いただきます。 ソフト PLC への移行がもたらす最大の変化は、ライン構成そのものをコードとして定義できるようになることです。これにより、 Git リポジトリを活用したバージョン管理が可能となり、誰が・いつ・どのような変更を加えたのかを完全にトレースできます。 さらに本展示では、エッジデバイスからクラウドまでを一気通貫でつなぐエンドツーエンドの制御アーキテクチャをご紹介します。工場のフロアで動作するエッジコンピューティングと、クラウド上のオーケストレーション層がシームレスに連携することで、生産ラインの柔軟性とスケーラビリティが飛躍的に向上します。 ソフトウェア PLC により制御されるミニチュア工場 サプライチェーン 本展示では、 AI がサプライチェーンの意思決定を変える瞬間を体感いただけます。 需要変動や供給遅延が発生した際に、担当者が AI エージェントに分析を依頼し、在庫枯渇の予測・生産計画への影響・代替調達の選択肢・対応方針案を迅速に導き出す一連の流れを体験いただきます。 AI が在庫や物流の状況をリアルタイムに読み解き、複数の対応策をコスト・リスクとともに提示します。 需要の急変や供給の遅延といった製造現場の日常的な課題に、 AI がどのように応えるのか。今まさに起こっている変化をご覧ください。 市 場の変化に応じて、生産計画に反映できる需要予測を行う AI エージェント 製造業 Industry 展示の概要 Industry 展示では、製造業のお客様の現場で「すぐに使える」テクノロジーを、実機デモを通じて体感いただける展示を多数ご用意しています。 Highlight 展示が「未来の製造業」をテーマにコンセプチュアルに描いたのに対し、 Industry 展示は Product Engineering (製品設計開発)と Smart Product (スマート製品開発・運用)という製造業のものづくりライフサイクルを支える 2 つの軸に加え、エッジ × AWS の選択肢を一望できる AWS 認定デバイスウォール 、そしてお客様自身による事例展示エリアで構成しています。 AWS のソリューションアーキテクトや事例企業の方々と、その場で具体的な活用シナリオをじっくり相談できる、ぐっと現場目線のエリアです。 生成 AI 時代の製品設計開発 CAE 解析や CAD 操作、過去ナレッジの活用など、製品設計開発の現場にはエンジニアの専門性に強く依存する業務が数多く存在します。本展示では、フィジカル AI 時代の到来を見据え、エンジニアの設計開発を加速する 2 つの切り口で実機デモをご覧いただきます。 Engineering and Development HUB( EDH )による HPC 基盤の俊敏な立ち上げ ― 大規模シミュレーション、 CAE 解析、 GPU を用いたモデル作成といった、フィジカル AI 時代の研究開発に欠かせない HPC 環境を AWS 上に短時間で構築する仕組みをご紹介します。仮想ワークステーションとスケーラブルな HPC 基盤を Web ポータルから即座に利用でき、自動スケーリングやコスト管理機能も標準で備えているため、エンジニアや研究者は使い慣れたツールに集中できます。 Engineering and Development Hub (EDH) 設計開発の現場ですぐに実践できる生成 AI ユースケース ― 自然言語による CAD/CAE 操作アシスト、過去設計ナレッジの瞬時検索、実験レポートの自動生成など、明日からでも取り入れられる「使える AI 」の活用例をご紹介します。その場でご覧いただける動作デモに加え、後日体験できるワークショップもご用意しているので、 AI が設計業務をどう変えるのかをじっくり実感いただけます。 生成AI x CAD + CAE + NVIDIA Isaac によるPhysical AI シミュレーション 「フィジカル AI 時代の研究開発をどう加速するか」を、現場のエンジニア目線で体感いただける展示です。 AI 駆動のスマート製品開発とサービス運用 スマート製品の世界では、製品そのものだけでなく、ソフトウェア開発から市場投入後の運用改善までを含むエンドツーエンドのライフサイクル全体が競争力の源泉となります。本展示では、ソフトウェア開発と運用改善の両面で AI エージェントが何を変えるのかを、 2 つのデモでお見せします。 AI エージェントが加速するスマート製品のソフトウェア開発 ― ソフトウェア開発 AI エージェント Kiro を活用し、企画から運用までのソフトウェア開発プロセスを AI と協調しながら進める世界をご紹介します。組み込みシステムやライフサイクルの長いソフトウェアを含む開発全体に AI 支援を適用できること、既存の設計文書やコーディングルールをそのまま活かせること、そしてチケットを用いた責任分担により人間と AI が役割を持ち寄って開発を進められることを、実際のデモで体感いただきます。 製品開発プロセスの調査・計画・実装・リリース・運用全て Kiro で開発を支援 AI エージェントが実現するデータ駆動のプロダクト改善サイクル ― Amazon Quick を使い、専門知識がなくても AI によるデータ分析を実現する仕組みをご紹介します。営業・保守・設計開発・品質保証といった部門ごとに分散したデータに加え、気象などの公開データも統合し、問題の発見から原因の特定、対策の立案まで、 AI がパートナーとなってプロダクト改善の意思決定を支援します。 出荷したフィールド上の製品情報からえた知見を分析し原因の究明と対策計画を Amazon Quick が立案し意思決定を支援 「製品を作って終わり」ではなく、「作りながら、運用しながらより良くしていく」これからのスマート製品開発のあり方を、ぜひその目でお確かめください。 AWS 認定デバイスウォール エッジデバイスとクラウドを連携させるニーズはここ数年で急速に高まっており、「どのデバイスを選べばよいのか」「クラウド連携の検証コストをどう下げるか」というご相談を多くいただきます。 AWS 認定デバイスプログラムは、 AWS の IoT サービスとの接続が検証された信頼性の高いデバイスをラインアップしたプログラムです。本展示では、認定済みのエッジデバイスを「ウォール」状にずらりと並べ、ハードウェアパートナー各社との協業によって広がる選択肢を一望していただけます。日本国内におけるエッジ × AWS のサービス構築を加速し、お客様のビジネスを後押しする取り組みを、実機を通じてご紹介します。 壁一面に展示された AWS 認定デバイスのラインアップ。多様なエッジデバイスをまとめて見比べいただけます。写真は AWS Summit Japan 2025より お客様事例展示 Industry 展示エリアには、 AWS をご活用いただいているお客様自身による事例展示エリアも併設しています。今回の製造業エリアでは、製造現場とエンジニアリングの両面から、特徴的な AWS 活用事例をお持ちのお客様 2 社をお迎えします。 オムロン株式会社「生成 AI を活用した知財 AI エージェント『 ALBERT 』の内製開発」 世界中で日々数千件もの特許が出願されるなか、知財業務の現場では「全特許を網羅的に把握しきれない」「技術と知的財産の双方に通じた専門人材の工数が逼迫している」「機密情報を扱うため社外の生成 AI サービスを気軽には使えない」といった課題が積み重なっていました。 本展示では、オムロンが Amazon Bedrock や Amazon OpenSearch Serverless などの AWS サービスを活用して内製開発した、知財 AI エージェント 「 ALBERT 」 の取り組みをご紹介いただきます。研究開発に特化した自社の生成 AI 活用基盤「 RD Buddy 」の上に AI エージェントを実装することで、情報漏洩リスクとコスト課題を抑えつつ、特許情報の検索・分析・要約といった知財業務を高度化・効率化。 特許調査・発明説明書作成の工数を 90% 削減 という成果を生んでいます。今後は R&D 部門での利用拡大( 60 名 → 120 名)から全社展開まで見据えた、まさに「生成 AI による R&D の DX 」を体現する事例です。 i Smart Technologies 株式会社「 Amazon Bedrock を活用した『 AI 製造部長』」 製造現場では IoT データを集めても「データをどう読み解けばよいか分からない」という壁にぶつかることが少なくありません。 i Smart Technologies は、自社の IoT データ収集サービス iXacs に Amazon Bedrock ( Claude )を組み込み、 多様な製造設備から集まる時系列データを自然言語で解釈する「 AI 製造部長」 を実装しました。 専門知識のない現場担当者が、異常の兆しやその原因、次に取るべきアクションを自然言語で受け取れるようになり、データ解析にかかる時間を 70% 削減という成果を生んでいます。「トヨタのカイゼン文化 × AI 」を体現するこの取り組みは、 IoT 製品そのものに生成 AI を組み込む「組込み AI 」の先行事例としても注目されています。本展示では、収集したデータを「使えるデータ」に変える AI の力を、 COO の松下様ご自身の言葉でご紹介いただきます。 会期中は、お客様ご自身による解説に加え、その場での Q&A も可能です。実装の裏側や苦労した点、運用してみての気づきなど、現場の生の声を直接お聞きいただける貴重な機会ですので、ぜひ足をお運びください! 著者紹介 岩根 義忠 (Yoshitada Iwane) アマゾン ウェブ サービス ジャパン合同会社 ソリューションアーキテクト 自動車メーカーの生産技術開発部門を経て AWS Japan に入社し、エンタープライズ事業本部でソリューションアーキテクトとして活動中。前職でソフトウェア開発のアジャイル/スクラムに出逢い、自部門での導入やスケールを主導したことにより、モダンな開発手法やクラウドに目覚める。 趣味はバイクの他にギター演奏、自分の部屋の飾り付けなど。二児の父だが二人とも実家を出ているため、現在は妻と気楽な二人暮らし。栃木県那須塩原市在住。 吉川 晃平 (Kohei Yoshikawa) アマゾン ウェブ サービス ジャパン合同会社 シニアソリューションアーキテクト ソフトウェア開発者およびシステムインテグレーターとして 20 年以上従事した後、2020 年から AWS Japan で活動中。エンタープライズ事業本部で、日本の多くの製造業や SI 事業のお客様の AWS 活用を支援してきた。 スマートプロダクトのためのサービス開発に興味を持ち、最近は AI 開発エージェントを用いた製品開発ライフサイクルの加速に取り組んでおり、お客様との会話のネタが尽きない毎日を送っている。 趣味は週末のサイクリング、冬はスキー。風を切る乗り物がとにかく好き。
みなさん、こんにちは。AWS ソリューションアーキテクトの三厨です。 今週も様々なアップデートが公開されています。特に、AWS Blogで紹介している AI エージェント対応のデータ基盤は、エージェントをデータに以下に紐づけるのかというイメージの湧くデモになっていますので、ぜひご一読ください。 生成 AI を活用したビジネス変革に取り組むお客様を支援する 生成 AI 実用化推進プログラム は引き続き参加企業を募集しています。ご興味のある方はぜひご覧ください。 それでは、5 月 18 日週の生成 AI with AWS 界隈のニュースを見ていきましょう。 さまざまなニュース AWS 生成 AI 国内事例ブログ: 3 か月で開発スピード 3 倍を達成:キヤノン IT ソリューションズ様が実践した AI Coding Agent 導入・普及の仕組みづくり キヤノン IT ソリューションズ株式会社様(以下、キヤノン ITS 様)は、SIer としての競争力強化と顧客への付加価値提供のため、AI 駆動開発の社内普及を推進しました。生成 AI ツールの導入は進んでいたものの、現場での活用の定着と全社的な広がりが課題でした。これを解決するため、AWS と共同でロードマップを敷き、9 月のキックオフイベント「AI Agent DAY」(参加者 250 名以上)から 3 か月間にわたり、Amazon Q Developer を 57 名で業務適用検証しました。エグゼクティブスポンサーである金澤社長の支援、生成 AI ビジネス推進室による予算負担、ハンズオン・オフィスアワー・Teams コミュニティでの情報共有を組み合わせ、PoC 開発で従来 2 週間かかっていた作業を 3 日で完了するなど、開発スピード 3 倍、工数 67% 削減を達成しています。今後は本検証で得た知見を活かして社内での活用パターンを整理し、AWS と連携してさらなる活用領域の拡大に取り組まれる予定です。 AWS 生成 AI 国内事例ブログ: 富士電機ITソリューションが挑戦する働き方の大変革 〜Amazon Q Developer 活用から Kiro による新しい企業価値創出へ〜 富士電機 IT ソリューション株式会社様(以下、FSL 様)は、製造・流通・金融・建設・公共・文教など幅広い業界向けに IT ソリューションを提供する SIer です。SIer としての競争力強化と顧客への付加価値提供のため、生成 AI による開発生産性向上が重要なテーマでした。FSL 様は 2025 年 12 月から金森 重晴 執行役員の指揮のもと Amazon Q Developer Pro サブスクリプションを 20 ユーザーで展開し、「まず使ってみる」を合言葉にボトムアップ型のアプローチで現場主導の活用文化を育てた結果、現在では 50 ユーザー以上に拡大しています。本記事では、テスト結果報告書の作成や障害情報のインサイト抽出(原田氏)、ソースコードのレビュー支援や既存プログラム理解(久保田氏)、リバースエンジニアリングや見積もりツールの内製開発(前田氏)など現場発の 3 つの活用事例が紹介されています。今後は利用者のさらなる拡大と、仕様駆動開発を実現する Kiro の導入により、SDLC 全体を再設計する取り組みを進めていかれる予定です。 ブログ記事「 AWS における AI エージェント対応のデータ基盤 (1) — ツールを配る時代から、データを返す時代へ 」を公開 AI エージェントに本番データを分析させるには、認可・ビジネスデータカタログ・ドメイン知識の 3 要素を揃える必要があります。本記事ではサンプルリポジトリ aws-samples/sample-sagemaker-agentic-analyst を題材に、これら 3 要素が Amazon SageMaker Catalog、Amazon Bedrock AgentCore、AWS Lake Formation、Amazon S3 Access Grants の組み合わせでどう実装されているかを俯瞰し、構造化データと非構造化データを束ねた分析や Subscribe 申請を仲介するデモシナリオを紹介しています。データ分析エージェントを企業データに安全に接続したい方にぜひお読みいただきたい記事です。 ブログ記事「 AWS における AI エージェント対応のデータ基盤 (2) — SageMaker Catalog で行・列レベルのアクセス権を透過的に適用する 」を公開 上記シリーズの第 2 回です。AI エージェント経由のデータアクセスに、SageMaker Catalog で設定した行・列・オブジェクトレベルのアクセス制御をユーザー本人の権限で透過的に効かせるための実装パターンを解説しています。Cognito トークンから Tool Lambda の手元にプロジェクトロールの一時認証情報を運ぶ 5 ステップの認証情報変換フローや、Policy in AgentCore による Cedar ポリシーでのツール単位認可など、AgentCore Gateway を使った認可設計の実装の中身を詳しく追える内容になっています。 ブログ記事「 【開催報告】ガバメントクラウドワークショップ 2026 春 ~ AI で実践する開発・モダナイズ・運用 ~ 」を公開 5 月 19 日に開催された、ガバメントクラウドに携わる事業者向けワークショップの開催報告です。NTT データ様の Step Functions を中核としたフルマネージド・ジョブ基盤の事例、アクロクエストテクノロジー様の Amazon Bedrock を用いたセキュアな生成 AI 構築、NTT 西日本様の GenU と Amazon Bedrock AgentCore を活用した自治体向け AI エージェント、デジタル庁様による全府省庁約 18 万人向け生成 AI 利用環境「源内」の構築、AI エージェント開発・モダナイズ・運用の 4 テーマ別ワークショップなど、公共分野で生成 AI を活用するヒントが詰まった内容です。 ブログ記事「 Amazon Bedrock が、新しい高度なプロンプト最適化および移行ツールを導入 」を公開 5 月 14 日に発表された Amazon Bedrock Advanced Prompt Optimization の使い方を解説したブログです。元のプロンプトと最適化されたプロンプトを最大 5 個のモデルで同時に比較しながら最適化を進められるツールで、Lambda 関数によるカスタムスコアリング、LLM-as-a-judge ルーブリック、自然言語による方向性基準の 3 通りの評価方法をサポートしています。新しいモデルへの移行や、既存モデルでの精度改善に取り組まれている方にお勧めの記事です。 ブログ記事「 OpenSearch Agent Skills で agentic IDE に組み込み型のインテリジェンスを 」を公開 Claude、Cursor、Kiro などの agentic IDE の中で OpenSearch の専門知識をそのまま活用できる、オープンで組み合わせ可能なスキル集 OpenSearch Agent Skills の発表ブログです。Search、Logs、Solr から OpenSearch への移行という 3 つの基本スキルにより、自然言語の意図から検索アプリケーションの構築、ログ分析、移行作業を数分で実行できます。npx skills add opensearch-project/opensearch-agent-skills でインストールでき、MCP サーバーや追加コンポーネントは不要です。 ブログ記事「 AWS Security Agent のフルリポジトリコードスキャン機能のプレビュー提供開始 」を公開 AWS Security Agent に追加された、コードベース全体をコンテキスト認識型で分析するフルリポジトリコードレビュー機能の解説ブログです。アプリケーションのプロファイリング、脆弱性の検索、トリアージと重複排除、独立した検証という 4 ステージで動作し、既知のパターンと照合する従来の SAST が見逃すような、検証関数の不整合や設計レベルのギャップも検出します。検出結果は Verified / Could not verify を区別した構造化された証拠付きで提示されます。プレビュー期間中は既存の Security Agent のお客様に追加料金なしで提供されています。 ブログ記事「 Sim-to-Real と Real-to-Sim: 高性能な Physical AI を支える原動力 」を公開 現実世界で知覚・推論・行動するロボット、いわゆる Physical AI システムを支える Sim-to-Real / Real-to-Sim パイプラインを解説した記事です。シミュレーションと現実のギャップを埋めるためのドメインランダム化、現実環境をシミュレーション対応のデジタル表現に変換する Real-to-Sim、合成データ生成とフィルタリングなどを取り上げ、Vision Language Action モデル (VLA) の品質がシミュレーションデータの品質に依存することなどが説明されています。製造業・自動運転・医療・エネルギー・小売などの業界応用にも触れられています。 ブログ記事「 AI、技術的負債、そして AI を使いこなす力への道筋 」を公開 エンタープライズが直面する 3 つの共通課題(自社の技術資産の把握不足、AI 導入の停滞、AI を実践的に使いこなす力のギャップ)に対し、AWS Transform custom のモダナイゼーションエージェントを活用してコードからリアルタイムにドキュメントアーティファクトを自動生成するアプローチを提案しています。技術的負債の可視化と AI を使いこなす力の習得を同時に実現し、ポートフォリオ全アプリケーションへの展開を OKR として組織に定着させる進め方を、元 CTO の視点から実践的に解説した記事です。 サービスアップデート Amazon Bedrock がリクエストレベルの使用量属性のサポートを拡大 これまで Converse / ConverseStream API でサポートされていたリクエストレベルのメタデータ付与が、InvokeModel および InvokeModelWithResponseStream API でも利用できるようになりました。チーム、アプリケーション、環境、実験などの単位でモデル推論の使用量を個別のリクエストレベルでタグ付けし、Bedrock のモデル呼び出しログで分析できます。社内の利用状況を細かく可視化してコストを最適化したり、内部関係者へ利用量を報告したりするのが容易になります。Amazon Bedrock が利用可能な全ての AWS リージョンで利用できます。 Amazon SageMaker AI が推論エンドポイントで OpenAI 互換 API をサポート Amazon SageMaker Inference が OpenAI 互換 API をサポートするようになりました。OpenAI SDK、LangChain、Strands Agents などの既存ツールから、エンドポイント URL を変えるだけで SageMaker エンドポイントに接続できます。カスタム連携コードや SDK ラッパーの書き直しは不要で、独自の GPU インスタンス選択、VPC 内でのデータ保持、任意のオープンソース・ファインチューニング済みモデルの実行といった SageMaker のメリットをそのまま享受できます。東京、ソウル、シンガポール、シドニーなど 14 のリージョンで利用可能です。 AWS Transform に新しいエージェンティック移行アセスメント機能が追加 AWS Transform で、What-if シナリオ、カスタマイズ可能な前提条件、柔軟なファイル形式サポート、複数の TCO(総所有コスト)アセスメント機能を含む高度な移行アセスメント機能が利用できるようになりました。RVTools のエクスポート、CMDB データ、AWS Transform 検出ツール、サードパーティのディスカバリーツールなど、手元にあるあらゆるデータからアセスメントを開始できます。リージョン、リソース使用率、サービスマッピングをカスタマイズした What-if シナリオを作成して比較し、EC2、FSx、S3、SQL Server on EC2、仮想デスクトップのコストモデリングや、人材生産性・運用レジリエンス・ビジネスアジリティ・サステナビリティといった Cloud Value Framework の追加要素も含めて評価できます。 AWS Security Agent がペネトレーションテスト検出結果の検証スクリプトを生成 AWS Security Agent で、ペネトレーションテストで発見された各脆弱性に対して、その場で実行可能な検証スクリプトが自動生成されるようになりました。これまでは検出結果の詳細にある再現手順を手作業でなぞる必要がありましたが、今後はセキュリティチームがスクリプトをダウンロードし、環境変数を設定して対象システムに対して実行するだけで脆弱性を独立して再現・検証できます。スクリプトにはセットアップ手順、ドキュメント化された環境変数、機微な値のリダクションが含まれ、トリアージの効率化と修復の加速につながります。AWS Security Agent がサポートされている全リージョンで利用できます。 今週は以上です。それでは、また来週お会いしましょう! 著者について 三厨 航 (Wataru MIKURIYA) AWS Japan のソリューションアーキテクト (SA) として、ヘルスケア・ハイテク製造業のお客様のクラウド活用を技術的な側面・ビジネス的な側面の双方から支援しています。クラウドガバナンスや IaC 分野に興味があり、最近はそれらの分野の生成 AI 応用にも興味があります。最近の趣味はカメラです。 週刊 AWS の新しいサムネイルを撮影したので、是非ご覧ください。
みなさん、こんにちは。ソリューションアーキテクトの戸塚です。今週も 週刊AWS をお届けします。 新緑がまぶしく、汗ばむ日も増えてきた五月下旬。爽やかな初夏の風とともに、嬉しいアップデートが届きました!「オンプレミスの VMware 環境をクラウドに移行したいけど、規模が大きくて…」とお悩みの方、朗報です。Amazon Elastic VMware Service(Amazon EVS)が、1 クラスターあたり最大 32 ホストまでサポートするようになり、大規模な VMware ワークロードもよりスムーズに AWS 上で動かせるようになりました。これまで規模の大きさがネックで移行をためらっていた企業様も、この季節の勢いに乗って、ぜひ一歩踏み出してみてはいかがでしょうか? それでは、先週の主なアップデートについて振り返っていきましょう。 2026年5月18日週の主要なアップデート 5/18(月) AWS Secrets Manager Agent の pre-fetching と IAM role assumption 機能の提供開始 AWS Secrets Manager Agent に 2 つの新機能が追加されました。pre-fetching 機能により、Agent 起動時に指定したシークレットを一括取得してキャッシュできるようになり、アプリケーション起動時のレイテンシーを削減できます。IAM role assumption 機能により、指定した IAM ロールを引き受けてシークレットを取得できるため、クロスアカウントでのシークレット取得が可能になります。これらの機能は、BatchGetSecretValue API を活用してコストを最適化し、ロールベースのアクセス制御によってセキュリティ態勢を強化します。 Amazon SageMaker Studio が SageMaker Flexible Training Plans による GPU キャパシティ予約をサポート Amazon SageMaker Studio の IDE (JupyterLab および Code Editor) で、SageMaker Flexible Training Plans (FTP) を利用した GPU キャパシティ予約が可能になりました。これにより、高需要の GPU インスタンスへの予測可能なアクセスが確保され、オンデマンドインスタンスと比較して最大 65% のコスト削減を実現できます。完全にセルフサービスで調達でき、インフラ管理は不要です。プラン終了 30 分前には自動的に通知が届き、作業の保存時間が確保されます。 Amazon Redshift が Iceberg テーブルへの ALTER TABLE と AWS Glue Data Catalog マウント経由の書き込みに対応 Amazon Redshift は、AWS Glue Data Catalog (awsdatacatalog) マウント経由での Apache Iceberg テーブルへの直接書き込みと、ALTER TABLE DDL による Iceberg テーブルのスキーマ、パーティション、プロパティの変更に対応しました。自動マウントされる awsdatacatalog を使用することで、外部スキーマを作成せずに Redshift の変換結果をデータレイクに保存でき、あらゆるエンジンからクエリできます。これは AWS Lake Formation と統合された Iceberg テーブルで特に有用です。従来、Iceberg テーブルの構造更新にはテーブルとデータの削除が必要で、データパイプラインの複雑性とレイテンシーが増大していました。Redshift で変更されたテーブルは、Amazon EMR や Amazon Athena などの他の Iceberg 互換エンジンとの互換性を維持します。 Amazon EVS が環境あたり 32 ホストのサポートを開始 Amazon Elastic VMware Service (Amazon EVS) が、環境あたり最大 32 の ESXi ホストをサポートするようになりました。これは従来の上限 16 ホストの 2 倍です。ユーザーは VMware Cloud Foundation (VCF) のドメインとクラスターを柔軟に構成でき、すべてのホストを 1 つの大規模クラスターに配置するか、複数の小規模クラスターに分散させるか、任意の組み合わせを選択できます。この拡張により、最大 32 ホストまでスケールアップするためのサービスクォータ増加リクエストが可能になり、複数環境を管理する運用オーバーヘッドを削減できます。 5/19(火) Amazon MWAA が Apache Airflow 3.2 をサポート開始 Amazon Managed Workflows for Apache Airflow (MWAA) が Apache Airflow 3.2 をサポートしました。このアップデートにより、データアウェアスケジューリング機能が強化され、asset partitioning を使用して S3 パスの特定パーティションなどデータの一部分のみでダウンストリーム DAG をトリガーできるようになりました。Human-in-the-Loop (HITL) 機能には操作や承認の履歴を一覧で確認できるビューが追加され、Grid View の仮想化により大規模 DAG のレンダリングが高速化されました。XCom を UI から直接管理できるようになり、PythonOperator で非同期関数をネイティブサポートするなど、開発者の生産性が向上しています。 5/20(水) Amazon SageMaker HyperPod が推論ワークロードのデータキャプチャに対応 Amazon SageMaker HyperPod が推論ワークロードのデータキャプチャに対応しました。この機能により、推論リクエストとレスポンスのペイロードを記録し、モデルモニタリング、コンプライアンス、デバッグ、オフライン分析に活用できます。データキャプチャは SageMaker エンドポイント、ロードバランサー、モデル Pod の 3 つのレベルで設定でき、必要な可視性に応じて選択または組み合わせて使用できます。キャプチャしたデータは非同期で Amazon S3 に配信され、推論パフォーマンスに影響を与えません。HyperPod Inference Operator または SageMaker JumpStart を通じてモデルをデプロイする際に設定できます。この機能は EKS オーケストレーターを使用する SageMaker HyperPod クラスターで利用可能で、SageMaker HyperPod がサポートされている全ての AWS リージョンで提供されます。 Amazon SageMaker Unified Studio でデータ品質ルールの設定と評価をサポート Amazon SageMaker Unified Studio は、AWS Glue Data Quality を基盤とするデータ品質ルールの設定と評価機能を追加しました。データエンジニア、アナリスト、データサイエンティストは、DQDL (Data Quality Definition Language) を使用してデータ品質ルールを定義し、SageMaker Unified Studio 内で直接評価を実行できます。カタログテーブルの静止データと Visual ETL ジョブ内のトランジットデータの両方に対応し、不良データがデータレイクや下流の分析・機械学習ワークロードに影響を与える前に検出できます。この機能は、Amazon SageMaker Unified Studio が利用可能なすべての AWS リージョンで、IAM Identity Center ベースドメインと IAM ベースドメインの両方で利用できます。 AWS Security Hub が未使用アクセスからのアイデンティティリスクを検出 AWS Security Hub が IAM Access Analyzer と統合し、未使用の IAM 権限、ロール、認証情報を AWS 組織全体で検出する機能を追加しました。中央セキュリティチームは、脅威、露出、ポスチャの findings と同じ統一コンソールでアイデンティティリスクを管理できるようになります。Security Hub を組織で有効化すると、サービスリンク IAM Access Analyzer が各メンバーアカウントに自動作成され、追加設定なしで 90 日間のアクセスアクティビティを評価し、未使用アクセスを検出します。また、実際の使用パターンに基づいて最小権限ポリシーをオンデマンドで生成する機能も提供されます。本機能は Security Hub Essentials に追加コストなしで含まれます。 Amazon Bedrock がリクエストレベル使用状況帰属のサポートを拡張 Amazon Bedrock は、InvokeModel および InvokeModelWithResponseStream API において、個別のリクエストレベルでモデル推論使用状況を特定のチーム、アプリケーション、環境、実験に帰属させることができるようになりました。この機能により、追加のリソースをプロビジョニングすることなく、組織全体での Amazon Bedrock の使用状況分布をきめ細かく可視化し、消費パターンの把握、コスト最適化、内部ステークホルダーへの使用状況報告が可能になります。この機能は、Amazon Bedrock が利用可能なすべての AWS 商用リージョンで提供されています。 5/21(木) Amazon RDS Custom for SQL Server が最新の GDR アップデートに対応 Amazon RDS Custom for SQL Server が、Microsoft SQL Server の最新 GDR (General Distribution Release) アップデートに対応しました。今回のアップデートでは、SQL Server 2019 CU32+GDR (バージョン 15.00.4465.1.v1) と SQL Server 2022 CU24+GDR (バージョン 16.00.4250.1.v1) をサポートします。これらのアップデートは、CVE-2026-32167 と CVE-2026-32176 の 2 つの権限昇格脆弱性に対処しています。RDS Custom インスタンスは、AWS マネジメントコンソール、AWS CLI、または AWS SDK を使用してアップグレードできます。 Amazon SageMaker AI が推論エンドポイント向け OpenAI 互換 API をサポート Amazon SageMaker Inference が OpenAI 互換 API をサポートし、OpenAI SDK、LangChain、Strands Agents などの既存ツールをエンドポイント URL の変更のみで利用できるようになりました。カスタム統合コードや SDK ラッパーは不要で、認証は既存の AWS 認証情報を使用します。これにより、独自の GPU インスタンスの選択、VPC 内でのデータ保持、オープンソースやファインチューン済みモデルの実行、ワークロードに合わせたオートスケーリングが可能になります。本機能は現在、米国東部 (バージニア北部)、米国西部 (オレゴン)、欧州 (アイルランド、フランクフルト)、アジアパシフィック (東京、シンガポール、シドニー) を含む 14 リージョンで利用できます。 SageMaker Unified Studio が Glue コネクタのクロスサブネットジョブリトライを自動プロビジョニング Amazon SageMaker Unified Studio が、サブネット障害時の Glue ジョブリトライ用のコネクション自動作成機能をリリースしました。管理者がドメイン VPC に複数のプライベートサブネットを定義すると、システムが自動的にすべての新規プロジェクト向けにコネクタをプロビジョニングします。プライマリサブネットで IP アドレス枯渇やアベイラビリティゾーン障害が発生した場合、Glue ジョブは別のサブネットのコネクタで自動的にリトライされるため、エンジニアの手動介入が不要になります。 5/22(金) AWS Clean Rooms でコラボレーションの変更可能な payment configurations をサポート AWS Clean Rooms でコラボレーションメンバーの payment configurations (支払い設定) を変更できるようになりました。この機能により、SQL クエリ、PySpark ジョブ、ML モデルのトレーニングと推論、合成データ生成の各コストタイプについて、どのパートナーが支払いを担当するかを柔軟に指定できます。変更は change request (変更リクエスト) プロセスを通じて行い、全コラボレーションメンバーの承認が必要です。SQL と PySpark 分析では複数の authorized payers (承認された支払い者) を設定でき、分析実行時に支払い者を選択できます。 AWS Security Agent がペネトレーションテストで発見された脆弱性の検証スクリプトを自動生成する機能を追加 AWS Security Agent は、ペネトレーションテストで発見された脆弱性の検証スクリプトを自動生成する機能を追加しました。セキュリティチームは、手動で再現手順を追跡する代わりに、即実行可能なスクリプトをダウンロードし、環境変数を設定して対象システムに対して実行することで、脆弱性を独立して検証できます。これにより、トリアージの効率化と修復の迅速化が実現します。AWS Security Agent がサポートされる全ての AWS リージョンで利用可能です。 Amazon SageMaker Unified Studio が IAM ベースドメインでビジネスメタデータとガバナンスをサポート Amazon SageMaker Unified Studio は、IAM ベースドメインでビジネスコンテキスト、メタデータ、データガバナンス機能のサポートを開始しました。これにより、IAM 認証を使用する環境でも、AWS Glue Data Catalog のテーブルにビジネス名や説明、README ドキュメントを追加できるようになります。AI 生成メタデータ機能により、大量のテーブルのカタログ化作業を自動化できます。また、ビジネスグロサリーによる用語の標準化、メタデータフォームテンプレートによる構造化属性の管理、サブスクリプションベースのアクセス管理により、組織全体でのデータ検索と安全な共有が実現します。この機能は、SageMaker Unified Studio が利用可能なすべての AWS リージョンで提供されています。 それでは、また来週お会いしましょう! 著者について 戸塚 智哉(Tomoya Tozuka) / @tottu22 飲食やフィットネス、ホテル業界全般のお客様をご支援しているソリューション アーキテクトで、AI/ML、IoT を得意としています。最近では AWS を活用したサステナビリティについてお客様に訴求することが多いです。 趣味は、パデルというスペイン発祥のスポーツで、休日は仲間とよく大会に出ています。
本記事は 2026 年 2 月 12 日 に公開された「 Achieve near-zero downtime database maintenance by using blue/green deployments with AWS JDBC Driver 」を翻訳したものです。 最新のアプリケーションは継続的な可用性を求めており、データベースのメンテナンス運用は開発チームにとって重要な課題となっています。データベース更新、パッチ適用、アップグレードに対する従来のアプローチでは、ダウンタイムや接続障害、手動介入が必要となり、ビジネスオペレーションの中断やユーザーエクスペリエンスに影響を与えることがあります。 Amazon Relational Database Service (Amazon RDS) の Blue/Green デプロイメントは、並列のデータベース環境を作成することで計画的なダウンタイムの課題に対処します。本番環境に適用する前にデータベースの変更をテストできるようにします。このアプローチによりメンテナンスウィンドウは大幅に短縮されますが、切り替えプロセス中に接続の切断、DNS 伝播の遅延、接続障害時の手動介入など、わずかな中断が発生する可能性があります。 AWS は 2023 年に AWS JDBC Driver をリリースし、標準の JDBC ドライバーに AWS 固有の機能を追加しました。PostgreSQL、MySQL、MariaDB の JDBC ドライバー上のレイヤーとして構築されたラッパーで、Amazon Aurora と Amazon RDS の機能をサポートします。Amazon Aurora の接続追跡、AWS Identity and Access Management (IAM) 認証、読み取り/書き込みトラフィック分割など、複数のプラグインが含まれています。フェイルオーバー管理、モニタリング、認証、負荷分散などの機能を AWS JDBC Wrapper Driver でアプリケーションに統合できます。 本記事では、AWS JDBC Driver の Blue/Green デプロイメントプラグイン を紹介します。 組み込みプラグイン で、Blue/Green デプロイメントの切り替え時に接続ルーティング、トラフィック管理、切り替え検出を自動的に処理します。プラグインの設定方法と使用方法を示し、切り替え時にダウンタイムを最小限に抑える方法を説明します。 AWS JDBC Driver Blue/Green デプロイメントプラグインの紹介 Blue/Green デプロイメントプラグインは、AWS JDBC Driver の組み込みコンポーネントで、Blue/Green デプロイメントと連携して以下を提供します。 切り替えの自動検出と準備 遷移中のトラフィック管理 古い DNS の問題を回避する DNS 非依存のルーティング 最小限の設定変更 — JDBC 接続設定のみ プラグインは以下のように動作します。 RDS メタデータテーブルを通じて Blue/Green デプロイメントのステータスを監視 Blue と Green 両環境の接続インベントリを維持 切り替えフェーズに基づいてトラフィックをルーティング 遷移中の接続障害をグレースフルに処理 主な機能 AWS JDBC Driver Blue/Green デプロイメントプラグインは、データベース切り替え時の中断を最小限に抑えるために連携して動作する 3 つのコア機能を提供します。Blue/Green デプロイメントのフェーズの自動検出、両環境の適切なインベントリ管理、および切り替え状況に基づく動的なトラフィックルーティングです。これらの機能はバックグラウンドで継続的に動作し、接続障害を軽減しますが、切り替えプロセス中に発生する可能性のある一時的な例外に対応するため、アプリケーション側でもリトライロジックを実装することが推奨されます。 自動切り替え検出 プラグインはバックグラウンド監視スレッドを使用し、約 1 秒ごとに Blue/Green デプロイメント API をポーリングしてデプロイメントのステータス変更やフェーズの遷移を継続的に検出します。フェーズの変更が検出されると、即座に接続ルーティング戦略を調整します。プロアクティブな監視により、切り替えイベントを予測して接続管理を準備できるため、Blue/Green 遷移全体を通じてアプリケーションの接続性を向上させます。 プラグインは Blue/Green デプロイメントのステータスを継続的に監視し、以下のようにフェーズ遷移を検出します。 フェーズ検出タイムライン : NOT_CREATED : Blue/Green デプロイメントプラグインのコンポーネントがまだ作成されていません。 CREATED : Blue/Green デプロイメントが存在し、プラグインコンポーネントが初期化されます。プラグインは Blue と Green 両環境のインベントリを作成し、クラスターエンドポイントを対応する IP アドレスにマッピングします。両環境のヘルスステータスを追跡する監視接続が確立されます。 PREPARATION : プラグインはトラフィックをリダイレクトする接続ルーティングルールを確立します。各ソースエンドポイント (Blue 環境) を特定の IP アドレスにマッピングする設定を作成し、新しい接続が適切なターゲットに向けられる一方で既存の接続はアクティブなまま維持されます。このフェーズでは、現在のデータベース操作を中断することなく、最終的なトラフィック切り替えに必要なインフラストラクチャをセットアップします。 IN_PROGRESS : アクティブな切り替えが進行中で、遷移中はソース (Blue) とターゲット (Green) 両環境でクエリ実行が一時停止されます。ソース (Blue) 環境への JDBC コールの一時停止によりデータベース負荷を軽減し、ターゲット (Green) 環境でのレプリケーションの追いつきを可能にします。プラグインは Blue 環境の IP アドレスに直接ソースエンドポイント (Blue) への新しい接続をリダイレクトして古い DNS エントリへの接続を排除し、ターゲットエンドポイント (Green) への新しい接続は一時停止します。 POST : プラグインは両環境のクラスタートポロジーと DNS エントリを更新します。プラグインは DNS 伝播を監視し、DNS エントリが安定するにつれて IP ベースのルーティングからホスト名ベースの接続に段階的に移行します。 COMPLETED : 切り替えが正常に完了しました。 プラグインは AWS Blue/Green デプロイメントのステータスを以下のフェーズにマッピングします。 Blue/Green デプロイメントのステータス Blue/Green デプロイメントプラグインのフェーズ プラグインのアクション AVAILABLE CREATED 監視を初期化する。 SWITCHOVER_INITIATED PREPARATION 新しい接続をリダイレクトする接続ルーティングインフラストラクチャを確立する。 SWITCHOVER_IN_PROGRESS IN_PROGRESS すべてのクエリ実行を一時停止し、新しい接続を Blue 環境の IP アドレスにルーティングする。 POST 最初は IP ベースのルーティングでトラフィックを処理し、段階的にホスト名ベースの接続に移行する。 SWITCHOVER_COMPLETED COMPLETED 監視を終了し、通常の操作を再開する。 接続インベントリ管理 プラグインは Blue と Green 両環境のインベントリをすべて維持し、自動切り替え操作を実現します。 Blue 環境の追跡 : CREATED フェーズ中に、プラグインは Blue 環境のすべてのコンポーネント (クラスターエンドポイント、リーダーエンドポイント、ライターエンドポイント、個別のインスタンスエンドポイント) を検出しカタログ化します。各エンドポイントについて、対応する IP アドレスを解決して保存し、現在の本番環境の完全なマッピングを作成します。このインベントリは切り替え操作時の比較のベースラインとなります。 Green 環境の追跡 : 同時に、プラグインは対応するすべての Green 環境のエンドポイントを特定しマッピングします。Blue/Green デプロイメントのメタデータを使用して、各 Blue エンドポイントに対応する Green の対応先を把握し、Blue と Green コンポーネント間の関係を確立します。すべての Green エンドポイントの IP アドレスを解決し、切り替え時に即座に使用できるよう維持します。 適切なトラフィック管理 切り替え時に、プラグインは接続の確立とクエリ実行の両方を対象としたトラフィック管理を実装します。 接続管理 : ルーティング戦略を使用して新しいデータベース接続の確立を制御 クエリ実行管理 : 重要なフェーズ中の既存接続での SQL ステートメントの実行を制御 フェーズごとのトラフィック管理: PREPARATION: Blue エンドポイントへの新しい接続は直接 IP アドレスを使用してルーティングされます。 既存の接続は通常どおり継続します。 DNS 解決をバイパスする IP ベースのルーティングが使用されます。 IN_PROGRESS: Green エンドポイントへの新しい接続は一時停止されます。 Blue エンドポイントへの新しい接続はデフォルトでダイレクト IP ルーティングを使用しますが、 bgSuspendNewBlueConnections が有効な場合は一時停止されます。 Blue と Green 両エンドポイントですべてのクエリ実行が一時停止されます。 アクティブな切り替え期間中、Blue と Green 両環境への既存の接続はドロップされます。 POST: Blue エンドポイントへの新しい接続は、IP ベースのルーティングを使用して Green エンドポイント (新しい Blue 環境) にルーティングされます。 Blue エンドポイントの DNS エントリが更新されると、ホスト名ベースのルーティングに移行します。 Green エンドポイント (古い Green 環境) への新しい接続は拒否されます。 COMPLETED: 新しいアクティブなエンドポイントへの通常のルーティングが再開されます。 前提条件 データベースエンジンの要件 データベースエンジン Blue 環境 Green 環境 Amazon Aurora PostgreSQL エンジンリリース 17.5、16.9、15.13、14.18、13.21 以降 エンジンリリース 17.5、16.9、15.13、14.18、13.21 以降 Amazon RDS for PostgreSQL rds_tools v1.7 以降 (17.1、16.5、15.9、14.14、13.17、12.21) rds_tools v1.7 以降 (17.1、16.5、15.9、14.14、13.17、12.21) Amazon Aurora MySQL 任意のデータベースエンジンバージョン エンジンリリース 3.07 以降 Amazon RDS for MySQL Blue/Green デプロイメント 対応バージョン Blue/Green デプロイメント 対応バージョン アプリケーションスタックの要件 AWS JDBC Driver バージョン 2.6.4 以降 データベースドライバー: PostgreSQL JDBC ドライバーまたは MySQL/MariaDB JDBC ドライバー ランタイム環境: Amazon Corretto 8 以上または Java 8 以上 クラスターのセットアップとトポロジー AWS JDBC Driver Blue/Green プラグインがデータベースのアップグレードやメンテナンス中にアプリケーションのダウンタイムをどのように最小化するかを示すため、テスト環境をセットアップしました。一般的な本番トポロジーを表す、1:1 のライター/リーダー構成の Aurora PostgreSQL クラスターで構成されています。 サンプル Java アプリケーションはクラスターのライターエンドポイントに対して一定の読み取りワークロードを生成し、Blue/Green デプロイメントの切り替え中にプラグインがアプリケーションの接続性を向上させることを実証します。 以下の図のように、Blue/Green デプロイメントを作成しました。 ソース (Blue) 環境には以下が含まれます。 1 つのプライマリライターインスタンス 1 つのリーダーインスタンス 関連するクラスターおよびインスタンスエンドポイント ターゲット (Green) 環境は以下のトポロジーを備えています。 対応するライターインスタンス 対応するリーダーインスタンス 同等のエンドポイント設定 この対称的なセットアップにより、プラグインが Blue/Green デプロイメントのステータスを監視し、切り替えの進行に合わせてアプリケーション接続を適切なエンドポイントに自動的にリダイレクトするため、ターゲット (Green) 環境が切り替えプロセス中にワークロードリクエストを処理できます。 Blue/Green デプロイメントプラグインを使用した Java アプリケーションのセットアップ AWS JDBC Driver をアプリケーションに統合するには、依存関係管理に Maven または Gradle ビルドシステムを使用します。サンプルアプリケーションでは Maven を使用したセットアップを示していますが、依存関係は Gradle プロジェクトでも動作します。 Maven の依存関係 pom.xml ファイルを更新して以下の依存関係を追加します。 <dependency> <groupId>software.amazon.jdbc</groupId> <artifactId>aws-advanced-jdbc-wrapper</artifactId> <version>2.6.4</version> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <version>LATEST</version> </dependency> Gradle ユーザーは、同じ依存関係を Gradle の依存関係構文で build.gradle ファイルに追加できます。 主なプラグインパラメーター Blue/Green デプロイメントプラグインの以下のパラメーターを設定します。 wrapperPlugins : データベース接続用にロードしてアクティブ化する AWS JDBC Wrapper プラグインを指定します。Blue/Green デプロイメントプラグインを使用するには、以下の Java コードのように bg プラグインをロードする必要があります。 props.setProperty("wrapperPlugins", "bg"); bgdId : プラグイン内で特定の Blue/Green デプロイメント操作を追跡するためのユーザー定義の一意の識別子を指定します (デフォルト: 1)。このパラメーターは AWS コンソールの Blue/Green デプロイメント名やリソース ID とは関係なく、複数の Blue/Green デプロイメントを同時に監視する際にプラグインが区別するための内部ラベルです。例えば、AWS アカウントで 3 つの Blue/Green デプロイメントが同時に実行されている場合、各デプロイメントに一意の bgdId 値 (1、2、3 や bg1、bg2、bg3 など) を割り当て、プラグインが各デプロイメントのステータスと切り替えイベントを独立して追跡・監視できるようにする必要があります。 blue-green-monitoring-connectTimeout : Blue/Green デプロイメントのステータスを追跡する監視接続の接続タイムアウトをミリ秒で設定します (デフォルト: 30000)。プラグインはデプロイメントフェーズの変更を検出するために個別の監視接続を確立するため、このパラメーターは重要です。適切なタイムアウトにより、プラグインは無限に待機することなくデプロイメントの進行状況を確実に監視できます。 blue-green-monitoring-socketTimeout : デプロイメントステータスを追跡する監視接続のソケットタイムアウトをミリ秒で設定します (デフォルト: 30000)。デプロイメントフェーズの確認時に監視操作が無限にブロックされることを防ぎ、ネットワークの問題や応答の遅延時にもプラグインの応答性を維持するために不可欠です。 bgSwitchoverTimeoutMs : プラグインが Blue/Green デプロイメントのステータスを監視し続ける最大時間をミリ秒で定義します (デフォルト: 300000 — 5 分)。このパラメーターは、プラグインがデプロイメントの切り替えプロセスをタイムアウトするまでアクティブに追跡する期間を決定します。Blue/Green 切り替え操作を開始する前に定義した切り替えタイムアウトと同じかそれ以上の値に設定してください。切り替えがタイムアウト前に正常完了した場合、Blue/Green デプロイメントステータスの監視は自動的に停止します。プラグインが無期限に監視せず、Amazon RDS の切り替えプロセスが完了し検出されるのに十分な時間を確保するため、適切な値を設定してください。 bgSuspendNewBlueConnections : 切り替えフェーズ中に Blue クラスターへの新しい接続を一時停止するかどうかを制御します (デフォルト: false)。true に設定すると、プラグインはアクティブな切り替えフェーズ中に Blue ノードへの新しい接続の試行を一時的に停止します。 以下のコードは Blue/Green プラグインパラメーターの設定方法を示しています。 // Configure blue/green plugin parameters props.setProperty("wrapperPlugins", "bg,auroraConnectionTracker,failover2,efm2"); props.setProperty("bgdId","blue-green-demo-id"); props.setProperty("blue-green-monitoring-connectTimeout", "20000"); props.setProperty("blue-green-monitoring-socketTimeout", "20000"); props.setProperty("bgSwitchoverTimeoutMs","600000"); テストでは、Blue/Green プラグインの効果を測定するため、Blue/Green デプロイメントの切り替え中に Aurora PostgreSQL クラスターのライターエンドポイントに対して継続的な読み取り専用ワークロードを実行する 2 つの同一アプリケーションを評価しました。Blue/Green プラグインなしのベースラインアプリケーションは、切り替えフェーズ中に接続の中断が発生し、接続障害を処理するためにアプリケーションレベルのリトライロジックが必要でした。400 件のクエリ中 2 件の接続障害が発生し、切り替えプロセス中のアプリケーションダウンタイムは 30.21 秒で、新しいエンドポイントへの手動での接続再確立が必要でした。 Blue/Green プラグインを有効にし、Blue 接続の一時停止を有効にしたアプリケーションは、切り替えフェーズ中の耐障害性が向上しました。テストシナリオでは、プラグイン有効のアプリケーションは 400 件のクエリ中接続障害がゼロで、切り替えプロセス中のワークロード実行の一時停止は 11.77 秒、自動ルーティングの一時停止と回復で接続を管理しました。プラグインはアプリケーション起動直後に Blue/Green デプロイメントを検出し、デプロイメントプロセス全体を通じてソースとターゲット両環境を継続的に監視しました。POST フェーズと COMPLETED フェーズでは、プラグインがすべてのクエリをターゲット (Green) 環境に自動的にルーティングし、切り替えプロセス中の手動エンドポイント更新が不要になりました。ただし、ネットワーク遷移中に発生する可能性のある接続関連の例外に対応するため、アプリケーションにリトライロジックを実装することを推奨します。 Blue/Green デプロイメントのメタデータとライフサイクルのサマリー Blue/Green デプロイメントの切り替え中に、プラグインがデプロイメントの進行状況とステータスを追跡するメタデータを監視できます。Aurora PostgreSQL の場合は get_blue_green_fast_switchover_metadata() 関数で、デプロイメントフェーズ、トポロジーの変更、切り替えステータスに関するリアルタイム情報を取得します。RDS PostgreSQL の場合は rds_tools.show_topology() 関数が同様のメタデータを提供します。RDS/Aurora MySQL インスタンスは mysql.rds_topology テーブルを使用します。デプロイメントのステータスを確認し、Blue と Green 環境間の遷移が正常に完了したことを検証できます。以下の例はステータス変更のサンプルです。 -[ RECORD 1 ]--+----------------------------------------------- id | 1758432615 endpoint | apg-17.cluster.<aws-region>.rds.amazonaws.com port | 5432 role | BLUE_GREEN_DEPLOYMENT_SOURCE status | AVAILABLE version | 1.0 update_stamp | 1759801475 -[ RECORD 2 ]--+----------------------------------------------- id | 756345441 endpoint | apg-17-green-xxx.cluster.<aws-region>.rds.amazonaws.com port | 5432 role | BLUE_GREEN_DEPLOYMENT_TARGET status | AVAILABLE version | 1.0 update_stamp | 1759801475 postgres=> SELECT * FROM get_blue_green_fast_switchover_metadata('aws_jdbc_driver-" + DriverInfo.DRIVER_VERSION + "'); -[ RECORD 1 ]--+---------------------------------------------- id | 756345441 endpoint | apg-17.cluster.<aws-region>.rds.amazonaws.com port | 5432 role | BLUE_GREEN_DEPLOYMENT_TARGET status | SWITCHOVER_COMPLETED version | 1.0 update_stamp | 1759801921 詳細なパフォーマンスメトリクスと切り替えタイムラインはプラグインによりアプリケーションログに自動的に記録されます。 wrapperLoggerLevel を fine または finest に設定すると、 logSwitchoverFinalSummary やその他の診断情報を取得して分析とトラブルシューティングに利用できます。 Oct 14, 2025 12:11:39 AM software.amazon.jdbc.plugin.bluegreen.BlueGreenStatusProvider logSwitchoverFinalSummary FINE: [bgdId: 'blue-green-demo-id'] ---------------------------------------------------------------- timestamp time offset event (ms) ---------------------------------------------------------------- 2025-10-14T00:10:08.4603764Z -44135 ms NOT_CREATED 2025-10-14T00:10:08.5063897Z -44089 ms CREATED 2025-10-14T00:10:49.7132486Z -2882 ms PREPARATION 2025-10-14T00:10:52.5956307Z 0 ms IN_PROGRESS 2025-10-14T00:11:04.2233952Z 11627 ms POST 2025-10-14T00:11:09.3191489Z 16723 ms Green topology changed 2025-10-14T00:11:38.7487807Z 46153 ms Blue DNS updated 2025-10-14T00:11:39.0190950Z 46423 ms Green DNS removed 2025-10-14T00:11:39.0193661Z 46423 ms COMPLETED ---------------------------------------------------------------- logSwitchoverFinalSummary は、Blue/Green デプロイメントのライフサイクル全体の時系列ビューを提供します。 切り替え前フェーズ (負の時間) : -44.13 秒 : プラグインが初期化され、Blue/Green デプロイメントのステータスを最初に確認します (NOT_CREATED 状態)。 -44.08 秒 : プラグインが Blue/Green デプロイメントの存在を検出し (CREATED に遷移)、すぐに Blue と Green 両環境のインベントリの作成と監視接続の確立を開始します。 -44.08 〜 -2.88 秒 : プラグインは両環境への接続を継続的に監視・維持します。 -2.88 秒 : RDS Blue/Green デプロイメントが切り替えを開始します (プラグインが PREPARATION フェーズを検出)。準備フェーズが始まり、プラグインは差し迫った切り替えに備えます。 -2.88 〜 0 秒 : 最終準備ウィンドウが完了します。 アクティブおよび切り替え後フェーズ (0 ms 以降) : 0 秒 : IN_PROGRESS フェーズが開始し、アクティブな切り替えが実行されます。 0 〜 +11.62 秒 : IN_PROGRESS フェーズが進行中で、アクティブな切り替え時間です (接続障害が発生する可能性があります)。 +11.62 秒 : POST フェーズが開始します。プラグインはソース (Blue) とターゲット (Green) 両環境をアクティブに監視し、Green トポロジーの変更を検出して、新しい接続をターゲット (Green) 環境にルーティングし始めます。 +16.72 秒 : Green トポロジーが変更されます。プラグインは Green クラスターのトポロジーテーブルが新しいエンドポイント ( green- プレフィックスなし) で更新されたことを検出し、インフラストラクチャの切り替えが機能的に完了したことを示します。 +46.15 秒 : Blue DNS が更新されます。プラグインは元の Blue クラスターエンドポイントの DNS レコードが新しいインフラストラクチャ (新しい IP、以前の Green 環境) を指すように更新されたことを検出します。 +46.42 秒 : Green DNS が削除されます。プラグインは Green クラスターエンドポイント ( green- プレフィックス付き) の DNS レコードが削除され、IP アドレスに解決されなくなったことを検出します。 +46.42 秒 : COMPLETED — すべての操作が完了しました。 まとめ 本記事では、AWS JDBC Driver 内の Blue/Green デプロイメントプラグインが Blue/Green デプロイメントの切り替えを自動的に管理し、データベースメンテナンスのダウンタイムをほぼゼロに抑えることを実証しました。プラグインの適切な接続ルーティングとトラフィック管理機能により、RDS と Aurora で Blue/Green デプロイメントを実行しながらデータベースメンテナンス中のアプリケーションの可用性と耐障害性を向上できます。ぜひお客様のユースケースで Blue/Green デプロイメントプラグインを試し、フィードバックや質問を AWS Advanced JDBC Wrapper GitHub discussions で共有してください。 AWS Advanced JDBC Wrapper Driver の追加機能については、以下の関連ブログをご覧ください。 IAM 認証と AWS Secrets Manager の統合については、紹介ブログ「 Introducing the Advanced JDBC Wrapper Driver for Amazon Aurora 」をご覧ください。 RDS Multi-AZ アップグレード時の 1 秒以下のダウンタイム達成については「 Achieve One Second or Less Downtime with the Advanced JDBC Wrapper Driver when Upgrading Amazon RDS Multi-AZ DB Clusters 」をご覧ください。 Initial Connection Strategy プラグインと Failover2 プラグインを使用した接続管理の強化については「 Demystifying the AWS Advanced JDBC Wrapper Plugins 」をご覧ください。 Blue/Green デプロイメントプラグインを他の AWS JDBC Driver の機能と組み合わせることで、データベースメンテナンスプロセスを簡素化しながら、より耐障害性の高いアプリケーションを構築できます。 著者について Jason Pedreza Jason は、AWS のシニアデータベーススペシャリストソリューションアーキテクトです。ペタバイト規模の環境における大規模データ変換や移行を専門としています。リレーショナルデータベース、データウェアハウス、データ分析、クラウドネイティブテクノロジーの豊富な知識を活かし、お客様の高可用性データベースソリューションの設計を支援しています。 Chandra Pathivada Chandra は、AWS のシニアデータベーススペシャリストソリューションアーキテクトです。Amazon RDS チームで Amazon RDS for PostgreSQL や Amazon Aurora PostgreSQL などのオープンソースデータベースエンジンに注力しています。AWS 上でのリレーショナルデータベースワークロードの設計、デプロイ、最適化を支援しています。 この記事は Kiro が翻訳を担当し、Solutions Architect の Kenta Nagasue がレビューしました。
こんにちは、Amazon Connect ソリューションアーキテクトの梅田です。 2026年 3 月号 はお読みいただけましたでしょうか。皆さんのお役に立つ内容があれば幸いです! 今月は 以下の内容でアップデート情報をお届けします。 Amazon Connect Family 2026 年 4 月のアップデート一覧 AWS Contact Center Blog のご紹介 AWS Black Belt オンラインセミナー (Amazon Connect Customer 関連) 今月のアップデートに関するよくある質問 1. Amazon Connect Family 今月は、アップデート一覧の前に大きなニュースをお伝えします。2026年4月28日、Amazon Connect は単一の製品から4つのエージェンティック AI ソリューションで構成されるファミリーへと進化しました。AWS Applied AI Solutions 担当シニアバイスプレジデントの Colleen Aubrey が About Amazon のブログ で発表した通り、Amazon Connect は以下の4つのソリューションに拡張されました。 リューション 対象領域 概要 Amazon Connect Customer カスタマーエクスペリエンス 従来の Amazon Connect(Unlimited AI)。State Farm、Air Canada、U.S. Bank などが利用する、音声・チャット・デジタルチャネルを統合した AI 駆動コンタクトセンター Amazon Connect Decisions サプライチェーン 25以上の専門ツールと Amazon の30年にわたるオペレーション科学に基づき、需要予測・在庫計画・例外対応を AI チームメイトが支援 Amazon Connect Talent 採用 AI エージェントが24時間365日の音声面接を実施し、構造化された評価とスコアリングで採用プロセスを数週間から数日に短縮 Amazon Connect Health ヘルスケア 臨床現場の管理業務(スケジューリング、ドキュメンテーション等)を AI で自動化し、医療従事者が患者ケアに集中できる環境を実現 これらのソリューションに共通するのは、Amazon 自身が大規模に運用してきた実績に基づいている点です。4 億件以上の SKU を管理するサプライチェーン、2025 年ピークシーズンだけで 25 万人を採用した人材オペレーション、毎日数百万件の顧客対応、そして One Medical や Amazon Pharmacy を通じた医療サービス。これらの現場で培われた AI システムが、各ソリューションの基盤になっています。 設計思想として「ヒューモーフィズム(humorphism)」と呼ばれるアプローチが採用されています。従来のソフトウェアがデスクトップ・フォルダ・ボタンというメタファーで設計されていたのに対し、Amazon Connect の各ソリューションは「AI チームメイト」として振る舞います。ビジネスコンテキストを学習し、チームの働き方に適応し、使うほど賢くなる。ツールではなく、同僚のように機能する AI です。 なお、これまでの AI 駆動のコンタクトセンターソリューションとしての「Amazon Connect」は、今後「Amazon Connect Customer」という名称になります。 詳細は以下をご覧ください: Amazon Connect Decisions Amazon Connect Talent Amazon Connect Customer Amazon Connect Health 2. 2026 年 4 月のアップデート一覧 AI を活用した採用を支援する Amazon Connect Talent (現在はプレビュー版) – 2026/04/28 Amazon Connect Talent のプレビュー版が利用可能になりました。これにより、人材獲得部門のリーダーは AI を活用した採用ソリューションを利用でき、候補者の選定を大規模にスピードアップできます。Amazon Connect Talent は、何十年にもわたる Amazon の採用の知見から情報を得て、AI エージェントを使用して体系的な音声面接を実施し、科学的根拠に基づく評価を実施し、一貫性のある候補者スコアリングを行います。これにより、採用担当者は戦略的な意思決定に集中できるようになります。候補者は、あらゆるデバイスから 24 時間 365 日面接を受けられます。採用担当者は、AI チームメイトが生成したスコア、文字起こし、詳細な候補者評価を確認できるため、一貫した客観性を保ちながらより迅速に採用決定を行えます。プレビュー機能には、AI 主導のスキル評価、適応型質問機能を備えた AI 主導の音声面接、ブランドに合わせてカスタマイズ可能なモバイルファースト候補者ポータル、包括的な採用担当者ダッシュボード、システム管理者オンボーディングツール、迅速なデプロイのための応募者追跡システム (ATS) 統合が含まれます。Amazon Connect Talent は雇用の急増に対応できるように拡張されており、数百人の候補者を同時に評価できます。 Amazon Connect Talent は米国東部 (バージニア北部) および米国西部 (オレゴン) リージョンで利用できます。 AWS が Amazon Connect Decisions を発表 – 2026/04/28 AWS は Amazon Connect Decisions の一般提供を発表しました。これは、サプライチェーンチームが場当たり的な対応から脱却し、先回りしたオペレーションへ移行できるよう支援する、エージェンティック AI の計画およびインテリジェンスソリューションです。Amazon における 30 年間の運用知見と 25 を超える専用サプライチェーンツールを組み合わせることで、AI のチームメイトがビジネスに適応し、チームの意思決定から学習し、継続的にオペレーションを改善します。Amazon Connect Decisions は、小売業、CPG、自動車、工業製造業界など、既存のシステムを入れ替えることなくサプライチェーン業務を変革したいと考えている企業が利用できます。AI のチームメイトは 24 時間 365 日稼働し、需要シグナルを整合して合意済み予測にまとめ、制約を考慮した供給計画を生成し、サプライチェーン全体のオペレーションをモニタリングします。これにより、差異を検出し、自動化された根本原因分析を実行し、数千件の例外をトリアージして、ビジネス上の優先事項に基づき、最も重要な事項のみを実行可能な推奨事項として提示します。 こちら をクリックして無料トライアルを開始することが可能です。Amazon Connect Decisions は米国東部 (バージニア北部) および欧州 (アイルランド) リージョンで利用できます。 Amazon Connect チャットでやり取りできるファイル容量はどれくらいですか?添付ファイル上限が100 MBに拡大、カスタムファイルタイプも追加可能になりました – 2026/04/27 Amazon Connect Customer では、チャット、ケース、およびタスク用の添付ファイルサイズが、以前の 20 MB の制限から最大 100 MB に引き上げられました。また、管理者は Amazon Connect Customer の管理ウェブサイトまたは Amazon Connect API を使用して、チャット、E メール、ケース、およびタスク全体に対する制限を引き上げ、添付ファイルのカスタムファイル拡張子を設定できます。例えば、企業顧客をサポートする、あるテクノロジー企業では、診断バンドルやログアーカイブなどのファイルをチャットで最大 100 MB まで受け付けられるようになったことで、やり取りの回数が減少し、問題をより迅速に解決できるようになりました。また、ある金融サービス企業では、署名済みの契約書やコンプライアンスドキュメント用のファイル拡張子を追加して、顧客がチャットや E メールに直接書類を添付できるようになりました。 管理者ガイド 添付ファイルの有効化 Amazon Connect Customer でスーパーバイザーがエージェントのステータスを変更した履歴は確認できますか?CloudTrail でのログ記録が可能になりました – 2026/04/24 Amazon Connect Customer の分析ダッシュボードを通じて行われたエージェントアクティビティのステータス変更が AWS CloudTrail に監査ログとして記録されるようになりました。この機能強化により、誰がエージェントのアクティビティステータスを変更したのか、いつ変更が行われたのかを可視化できるため、コンタクトセンターのコンプライアンスや運用管理を強化できます。例えば、エージェントが休憩に入る場合、スーパーバイザーはエージェントのステータスを「Available」から「Break」(カスタムステータス)に変更できます。このアクションは、スーパーバイザーの ID、タイムスタンプ、ステータス変更の具体的な内容などの詳細情報とともに CloudTrail にキャプチャされます。追加の設定は不要で、AWS アカウントで CloudTrail のログ記録が有効になっていれば、分析ダッシュボードでのステータス変更が自動的にログに記録されます。 管理者ガイド CloudTrail による Amazon Connect API コールのログ記録 エージェントアクティビティステータスの変更 Amazon Connect Customer の AI エージェントのパフォーマンスはどのように測定できますか?目標達成率・忠実性スコアなど8つの新メトリクスが登場しました – 2026/04/24 Amazon Connect Customer は、目標達成率、忠実性スコア、ツール選択精度など、AI エージェントのパフォーマンスを測定および改善するための新しいメトリクス 8 つの提供を開始しました。これらのメトリクスを活用することで、AI による顧客対応の品質を把握できます。これにより、AI エージェントによる対応結果を正確に測定し、継続的に改善できるようになります。 今回のリリースにより、AI エージェントが顧客のリクエストを正常に解決したかどうかをモニタリングし、忠実性を評価し、文脈に沿わないハルシネーションを検出することが可能になります。ツールの選択と使用の精度を評価したり、有効に設定されている場合は「サムズアップ/ダウン」評価を用いて顧客フィードバックを収集したりすることもできます。これらの新しいメトリクスは、Amazon Connect の AI エージェントパフォーマンスダッシュボードで使用できます。また、 GetMetricDataV2 API や 分析データレイク を活用すれば、独自のレポート作成や既存の分析ワークフローへの統合も行えます。 管理者ガイド AI エージェントのパフォーマンスダッシュボード Amazon Connect Customer のアウトバウンドキャンペーンで発信先に優先順位を付けられますか?最大10個のプロファイル属性に基づく優先ダイヤルが可能になりました – 2026/04/21 Amazon Connect Customer のアウトバウンドキャンペーンでは、ジャーニー内で音声キャンペーンと音声アクティビティの最大 10 個のプロファイル属性に基づいて、優先順位を用いてコンタクト先にダイヤルできるようになりました。 これにより、価値の高い顧客や時間的制約、対応期限のある案件にエージェントの時間を集中させることができ、キャンペーンの効果とコンバージョン率が向上します。Customer Profiles でセグメント作成時に「 セグメントの並び替え – オプション 」を設定し、セグメントコンタクトの優先順位を指定すると、顧客生涯価値、アカウント階層、予約日などの属性でセグメントをソートできます。たとえば、金融サービスチームが契約更新間近の価値の高いアカウントへの働きかけを優先したり、医療提供者が予約が最も早い患者に最初に連絡するようにしたりできます。初期ダイヤル試行が再試行よりも常に優先されるため、キャンペーンの実行全体で優先順位が維持されます。 管理者ガイド アウトバウンドキャンペーンのベストプラクティス 顧客セグメントの構築方法 Amazon Connect Customer のアウトバウンドキャンペーンはどのくらいの頻度で新規顧客を追加できますか?セグメント更新間隔が1時間ごとに短縮可能になりました – 2026/04/20 Amazon Connect Customer のアウトバウンドキャンペーンでは、キャンペーンセグメントを 1 時間ごとに更新できるようになり、以前の最小 24 時間の間隔から短縮されました。これにより、次回の実施を待たずに 1 日を通して新規対象となるお客様にキャンペーンでアプローチできます。セグメントを 1 時間ごとに更新することで、あらゆるキャンペーンタイプで変化するビジネス状況に対応できます。回収チームは、報告を受けたその日の午後に、新たに滞納しているアカウントへの働きかけを開始できます。医療提供者は、新規予約から 1 時間以内に予約リマインダーコールを開始できます。SMS リマインダーに応答がなければ電話による音声通話でフォローする、といったマルチステップのジャーニーにおいても、1日1回のバッチ処理を待たずに、新たに対象となった顧客を随時キャンペーンに追加できます。 使用を開始するには、Amazon Connect Customer のコンソールまたは API を使用してキャンペーン設定時のステップ4 キャンペーンスケジュールにて、「 キャンペーン を更新 – オプション 」を有効にします。 管理者ガイド アウトバウンドキャンペーンのスケジュール設定 エージェンティック音声の音声合成エクスペリエンスを 3 つの新しい AWS リージョンと 10 のロケールに拡張 – 2026/04/20 Amazon Connect Customer では、エージェンティック音声の音声合成エクスペリエンスがアジアパシフィック (ソウル)、アジアパシフィック (シンガポール)、欧州 (フランクフルト) の 3 つの AWS リージョンに拡張され、オーストラリア英語、イギリス英語、シンガポール英語、スペイン語、フランス語、ドイツ語、イタリア語、韓国語などの新しいロケールが追加されました。今回のアップデートにより、より多くのリージョンや言語において、より幅広い顧客に自然で人間のような音声 AI エクスペリエンスを提供できるようになります。 管理者ガイド Amazon Connect のサポートリージョン Amazon Connect のサポート言語 Amazon Connect が AI を活用したセルフサービスにタッチトーンバッファリングを追加 – 2026/04/20 Amazon Connect Customer では、通話がつながった瞬間から自動的に顧客のコンテキストを渡して、セルフサービスエクスペリエンスをパーソナライズできるようになりました。お客様がウェブサイト、モバイルアプリ、通知リンクから通話を開始すると、顧客 ID、セッション参照、キャンペーンコードなどのコンテキストを通話に自動的に渡すことができます。AI エージェントはこのコンテキストを使用して発信者を認識し、通話の理由を理解し、アクションを実行し、問題を解決します。発信者には身元確認や通話理由の再確認は不要です。 管理者ガイド タッチトーンバッファリングの設定 Amazon Connect Customer のフローモジュールはすべてのフロータイプで使えますか?全フロータイプ対応に加え、モジュールのネストも可能になりました – 2026/04/17 Amazon Connect Customer では、すべてのフロータイプでフローモジュールを使用できるようになりました。これにより、インバウンドのカスタマーエクスペリエンス以外にも、共通のロジックや機能を再利用できます。フローモジュールは、繰り返し使用可能なロジックを整理し、フローを使用して構築するカスタマーエクスペリエンス全体で共通の再利用可能な機能を作成します。例えば、エージェントウィスパーフローでモジュールを使用して顧客の最近の取引情報を共有し、エージェントに関連情報を提供して準備を整えさせるなど、以前はインバウンドフローの一部としてしか利用できなかった機能を活用できるようになりました。さらに、フローモジュールを他のモジュール内で使用できるようになったため、あらかじめ構築された中間ステップを 1 つのモジュールにまとめることで、複雑なロジックを構築できます。例えば、クレジットカード適格性モジュールは、最終決定を下す前に、クレジットスコアの確認、収入の検証、支払い履歴の確認を行う他のモジュールを呼び出すことができます。このモジュール式アプローチにより、ビジネス要件の変化に応じて組み合わせたり拡張したりできる再利用可能なコンポーネントを構築できます。 管理者ガイド 再利用可能な機能のためのフローモジュール 3. AWS Contact Center Blog のご紹介 Amazon Connect Customer: 会話型 AI を数か月ではなく数週間で展開 (日本語翻訳) NLX(nlx.ai)が Amazon Connect に加わり、ノーコードで高度な会話型 AI エクスペリエンスを構築・展開できるようになりました。ビジネスチームがエンジニアリングリソースを待たずに、インテリジェントなセルフサービス体験を設計・ローンチできます。United Airlines は従来12ヶ月かかるところを3ヶ月で本番稼働、あるグローバル小売企業は6ヶ月を6週間に短縮した実績があります。エンタープライズが求めるコントロールとスケーラビリティを維持しながら、デプロイまでの時間を大幅に短縮するアプローチです。 Amazon Connect Customer による音声・ビデオ・チャットを統合したコミュニケーションの構築 (日本語翻訳) 音声・ビデオ通話とチャットを同一エージェントとの1つのやり取りに統合するソリューションの構築方法を紹介しています。StartWebRTCContact API で音声・ビデオ通話を開始し、DescribeContact API で通話中のエージェント ID を取得、そのエージェント ID をチャットウィジェットのルーティングに渡すことで、チャネルをまたいでも同じエージェントが対応し続ける仕組みです。例えば、ローン申請の電話中にエージェントが書類を送信し、顧客がその場で署名して返送するといった体験が、数日ではなく数分で完了します。AWS CDK でデプロイ可能なサンプルコードが GitHub で公開されています。 Configure Schedule Adherence Thresholds in Amazon Connect to Account for Operational Variances スケジュール遵守率の測定で、日常的な業務のずれをノイズとして除外するには? Amazon Connect のスケジュール遵守率に設定可能なしきい値(1〜10分)が追加され、通話対応中に休憩開始が数分遅れるといった運用上の許容範囲を定義できるようになりました。シフトレベルとアクティビティレベルの4段階で設定でき、しきい値内のずれは「遵守」として扱われます。あるシナリオでは、しきい値適用により非遵守時間が45分から15分へ67%削減。リアルタイムダッシュボードでは緑(遵守)・黄(しきい値内)・赤(非遵守)の3段階表示で、スーパーバイザーが本当に注意すべき逸脱を即座に判別できます。 4. AWS Black Belt オンラインセミナー (Amazon Connect Customer 関連) Amazon Connect Customer Profiles による C360 の実現とマーケティング活動での活用 Amazon Connect Customer Profiles による顧客 360 度ビュー(C360)の実現とマーケティング活動での活用方法を解説します。サイロ化された顧客情報を統合し、パーソナライズされた顧客体験を実現する方法をデモを交えてご紹介します。IT マーケティングを検討、実装する方、カスタマーセンターのシステムを検討、実装する方、Amazon Connect Customer を利用しているが、Customer Profiles はまだ利用していない方は、ぜひご視聴ください。 資料( PDF ) | 動画( YouTube ) Amazon Connect Cases コンタクトセンターにおけるケース管理の課題と、Amazon Connect Cases がこれらの課題をどのように解決できるかについて解説しています。Amazon Connect Casesを活用することで、効率的なケース管理と顧客体験の向上を実現できるメリットについて理解を深めることができます。カスタマーセンターのシステムを検討、実装する方、Amazon Connect Customer を利用しているが、Cases はまだ利用していない方は、ぜひご視聴ください。 資料( PDF ) | 動画( YouTube ) Amazon Connect AI agentsConnect assistant 基礎編 Amazon Connect Customer の AIエージェントについて、基本的な機能について説明し、人間のエージェントによる顧客サービスの向上支援についてユースケースを交えて解説します。また、GUIを介した各種リソースの設定方法についても解説します。Amazon Connect Customer ご利用中のお客様、パートナーの方、コンタクトセンター での AI 活用や業務効率化に関心のある方は、ぜひご視聴ください。 資料( PDF ) | 動画( YouTube ) Amazon Connect AI agents self-service 基礎編 Amazon Connect Customer のAIエージェントの概要、特にセルフサービス機能に焦点を当て、顧客セルフサービスにAIを活用するメリット、セットアップ手順、導入後の効果測定について解説しています。コンタクトセンター業務の改善について理解を深めることができます。Amazon Connect Customer ご利用中のお客様、パートナーの方、コンタクトセンター での AI 活用や業務効率化に関心のある方は、ぜひご視聴ください。 資料( PDF ) | 動画( YouTube ) 5. 今月のアップデートに関するよくある質問 Q. Amazon Connect とは何ですか? Amazon Connect は、Amazon の運用実績に基づいて構築されたエージェント型 AI ソリューションのファミリーになりました。2026年4月に、Amazon Connect Customer(カスタマーエクスペリエンス)、Amazon Connect Decisions(サプライチェーン)、Amazon Connect Talent(採用)、Amazon Connect Health(ヘルスケア)の4つのソリューションに拡張されました。( Amazon Connect について ) コンタクトセンター領域を担う Amazon Connect Customer は、音声・チャット・メール・タスクなど複数のチャネルを一つのプラットフォームに統合し、AI を中核に据えたクラウドコンタクトセンターソリューションです。料金プランは、すべての AI 最適化機能がチャネル料金に含まれる「Amazon Connect Customer」(旧 Unlimited AI)がデフォルトです。従来のアラカルト型プランは「Amazon Connect Customer Basic」として既存顧客向けに提供されていますが、今後の新しい AI 機能は Connect Customer で提供されるため、Customer Basic からの移行が推奨されます。( Amazon Connect Customer について / Amazon Connect Customer の料金 ) Q. Amazon Connect Customer の最新アップデートはどこで確認できますか? アップデートは AWS の最新情報( What’s New )ページで随時公開されます。 Q. Amazon Connect Customer の AI エージェントのパフォーマンスはどのように測定できますか? 今月新たに追加された8つのメトリクス(目標達成率、忠実性スコア、ツール選択精度など)を使用して、AI エージェントの品質を多角的に測定できます。AI エージェントパフォーマンスダッシュボードでリアルタイムに確認できるほか、GetMetricDataV2 API や分析データレイクを活用して独自のレポートを作成することも可能です。( AI エージェントパフォーマンスダッシュボード ) Q. Amazon Connect Customer のフローモジュールとは何ですか? フローモジュールは、コンタクトフロー内で繰り返し使用するロジックを再利用可能なコンポーネントとしてまとめる機能です。今月のアップデートにより、インバウンドフローだけでなくすべてのフロータイプ(エージェントウィスパー、キュー転送など)で使用可能になり、さらにモジュール内から別のモジュールを呼び出す「ネスト」にも対応しました。( フローモジュール ) Q. Amazon Connect Customer のスケジュール遵守率しきい値とは何ですか? スケジュール遵守率しきい値は、エージェントのスケジュールからのずれを「許容範囲」として定義する機能です。例えば、通話対応中に休憩開始が3分遅れた場合でも、しきい値内であれば「遵守」として扱われます。シフトレベルとアクティビティレベルの4段階で1〜10分の範囲で設定でき、リアルタイムダッシュボードでは緑(遵守)・黄(しきい値内)・赤(非遵守)の3段階で表示されます。( スケジュール遵守率 ) Q. Amazon Connect Customer のアウトバウンドキャンペーンとは何ですか? アウトバウンドキャンペーンは、Amazon Connect Customer Profiles のセグメントに基づいて、音声・SMS・メールなど複数チャネルで顧客に自動的にアプローチする機能です。ジャーニー(複数ステップのワークフロー)を設計し、顧客の行動や属性に応じたパーソナライズされたアウトリーチを実行できます。今月のアップデートでは、最大10個のプロファイル属性に基づく優先順位付きダイヤルと、セグメント更新間隔の24時間から1時間への短縮が追加され、よりタイムリーで効果的なキャンペーン運用が可能になりました。( アウトバウンドキャンペーン ) 今月のお知らせは以上です。皆さんのコンタクトセンター改革のヒントになりそうな内容はありましたでしょうか?ぜひ、実際にお試しいただき、フィードバックをお聞かせいただけますと幸いです。Amazon Connect の最新情報は毎月このブログでお届けしていますので、来月号もお楽しみに。 著者プロフィール 梅田 裕義(Hiroyoshi Umeda) アマゾンウェブサービスジャパン合同会社 シニア Amazon Connect ソリューションアーキテクト 2020年12月入社。コンタクトセンター領域を専門に、Amazon Connect Customer を活用した顧客体験の向上や業務効率化の技術支援を行っています。AI によるセルフサービスの導入、オムニチャネル対応、分析基盤の構築などコンタクトセンターが抱える課題解決に幅広く取り組んでいます。
本ブログは 2026 年 5 月 19 日に公開された AWS Blog、” CIRT insights: How to help prevent unauthorized account removals from AWS Organizations ” を翻訳したものです。 AWS Customer Incident Response Team (CIRT) は、お客様がアクティブなセキュリティインシデントから復旧するためのご支援を行っています。この活動の中で、特定の お客様の構成や設計 を悪用する、新しいまたは流行している攻撃手口を発見することがしばしばあります。 これらの手口を理解することは、アーキテクチャ上の意思決定への反映、対応計画の改善、そして実際にこのような状況が発生した場合の検出に役立ちます。 本投稿では、攻撃者がお客様アカウントの制御を奪取した後に取る新しいアプローチを取り上げます。具体的には、お客様の AWS Organizations 実装から該当アカウントを離脱させ、その構造が提供するポリシーや保護を回避する手口です。 本記事で説明する手口は、AWS サービスの脆弱性を利用するものではありません。代わりに、特定の構成や設計によって生じた予期しない機会を悪用し、AWS アカウント内のリソースを不正に使用するものです。 何が起きているのか このアプローチは、攻撃者が organizations:LeaveOrganization 権限の付与を持つクレデンシャルを使用するところから始まります。この権限は LeaveOrganization API コール へのアクセスを提供し、メンバーアカウントから呼び出されると、そのアカウントを Organization から離脱させようとします。 重要な点として、このアプローチでは侵害されたルートクレデンシャルが使われる場合もありますが、攻撃者は他の手段でアクセス権を昇格させ、必要な権限を取得したり、その権限を持つロールを引き受ける能力を獲得したり、現在のクレデンシャルにこの権限を付与する能力を獲得したりすることもできます。これが、認可に対して 最小権限のアプローチ を取ることが、お客様の環境を保護する上で極めて重要である理由です。詳細については、 AWS Identity and Access Management (IAM) ドキュメント と、 組織単位 (OU) 設計および サービスコントロールポリシー (SCP) 実装に関する AWS Organizations のガイダンスをご覧ください。 お客様の環境への影響 アカウントが Organization から離脱させられると、その Organization の一部として継承されていた制限 (破壊的なアクションを防止していた SCP、利用可能な AWS リージョンを制限していたもの、特定の API コールをブロックしていたもの等) が適用されなくなります。また、当該アカウントは一括請求 (Consolidated Billing) の対象外となるため、Organization の請求アラートやコスト異常検知も該当アカウントの活動をカバーしなくなります。 AWS CloudTrail の組織トレイルは離脱したアカウントからのイベント取得を停止し、委任管理者を介して管理されていた Amazon GuardDuty の検出結果も中央のセキュリティアカウントへ流れなくなります。 その結果しばしば発生するのは、Organization が当該アカウントへの可視性を失う一方で、そのアカウント内には引き続き Organization のリソースが残るという状況です。関連する Threat Technique Catalog のエントリを以下に示します。 T1078.A002: Account Root User : 侵害されたルートクレデンシャルを利用した初期アクセス T1078.004: Cloud Accounts : 侵害された IAM クレデンシャルを利用した初期アクセス T1098: Account Manipulation : 制御を維持するための権限昇格とアカウント設定の変更 T1666.A002: Leave AWS Organization : SCP やガバナンスコントロールを回避するため、メンバーアカウントを Organization から離脱させる T1562.008: Disable Cloud Logs : Organization からの離脱後、中央集約型ロギングの可視性が失われる この手口の検知 アカウントが Organization からの離脱を試みると、CloudTrail には少なくとも 2 つの API コールが記録されます。 organizations:AcceptHandshake と organizations:LeaveOrganization です。中央集約型のロギングを構成している場合、これらのイベントが侵害アカウントから観測される最後のイベントとなる可能性があります。Organization からの離脱後、デフォルトではアカウント内のイベントは自身の CloudTrail ログに記録されることになります。アカウントが Organization に参加または離脱する際に関連する CloudTrail イベントを以下に示します。これらのイベントは、AWS Organizations を管理するためにチームが利用する承認済みの運用ワークフローの一部でない限り、調査が必要です。 CloudTrail イベント 意味 LeaveOrganization メンバーアカウントが Organization から離脱しようとしている AcceptHandshake アカウントが別の Organization への参加招待を承諾している InviteAccountToOrganization Organization がアカウントを招待している RemoveAccountFromOrganization 管理アカウントがメンバーアカウントを削除している (メンバー自らが離脱する場合とは異なる) この手口を防ぐための推奨ステップ organizations:LeaveOrganization アクションを拒否する SCP を実装してください。AWS Organizations は この制御の実装に関する詳細なガイダンス を提供しており、具体的な SCP ポリシー JSON や、本番環境および開発環境のアカウントには保護を維持しつつ正当なアカウント移行を許容できる OU 構造の設計に関するアドバイスが含まれています。 SCP は、メンバーアカウント内で IAM ポリシーが許可できる範囲を制限するガードレールとして機能します。AWS Organizations をご利用のすべてのお客様には、この SCP が現在配置されているかを確認し、配置されていない場合には実装に向けた手順を踏むことを強く推奨いたします。この SCP は迅速にデプロイでき、運用上の影響も最小限です。メンバーアカウントを Organization から分離することを慎重に管理・検討するためのプロセスを提供します。 このアクションは、ルートだけでなく organizations:LeaveOrganization 権限を持つあらゆる侵害された IAM プリンシパルから発生し得るため、IAM 権限の最小権限原則は重要な補完的な制御となります。ユーザーやロールがポリシーの追加・削除・変更を行ったり、別のロールを引き受けたり、自身の権限を変更したりできる範囲を制限することで、不正な権限変更が行われる経路を減らすことができます。IAM ポリシーを定期的にレビューし、過度に広範な権限 (特に iam:AttachRolePolicy 、 iam:AttachUserPolicy 、 iam:PutRolePolicy 、および広範な信頼ポリシーを伴う sts:AssumeRole ) を確認することは、侵害されたプリンシパルが実行できる範囲を制限するのに役立ちます。 ルートアカウントのセキュリティは引き続き重要です。ルートの侵害がこのパターンの一般的な侵入経路となるためです。すべてのルートユーザーに対して多要素認証 (MFA) を有効化し、ルートアクセスキーを削除し、メンバーアカウントからルートクレデンシャルを完全に取り除く ルートアクセスの一元管理 を採用することで、リスクの軽減につながります。 今後について 本手口は、私たちが様々なエンゲージメントを通じて目にしている、より広範なテーマを浮き彫りにしています。攻撃者は AWS のガバナンスコントロールがどのように機能するかをますます認識しており、Organization が提供する制御からアカウントを切り離すための意図的な手段を取っています。AWS CloudTrail を無効化する、Amazon GuardDuty ディテクターを削除する、Organization からアカウントを離脱させるといった行為は、いずれも同じ戦略の派生形にあたります。すなわち、本来であれば攻撃者の活動を制約し、お客様による対応を支援するはずのガードレールと可視性から、お客様のアカウントを切り離すというものです。 これを防ぐための制御は本日時点で利用可能であり、実装も簡単です。 AWS Organizations サービスチームのガイダンス から始め、 DenyLeaveOrganizationSCP を実装することをお勧めします。本手口に対して、最も効果が大きく、かつ最も労力の少ない制御です。それ以外にも、OU 構造全体での SCP のカバレッジを見直すこと、すべてのメンバーアカウントでルートクレデンシャルと IAM 権限が適切に保護されていることを確認すること、検知・対応プロセスが本手口を考慮に入れていることを確かめることが、より強固なセキュリティ態勢に貢献します。 Threat Technique Catalog for AWS には、根底にある手口の検知ガイダンスが含まれています。 関連リソース Threat Technique Catalog for AWS – Matrix T1078.A002: Account Root User T1078.004: Cloud Accounts T1098: Account Manipulation T1666.A002: Leave AWS Organization AWS Organizations における不正なアカウント離脱を防止するための重要なセキュリティコントロール メンバーアカウントのルートアクセスを一元管理する AWS Organizations サービスコントロールポリシー Amazon GuardDuty AWS CloudTrail ユーザーガイド 本投稿に関するフィードバックがありましたら、下のコメントセクションにご投稿ください。 著者について Shannon Brazil Shannon は AWS Customer Incident Response Team (CIRT) のセキュリティエンジニアであり、デジタルフォレンジックとクラウドセキュリティ調査を専門としています。コミュニティでは 4n6lady として知られ、セキュリティ教育と次世代の防御者の育成に情熱を注いでいます。 Derek Ramirez Derek は AWS Customer Incident Response Team (CIRT) のセキュリティエンジニアです。サイバーセキュリティと、困難なインシデントレスポンスの課題への対処を支援する AI ツールの構築という、自身が情熱を注ぐ 2 つのことを組み合わせて取り組んでいます。オースティンのダウンタウンを走ったり、ゴルフのショートゲームに取り組んだり、Dallas Cowboys を熱心に応援したりしています。 Richard Billington Richard は AWS Customer Incident Response Team (アクティブなセキュリティイベント中に AWS のお客様をサポートするチーム) のアジア太平洋地域における Sr. Security Engineer です。 翻訳は Security Solutions Architect の 松崎 博昭 が担当しました。
本ブログは 2026 年 4 月 7 日に公開された Amazon Science Blog “ Verifying and optimizing post-quantum cryptography at Amazon ” を翻訳したものです。 自動推論によって、セキュリティ、性能、保守性の要求をどのように両立させるか。 現在、安全なオンライン通信は 公開鍵暗号 によって実現されています。主に RSA と楕円曲線暗号 (ECC) が使われており、その安全性はある計算問題が困難であるという仮定に依存しています。しかし、これらの問題は 従来の コンピュータでは困難と考えられているものの、十分に大規模な量子コンピュータでは扱える可能性があります。「Store now, decrypt later」(今保存して後で復号) 攻撃は、暗号化された情報を傍受しておき、量子コンピュータで復号できるようになるまで保持する攻撃です。こうした攻撃が技術的に実現可能になるよりはるか前から、対策が必要となります。 ポスト量子暗号 (PQC) は、従来のコンピュータ上で動作しながら量子コンピューティングに対しても安全な暗号です。2024 年、米国国立標準技術研究所 (NIST) は 8 年にわたる標準化作業を経て、標準規格 FIPS-203 を公開しました。FIPS-203 では、量子コンピュータからの攻撃に対して安全と考えられている鍵共有メカニズムとして、Module-Lattice-Based Key Encapsulation Mechanism (ML-KEM) が規定されています。 本記事では、Amazon Automated Reasoning Group、AWS Cryptography、そしてオープンソースコミュニティが協力して、ML-KEM のオープンソースかつ形式的に検証された最適化実装をどのように作り上げ、お客様を「Store now, decrypt later」攻撃から最高の保証と最小のコストで保護しているかをご紹介します。 優れた暗号エンジニアリングとは何か? Amazon の Customer Obsession に従い、AWS は暗号ソリューションに取り組む際、次の 3 つの目標を優先します。 お客様のデータのセキュリティ : 暗号は安全に実装することが極めて難しく、わずかな欠陥でもお客様のプライバシーを危険にさらす可能性があるため、万全を期す必要があります お客様の体験 : 暗号には計算コストが伴います。AWS はこれを最小化し、お客様に最小のコストと最良の体験を提供します ソリューションを将来にわたって保守する能力 : 保守に費やす時間が少ないほど、お客様のためにより多くのイノベーションを生み出せます しかし、これらの目標の間にはトレードオフがあります。シンプルなコードは保守も安全な記述も最も簡単ですが、動作が遅くなりがちです。一方、高速なコードは監査が難しく、エラーが起きやすい傾向があります。 自動推論 によって、AWS はこのトレードオフを解消し、安全で、高速で、保守しやすい暗号ソリューションを同時にお客様に提供できます。 なぜ新たな ML-KEM 実装が必要なのか ML-KEM (旧称 Kyber) は実装の観点から十分に研究されています。一方では、 Kyber リファレンスコード が、長年精査されてきたクリーンな C 言語実装を提供しています。他方では、ML-KEM をさまざまな指標やプラットフォーム向けに最適化する方法を記述した数多くの研究論文があります。 2024 年に AWS Cryptography と Amazon Automated Reasoning Group が直面した課題は、リファレンス実装のシンプルさと、研究で明らかになった最適化の可能性を、本番環境で使える単一の実装に組み合わせることでした。 2024 年、AWS Cryptography と Amazon Automated Reasoning Group は、徹底的に精査された ML-KEM リファレンス実装のシンプルさと、研究で明らかになった最適化の可能性を、本番環境で使える単一の実装 mlkem-native にまとめるという課題に取り組みました。 同じ頃、AWS は Linux Foundation の Post-Quantum Cryptography Alliance (PQCA) の創設メンバーとなりました。PQCA は、「標準化過程にあるポスト量子暗号アルゴリズムの高保証ソフトウェア実装の構築を目指すオープンソースプロジェクトの集合」である Post-Quantum Cryptography Package (PQCP) を立ち上げました。 そこで AWS は独自にコードを開発するのではなく、チームメンバーが PQCP に参加し、まもなく mlkem-native を立ち上げました。これは、ML-KEM リファレンス実装と、最適化および形式的検証に関する研究を組み合わせることを目的とした、ML-KEM の高保証・高性能 C 言語実装です。 速く、そして慎重なコーディング mlkem-native のモジュラー設計は、ML-KEM の高レベルロジックをカバーする フロントエンド と、性能が重要なすべてのサブルーチンを担当する バックエンド を組み合わせています。各サブルーチン (SHA3 の基礎となる Keccak 置換や、高速な多項式演算の基礎となる数論変換 (NTT) を含む) には、特定のハードウェア向けにネイティブに記述された、高効率な複数の実装が用意されています。デフォルトの C 言語実装に加えて、mlkem-native は AArch64、x86_64、RISC-V64 向けのアセンブリ/組み込み関数バックエンドを提供しています。 mlkem-native のモジュラー設計は、ML-KEM の高レベルロジックをカバーするフロントエンドと、性能が重要なサブルーチンの複数のハードウェア固有実装からなるバックエンドを組み合わせています。 保守性のために重要なのは、フロントエンドとバックエンドの間のインターフェイスが固定されていることです。新しいターゲットアーキテクチャ向けの最適化を追加する開発者は、バックエンド仕様に従って選択したバックエンド機能を実装し、フロントエンドはそのまま維持します。バックエンド仕様の策定は、見かけほど単純ではないことが分かりました。これについては以下で説明します。 限界を知る メモリ安全性 C プログラミング言語のよく知られた課題は、バッファオーバーフローのリスクです。メモリ領域の指定された境界を超えて書き込むと、データ構造が破壊され、悪意を持って悪用されると非特権コードの実行につながる可能性があります。こうした問題の総称が メモリ安全性 です。Rust のようなメモリ安全な言語は、範囲外アクセスの影響を制限できます (たとえば、未定義動作を示す代わりにパニックする)。しかし、間違いそのものを防ぐわけではありません。 型安全性 もう一つのよく知られた課題は ML-KEM の実装に関するもので、整数オーバーフローのリスク、つまり 型安全性 の側面です。RSA や ECC と同様に、ML-KEM はモジュラー演算に依存しています。モジュラー演算では、演算の結果を特定の数 (ML-KEM の場合は素数 3,329 で、 MLKEM_Q または単に q と表記) で割り、その剰余だけが次に持ち越されます。剰余演算子はパーセント記号 % で表されます。 論理的には、ML-KEM で 2 つの数 x と y を加算または乗算する必要がある場合、( x + y ) % q および ( x * y ) % q を計算する必要があります。たとえば、(294 * 38) % q = 11,172 % q = 1,185 となります。このような「即時」のモジュラー q 演算は、データを「正規」範囲 {0, 1, 2, … , q -1} で表すために常にモジュラー還元を適用するもので、極めて遅くなります。 効率的な ML-KEM 実装では、代わりに「遅延」モジュラー q 演算を使用します。データはできるだけ長くモジュラー還元なしで操作され、最悪の場合のオーバーフローのリスクが生じたときにのみ還元が行われます。さらに、これにより Montgomery 還元のような不完全な還元アルゴリズムが使えるようになります。これは高速ですが、必ずしも完全に還元された出力を返すわけではありません。 ML-KEM の場合、モジュラー q = 3,329 のデータは通常、符号付き 16 ビット整数に格納されます。ML-KEM の数多くの算術ルーチン全体で遅延演算を扱う際には、データの最悪値の境界を追跡し、それらの境界が 16 ビット整数の限界を超える可能性のある箇所にモジュラー還元を挿入することが不可欠です。この領域での小さな間違いは、テストで見逃されることがあります。なぜなら、平均的な境界は最悪値の境界よりはるかに小さい傾向があるためです。そして、本番環境でランダムに表面化することがあります。 バッファ境界、特に算術境界の追跡は、時間がかかり、エラーが起きやすい作業です。たとえば、低レベルの算術関数の出力境界を弱めると、まったく別の関数で稀に算術オーバーフローが発生することがあります。これを手作業で確認するには、緻密なドキュメント作成と熟練した監査担当者が必要なだけでなく、開発が遅くなります。 mlkem-native では、C Bounded Model Checker (CBMC) というツールを使用して、C レベルでメモリ安全性と型安全性を自動的に検証しています。各関数について、機械可読かつ人間可読な契約をソースコードに追加してバッファと算術データの境界を指定し、CBMC にそれらの境界に対してバッファオーバーフローや算術オーバーフローが発生し得ないことを自動的に検証させます。 モジュラー還元の簡単な例を見てみましょう。 void mlk_poly_reduce_c(mlk_poly *r) __contract__( requires(memory_no_alias(r, sizeof(mlk_poly))) assigns(memory_slice(r, sizeof(mlk_poly))) ensures(array_bound(r->coeffs, 0, MLKEM_N, 0, MLKEM_Q))) { unsigned i; for (i = 0; i < MLKEM_N; i++) __loop__( invariant(i <= MLKEM_N) invariant(array_bound(r->coeffs, 0, i, 0, MLKEM_Q))) { /* Barrett reduction, giving signed canonical representative */ int16_t t = mlk_barrett_reduce(r->coeffs[i]); /* Conditional addition to get unsigned canonical representative */ r->coeffs[i] = mlk_scalar_signed_to_unsigned_q(t); } mlk_assert_bound(r, MLKEM_N, 0, MLKEM_Q); } 関連する部分を一つずつ見ていきましょう。まず、 __contract__( … ) に注目します。簡単に言うと、 memory_no_alias と memory_slice の行は、コードが読み書きできるメモリを指定しています。これはメモリ安全性に関連します。 ensures(array_bound(…)) 句は型安全性に関連しています。これは、関数が戻った時点でデータが区間 [0, 1, …, q ) 内にあることを 保証する ことを指定します。証明では、 __loop__(invariant(…)) があり、ループがこの境界を段階的にどう確立するかを指定しています。 i 番目のイテレーションでは、 i 番目の係数まで成立します。最後に、実装は実質的に mlk_barrett_reduce と mlk_scalar_signed_to_unsigned_q を組み合わせています。CBMC はこれらの内部を見ず、それらの契約に置き換えます。 int16_t mlk_barrett_reduce(int16_t a) __contract__( ensures(return_value > -MLKEM_Q_HALF && return_value < MLKEM_Q_HALF) { ... } int16_t mlk_scalar_signed_to_unsigned_q(int16_t c) __contract__( requires(c > -MLKEM_Q && c < MLKEM_Q) ensures(return_value >= 0 && return_value < MLKEM_Q) ensures(return_value == (int32_t)c + (((int32_t)c < 0) * MLKEM_Q)) { ... } mlk_barrett_reduce がまず対称的な出力区間 ( -q /2, …, q /2) を確立し、次に mlk_scalar_signed_to_unsigned_q がそれを [0,1, …, q ) にマッピングしているのが分かります。この例では、仕様が望ましい形で整合していることを目視で簡単に確認できますが、より複雑な例ではそれほど明確ではありません。いずれにせよ、CBMC が自動的にチェックしてくれます。 速く動かしながら安全を保つ 上述の CBMC 証明は、mlkem-native の C コードに対するメモリ安全性と型安全性を確立します。しかし、mlkem-native の最も性能が重要な部分 (Keccak 置換と数論変換) は、AArch64 と x86_64 向けに手作業で最適化されたアセンブリで実装されています。 mlkem-native のアセンブリ実装に対して、高い性能を維持しつつ保証を得るために、AWS は次の 3 つのコンポーネントを使用しています。アセンブリのスーパーオプティマイザーである SLOTHY、対話型定理証明器である HOL Light、そして HOL Light 上に構築されたアセンブリ用検証基盤である s2n-bignum です。これらを組み合わせることで、開発者がクリーンで保守しやすいアセンブリを記述しつつ、デプロイされるコードが正当性の形式的保証を伴ってピーク性能を達成するワークフローが可能になります。 高性能なアセンブリを手で書くと、根本的なトレードオフが生じます。計算を明確に表現するクリーンで監査可能なコードは遅く、高速なコードは密で、マイクロアーキテクチャ固有で、保守が困難です。SLOTHY はマイクロアーキテクチャ固有の最適化を自動化することで、このトレードオフを解消します。アセンブリプログラムを制約充足問題に変換し、制約ソルバーを使用して最適な命令スケジュールとレジスタ割り当てを見つけ、最適化されたアセンブリを出力します。開発者は計算のロジックを重視したクリーンなコードを書き、SLOTHY が高速なコードを生成します。 AWS は、すべての AArch64 および x86_64 アセンブリルーチンの機能的正当性を、HOL Light と s2n-bignum を使用して証明します。SLOTHY が使用される場所では、特定の命令順序やレジスタ割り当てに依存しないように証明が記述されます。したがって、証明を調整することなく、特定のマイクロアーキテクチャ向けにコードを再最適化できます。この「事後」検証アプローチは、アセンブリで表現された計算の数学的な正しさを、それがどのように生成されたかにかかわらず確立します。特に、SLOTHY は信頼できるコンピューティングベース (TCB) から除外されます。 誠実さを保つ 形式的検証は決して絶対的なものではありません。すべての証明は、形式的なオブジェクト (仕様とモデル) を非形式的な現実世界の要件とシステムに結び付けるものであり、これらの結び付きにはギャップが生じます。形式的仕様は実際に必要なものを捉えているか? 形式的モデルは実際のシステムを忠実に反映しているか? 証明基盤自体は健全か? お客様の信頼を獲得し維持するには、これらの限界について透明性を保つ必要があります。そこで AWS は、 SOUNDNESS.md と題したドキュメントを作成・公開しました。ここでは、mlkem-native で何が証明され、何が仮定され、残存リスクがどこにあるかを、HOL Light 証明で使用されるハードウェアモデルの忠実性、CBMC のより大きな TCB、2 つの検証スタック間の手動の橋渡しに至るまでマッピングしています。各ギャップについて、実施されている緩和策を説明し、今後の作業の概要を示しています。 AWS の目標は完璧を主張することではなく、透明性を通じて信頼を獲得することです。コミュニティの皆様には SOUNDNESS.md を批判的に読み、AWS の前提に異議を唱え、残存するギャップを埋めることにご協力いただければ幸いです。 本番環境への展開 mlkem-native は、AWS サービス全体の安全な通信を支える Amazon のオープンソース暗号ライブラリ AWS-LC に統合されています。この統合では、自動インポーターを使用して mlkem-native のソースコードをアップストリームリポジトリから直接取り込み、AWS-LC が最新の検証済み実装と同期し続けることを保証します。 この統合は手間を最小限に抑えるよう設計されています。mlkem-native のモジュラーアーキテクチャにより、AWS-LC はコアの ML-KEM ロジックをインポートしながら、プラットフォーム固有のコンポーネントには独自の実装を提供できます。たとえば、AWS-LC は mlkem-native の暗号プリミティブを既存の FIPS-202 (SHA-3) 実装にマッピングし、AWS-LC の乱数生成およびメモリゼロ化関数を使用し、必要な場合はペアワイズ一貫性テストなど FIPS モード機能を有効にします。これを可能にしているのは、検証済みコードを変更することなく mlkem-native の API を AWS-LC のインフラストラクチャに橋渡しする薄い互換性レイヤーです。 重要なのは、メモリ安全性と型安全性を証明する CBMC 契約が、インポートされたソースコード内に保持されていることです。プリプロセッサがコンパイルされたバイナリからこれらを削除しますが、ソース内には残り、コードの保証の機械チェック可能なドキュメントとして機能します。これは、実装と共に移動する一種の「生きた証明」です。 さらに、mlkem-native も AWS-LC もオープンソースで寛容なライセンスのため、その利点は AWS の枠を超えて広がります。誰でも mlkem-native を自社のシステムに統合し、同じ性能と保証の組み合わせを得ることができます。形式的検証成果物 (CBMC 契約と HOL Light 証明) はリポジトリの一部であり、関連するすべてのツールはオープンソースであり、セットアップと証明チェックのスクリプトが提供されているため、AWS のセキュリティ主張を独立に検証できます。 インパクト mlkem-native の開発は、自動推論を体系的に適用すれば、暗号エンジニアリングの 3 つの目標 (セキュリティ、性能、保守性) が衝突しないことを示しています。 CBMC は、複雑な算術全体で境界を手動で追跡する作業から AWS を解放し、テストでは見逃されて本番環境でランダムに表面化するエラーを捕捉しました。アノテーションはソースコード内に機械チェック可能なドキュメントとして残り、コードを同時により保守しやすく、より安全にします。HOL Light と s2n-bignum により、AWS は数学的な正当性の確実性を持って積極的なアセンブリ最適化をデプロイできました。SLOTHY により、特定のマイクロアーキテクチャ向けにピーク性能を達成しながら、クリーンで監査可能なコードを書くことができました。そして、証明は最適化に依存しないように記述されているため、検証をやり直すことなくコードのターゲットを変更できます。 その結果、従来の開発で達成できるものよりも、同時により安全で、より高速で、より保守しやすい実装が実現しました。AWS はお客様のセキュリティ、お客様の体験、そして革新する能力の間で妥協しませんでした。自動推論は 3 つすべてを実現したのです。 AWS-LC-FIPS リリース プラットフォーム 処理 3.1 4.0 改善倍率 c7i Keygen 30899 65146 2.1 Encaps 30623 61233 2.0 Decaps 25141 51545 2.0 c7g Keygen 29617 71134 2.4 Encaps 28482 66874 2.3 Decaps 23919 64765 2.3 Amazon の暗号ライブラリ AWS-LC で ML-KEM リファレンス実装から mlkem-native に切り替えた際の性能影響。ML-KEM-768 の性能は c7i および c7g EC2 インスタンスで測定されています。数値は 1 秒あたりの処理数を表します (高いほど良い)。ベースラインは ML-KEM の C リファレンス実装を含む AWS-LC-FIPS 3.1 リリースです。AWS-LC-FIPS 4 リリースは mlkem-native でビルドされています。プラットフォームは Intel(R) Xeon(R) Platinum 8488C を搭載した c7i と、Graviton 3 プロセッサを搭載した c7g です。 謝辞 同僚の John Harrison 氏 (Automated Reasoning Group の senior principal applied scientist) には、HOL Light での AArch64 アセンブリ証明の大部分を提供し、また HOL Light 対話型定理証明器および s2n-bignum 検証基盤の保守を担当いただいたことに感謝します。mlkem-native は AWS だけでなく、オープンソースコミュニティの多くのメンバーが関わる共同作業です。とりわけ、共同保守者である zeroRISC の Matthias Kannwischer 氏に感謝します。彼は AWS と共に mlkem-native を立ち上げ、以来プロジェクトの成功に重要な役割を果たしてきました。 著者について Hanno Becker Hanno Becker は Amazon の Automated Reasoning Group の principal applied scientist です。元 Mbed TLS の開発者で、Arm 上の高性能 (ポスト量子) 暗号に情熱を注いでいます。SLOTHY スーパーオプティマイザーの作者でもあります。 Rod Chapman Rod Chapman は Amazon Web Services (AWS) の senior principal scientist です。 Dusan Kostic Dusan Kostic は Amazon Web Services (AWS) の senior applied scientist です。 本ブログは Security Solutions Architect の 中島 章博 が翻訳しました。
こんにちは。ソリューションアーキテクトの東 健一です。普段はパブリックセクター技術統括本部で中央省庁のお客様の技術支援を担当しており、主にガバメントクラウドや医療 DX に関わるご支援を担当しております。 2026年5月19日(火)に、AWS 目黒オフィスにて「ガバメントクラウドワークショップ 2026 春 ~ AI で実践する開発・モダナイズ・運用 ~」を開催しました。 本ワークショップは、ガバメントクラウドに携わる事業者様を対象に、移行を進める上で必要となる技術を深く学び (Dive Deep)、案件で直面するリアルな課題や他官公庁/自治体の取り組みを共有し、参加者同士の交流を楽しむ (Have Fun) ことを目的とした技術イベントです。 今回のワークショップでは、「 AI を使った開発・モダナイゼーション・運用 」をメインテーマに掲げ、事例セッション・デジタル庁様セッションに加え、参加者の皆様にあらかじめ関心のあるテーマを選択いただいたうえで、手を動かしながら学ぶ 4 つのテーマ別ワークショップを実施しました。当日は会場が満席となり、総勢150名以上の方々にご参加いただく盛況なイベントとなりました。さらに夜の部として、AWS ユーザーコミュニティ「JAWS-UG」の公共分野支部である Gov-JAWS との懇親会を併催し、日中のセッションを振り返りながら参加者同士の交流を深める時間としました。 なお、前回の開催内容について気になる方は下記のブログをご参照ください。 【開催報告】 第2回 自治体事業者向け AWS ガバメントクラウドワークショップ 2025 in 大阪 【開催報告】第三回 中央省庁向け AWS ガバメントクラウドワークショップ イベント概要 本ワークショップは以下のような形で実施しました。 日時 : 2026年5月19日(火)13:00 – 18:30(12:30 受付開始) 懇親会・Gov-JAWS: 18:30 – 21:00 場所 : アマゾン ウェブ サービス ジャパン合同会社 目黒オフィス 参加対象 : ガバメントクラウドに携わる全ての方々 時間 セッション・ワークショップ名 13:00-14:00 中央省庁担当 事業者様登壇 14:00-14:30 自治体担当 事業者様登壇 14:30-15:30 デジタル庁様登壇 15:30-15:40 休憩 15:40-18:30 各テーマに分かれて Workshop 18:30-21:00 懇親会 / Gov-JAWS イベント構成 オープニングおよび事例セッション・デジタル庁セッションを全体で実施した後、参加者の皆様にあらかじめ選択いただいた以下 4 つのテーマに分かれて、各部屋でハンズオン形式のワークショップを実施しました。 AI エージェントを開発する(Strands Agents / AgentCore) AI を使ってシステムをモダナイズする(AWS Transform / Kiro) AI を使ってシステムを開発する(Kiro IDE 実践) AI を使ってシステムを運用する(生成 AI を用いた AWS 環境のトラブルシューティング効率化) 各セッションの概要と発表資料は以下をご覧ください。 事例セッション・デジタル庁セッション ハイライト Step Functions で実現するフルマネージド・ジョブ開発 — ガバメントクラウド開発における 設計/開発・運用時の「理想と現実」のギャップ 発表資料 : Step Functions で実現する フルマネージド・ジョブ開発(杉元) NTT データ 杉元様より、ジョブ管理ツールを AWS Step Functions を中核に据えてフルマネージドなジョブ機能として作り変えた取り組みについて、設計・開発・運用のリアルな学びとともにご紹介いただきました。「依存関係の表現」「再実行 / リラン」「リトライや補償」「並列実行」「監視・通知」「権限分離」といった “ジョブ管理っぽさ” を、Step Functions のステートマシンとしてどのように実装で落とし込んだかを共有いただきました。 あわせて、移行時に直面した設計/開発時の理想と現実(苦悩)のギャップ、稼働後に見えてきた運用時の理想と現実のギャップを、失敗事例も含めて整理いただきました。ジョブ管理ツールの置き換えを検討している方や、ワークフローを “運用できるジョブ基盤” にしたい方にとって、現実的な設計判断と運用設計の勘所を持ち帰れるセッションとなりました。 Amazon Bedrock で生成 AI 活用サービスをセキュアに構築する方法 発表資料 : Amazon Bedrock で生成AI活用サービスをセキュアに構築する方法 – Speaker Deck アクロクエストテクノロジー 鈴木様より、 国土交通省様向けにAI書類審査ソリューションを構築支援したご経験 などを踏まえ、AWS の生成 AI サービスである Amazon Bedrock を前提として、どのように基盤モデルのセキュリティ対応を実現するかのポイントをご紹介いただきました。 あわせて、RAG(Retrieval-Augmented Generation)や AI エージェントといった生成 AI 活用サービスを構築する上でのセキュリティ観点を、構成例を交えながら解説いただきました。日本の公共案件で生成 AI を活用する際に求められるセキュリティの考え方が整理されており、これから生成 AI 活用に取り組む事業者様が設計の指針として持ち帰れる実用的な発表内容でした。 自治体ガバメントクラウドにおける生成 AI 活用 NTT 西日本 三浦様より、自治体のお客様向けに生成 AI を導入された取り組みについてご紹介いただきました。AWS が公開している OSS の生成 AI 活用基盤 GenU の閉域オプションをベースに、 Amazon Bedrock AgentCore を活用した独自 AI エージェントの開発を行っているとのお話で、自治体特有のセキュリティ要件を満たしつつ生成 AI 活用を進めるための実践的な設計・構築のポイントを共有いただきました。OSS をベースとしたうえで自社のユースケースに合わせて AgentCore で拡張するアプローチは、これから自治体向けに生成 AI 導入を検討する事業者様にとっても参考になる内容となっておりました。 GCAS ヘルプデスクについて 概要説明および活用方法のご紹介 デジタル庁 加藤様、萬谷様より、ガバメントクラウドにおける GCAS ヘルプデスクの役割と活動についてご紹介いただきました。GCAS ヘルプデスクの概要から、より効果的にご活用いただくための考え方や問い合わせ方法、実際のお問い合わせ事例やフィードバック、CSP (Cloud Service Provider) との連携内容、今後の改善に向けた方針までお話しいただきました。 GCAS ヘルプデスクが単なる問い合わせ窓口にとどまらず、利用者の声をガバメントクラウドの改善につなげる場であるというメッセージは、参加事業者様にとって今後の活用イメージを大きく広げるものとなりました。 ガバメントクラウドにおける生成 AI 利用環境「源内」の構築と展開 デジタル庁 荻原様より、政府職員の業務品質の向上と効率化を実現するために、ガバメントクラウド上に構築・展開している生成 AI 利用環境「 源内 」についてご紹介いただきました。現在、デジタル庁の職員のみならず、全府省庁約 18 万人の政府職員が生成 AI を利用できるよう、大規模実証事業を推進されています。 本セッションでは、ガバメントクラウドにおける「源内」のシステム概要と、大規模展開にあたって考慮した AI 特有の観点についてご説明いただきました。あわせて、行政業務に特化したアプリケーションの取り組みや、オープンソースソフトウェア (OSS) として公開された内容についてもご紹介いただきました。 ガバメントクラウド上での生成 AI 利用の最前線の取り組みを、構築・運用の双方の観点から伺えるセッションとなり、参加事業者様にとっても今後の生成 AI 活用案件に向けた貴重なリファレンスとなりました。 テーマ別ワークショップ Strands Agents, AgentCore を使った AI エージェントのデプロイ(AI エージェントを開発する) ワークショップ資料 : AI エージェントハンズオン 〜 作って、動かして、体験する 〜 AWS ソリューションアーキテクトの松本より、オープンソースの AI エージェント開発フレームワークである Strands Agents を使ったエージェント開発の体験から、 Model Context Protocol (MCP) を使った AI エージェントの動きの理解、そして AgentCore Runtime を使った AI エージェントのデプロイまでを、一連のハンズオンとして体験いただきました。 さらに後半では、AWS 公式 GitHub で公開しているサンプル実装である RAPID (生成 AI を活用した書類審査ソリューション)と Moca (マルチエージェントオーケストレーションのサンプル)を実際にお試しいただき、業務適用イメージを具体化していただきました。実装から本番デプロイ、さらにユースケース特化型のサンプル実装までをエンドツーエンドで体験できる内容となり、生成 AI を活用したサービス開発の第一歩として手応えを感じていただけたワークショップとなりました。 Kiro IDE 実践ワークショップ(AI を使ってシステムを開発する) ワークショップ資料 : Kiro IDE 実践ワークショップ AWS ソリューションアーキテクトの葉山より、生成 AI の概要解説からスタートし、生成 AI を使った開発体験、Kiro を活用した開発業務の効率化までを体験いただきました。仕様駆動開発(Spec-Driven Development)の考え方に基づき、要件定義からコード生成までを Kiro でどのように実現するかをハンズオンで学んでいただきました。「すぐにでも自分の業務で試したい」という声を多くいただいたワークショップとなりました。 生成 AI を用いた AWS 環境のトラブルシューティング効率化(AI を使ってシステムを運用する) ワークショップ資料 : 生成AIを用いたAWS環境のトラブルシューティング効率化ワークショップ ワークショップ補足資料 : 生成 AI を用いた AWS 環境のトラブルシューティング – Speaker Deck AWS ソリューションアーキテクトの東より、AWS 上に構築したシステムにおいてトラブルシューティングを生成 AI を用いて効率化するための手法をご紹介し、ハンズオンとして体験いただきました。ガバメントクラウドで活用できる手法・サービスを紹介しつつ、一般の AWS 環境でも活用可能な手法も併せてお試しいただける内容となり、運用業務の効率化に向けた具体的な打ち手を持ち帰っていただけました。 AWS Transform, Kiro を使ったモダナイゼーション(AI を使ってシステムをモダナイズする) AWS ソリューションアーキテクトの今坂より、AI エージェントによるレガシーコードの分析・バージョンアップグレード計画の自動生成を体験いただいた後、AI エージェントを活用したバージョンアップグレードを実際に体験いただきました。「これまで人手で時間をかけていたモダナイゼーション作業が、AI エージェントの活用でここまで自動化できるのか」という驚きとともに、自社案件への適用イメージを持ち帰っていただけたワークショップとなりました。 ※ ワークショップ資料については「Kiro IDE 実践ワークショップ」と同じコンテンツをベースに実施しております。 Gov-JAWS ワークショップと併せて、 Gov-JAWS の活動も行われました。Gov-JAWS は、AWS のユーザーコミュニティ「 JAWS-UG 」の支部として、公共分野における AWS 利用に焦点を当てた新しいコミュニティです。政府や自治体が進める公共分野のクラウド利用に関連する知識やノウハウを共有するための場として設立されました。 イベント当日は夜の部として Gov-JAWS 第 5 回 Meet Up が開催され、懇親会と併せて多くの参加者が交流を深めました。このコミュニティを通じて、今後も公共分野でのクラウド活用に関する情報共有と横のつながりの拡大が期待されています。 詳細は Gov-JAWS 側のページをご覧ください。 まとめ 今回のガバメントクラウドワークショップ 2026 春では、「AI エージェント開発」「モダナイゼーション」「AI 駆動開発」「AI による運用効率化」という生成 AI を軸とした 4 つのテーマに加え、ジョブ基盤の実装事例、生成 AI のセキュアな構成、自治体システム標準化の取り組み、GCAS ヘルプデスクの活用といった、ガバメントクラウドに携わる事業者様にとって直近で必要となるテーマを幅広く取り扱いました。 ご参加いただいた皆様におかれましては、お忙しい中ご足労いただき誠にありがとうございました。また、ご登壇いただいた NTT データ様、アクロクエストテクノロジー様、NTT 西日本様、デジタル庁様にも、貴重な知見をご共有いただきましたことを心より御礼申し上げます。 AWS では、今後もガバメントクラウドに携わる事業者様向けのワークショップを継続して開催してまいります。次回開催のご案内をお待ちください。 ガバメントクラウドに関するお問い合わせ AWS の公共チームではガバメントクラウド相談窓口を設けております。ガバメントクラウド利用全般に関するお問い合わせについて、担当の営業およびソリューションアーキテクトがご回答いたします。ぜひご活用ください。 https://aws.amazon.com/jp/government-education/worldwide/japan/gov-cloud-advisory-site/ 著者について 東 健一 アマゾン ウェブ サービス ジャパン合同会社のソリューションアーキテクト。パブリックセクター技術統括本部に所属し、主にガバメントクラウドや医療 DX 、コンテナワークロードに関する案件の技術支援に取り組んでいる。
本ブログは、キヤノンIT ソリューションズ株式会社様と Amazon Web Services Japan が共同で執筆しました。 みなさん、こんにちは。AWS ソリューションアーキテクト木村、アカウントマネージャーの池田です。 本記事では、キヤノン IT ソリューションズ株式会社様が 、Amazon Q Developer を開発現場に導入し、3 か月間効果検証を実施した取り組みをご紹介します。コード生成やレビュー支援による効率化、現場での活用事例、そして検証から得られた知見について詳しく解説します。 なお、本ブログに登場する Amazon Q Developer は 2026 年 4 月 30 日に AI 駆動開発IDE「Kiro」へと進化的に統合されることが発表されています 。 本検証で培ったAI駆動開発のプラクティスやノウハウは、Kiro の仕様駆動開発(Spec-driven Development)へとそのまま活かせるものであり、キヤノン IT ソリューションズ様 の取り組みはまさにこの進化を先取りしたものと言えます。 背景/課題 キヤノンITソリューションズ株式会社様(以下、キヤノン ITS )では、生成 AI ツールの社内推進活動を積極的に実施しています。今後 SIer としての競争力を維持していくために、生成 AI の活用は不可欠です。しかし、個人レベルでの試行には限界があるため、企業として活用のための基盤整備や推進を進める必要がありました。 そこでキヤノン ITS 様は、2024年に「生成 AI ビジネス検討委員会」を立ち上げて、生成 AI ビジネスにおける 5 年後のありたい姿と戦略を策定し、その具体的な施策を推進するための「生成 AI ビジネス推進室」を発足。社内の利用ガイドラインの整備、生成 AI ツールの全社的な導入を推進してきました。 生成 AI ツールの導入後に現場への定着をいかに進めるかは、多くの企業にとって共通の課題です。キヤノン ITS 様は全社横断向けの複数回に渡るイベント形式で「AI 駆動開発の普及」を行うことで、より深い活用推進を実施しました。 なぜ Amazon Q Developer を選択したのか(導入当時) 全社利用が可能な生成 AI ツールは導入済みではありましたが、「AI 駆動開発の普及」という目的に対し、コスト・運用・性能のバランスに優れた選択肢であることから Amazon Q Developer を選択しました。 コスト: 月額ユーザー数の固定料金で予算計画が容易 同機能の固定費用で使えるサービスとしては最も安価 運用: 既存の AWS 環境(情報システム部門の管轄)でアカウント管理可能 AWS から導入・普及の支援を受けることができる 性能: Claude Sonnet 4(実施当時)による高精度の生成 MCP 対応による拡張性の高さ セキュリティ・脆弱性診断、モダナイゼーションなど SI に役立つ機能搭載 AI駆動開発の普及をする上での工夫ポイント 本施策が単なるツール導入だけで終わらぬよう、事前に懸念事項を洗い出し、キヤノン ITS 様と AWS にて、役割分担を行い施策設計をしました。 懸念事項 Amazon Q Developerのリリース・キックオフがなされただけで、ツールが使われない 事業部側での予算制限があり、積極利用がなされない ツールの認知はされているが、使い方が分からずに利用がされない AI駆動開発の取組自体が限られた少数のメンバーにしか知られない 対策 オペレーション整備 ツールを使ってもらえるような申請フローの整備(キヤノン ITS) 興味喚起 「このツールは面白い」と思ってもらえるイベント。継続するための仕掛けづくり(AWS) 障壁排除 ハンズオン/定期的なオフィスアワーを行うことで技術的な懸念点を払拭(キヤノンITS/AWS) イベント化 打ち上げ花火のようなオンラインイベントで終わらせず、興味喚起、ハンズオン研修、利用者のトラッキングを行いランキング発表等、全社向けの年末までのロードマップを敷いて継続施策として打ち出す(キヤノンITS/AWS) エグゼクティブスポンサー エグゼクティブスポンサーである、金澤社長からの支援と声かけを実施(キヤノンITS) ロードマップ全体像 AI駆動開発の社内展開に向けて、Amazon Q Developer の業務適用検証を実施しました。本取り組みは、9 月 5 日に開催した「AI Agent DAY」をキックオフとし、Amazon Q Developer を実際の業務に適用した際の有効性を約 3 か月間にわたり検証したものです。 キックオフイベントには約 250 名が参加し、100 名以上の技術者が Amazon Q Developer のハンズオンを体験しました。その後の業務適用検証フェーズでは、生成 AI ビジネス推進室がツール利用費を負担する形で施策を企画し、57 名が参加しています。検証期間中は、インフラおよびアプリケーションを対象としたハンズオンセッションやオフィスアワー、中間イベントを実施しました。あわせて、Teams 上の「生成 AI 交流広場」での情報共有やアンケートを通じた成果の可視化にも取り組んでいます。 最終的には、技術者向けイベント「CITS Day 2025」において、Amazon Q Developer を効果的に活用した取り組みを表彰しています。なお、表彰対象検討のための利用状況のデータ分析においても、Amazon Q Developer を活用しました。 Amazon Q Developer の利用状況を示すダッシュボード Amazon Q Developer へ利用率ランキングを集計するプロンプト CITS Day 2025 での表彰 活用事例 CITS Dayのイベント内では、複数の事例が共有されました。 事例1: 開発ツール×生成AI(佐野様の発表) 抱えていた課題 プログラミングの抽象化レイヤーの進化と開発ツールの変化への対応 開発業務の効率化と生産性向上 資料作成やアイデア整理などのコーディング以外の作業の効率化 導入した理由・きっかけ 新しい開発スタイルで「速さ」「安全性」「柔軟性」を実現するため Kiro との出会い(2024年夏)がきっかけ 生成 AI の柔軟性を活かしつつ、課題(コード品質のばらつき、非機能要件への対応不足など)を解決するため 導入して得られた結果 バイブコーディングモードを活用することで、マークダウン形式で効率的に資料作成が可能に レイアウト案をアスキーアートで事前確認するなど、視覚的な提示が可能に 仕様駆動開発モードではプロトタイプの迅速な作成が実現 バーコードスキャナーアプリの要件からタスク分解、実装まで効率的に進行 事例2: PoCでのAmazon Q Developer活用(可知様の発表) 抱えていた課題 SNS バズ検知を需給マネジメントに繋げるための PoC を短期間・低コストで実施 SNS API や可視化技術など、未経験の技術を習得して実装 技術検証フェーズに時間やコストをかけられない 導入した理由・きっかけ 社内からの提案で、生成 AI の活用が適した題材と判断 低コスト($19/月)で社内環境も整備されていたため 短期間での技術獲得とプロトタイプ開発、生成 AI 活用のノウハウ獲得を目指して導入 導入して得られた結果 新規技術(SNS API 活用技術、Streamlit によるアプリ開発技術)の習得が迅速に進んだ 開発スピードが約 3 倍に向上(通常 2 週間かかる作業が 3 日で完了) コスト削減(10 人日 → 3 人日+$19の料金のみ、約 1/3 のコスト) 事例3: Amazon Q Developerを使用したインフラ構築(谷様の発表) 抱えていた課題 インフラ構築業務での効率化とエラー削減 Terraform の定義言語 HCL の習得や適切なコーディングの必要性 インフラコード化(IaC)におけるコードレビューと品質確保 導入した理由・きっかけ インフラ構築業務の流れが「パラメーター設計 → コード生成 → デプロイ → テスト」に変わる中で効率化を図るため コード生成からドライテスト、デプロイまでのプロセスを改善するため Claude Sonnet 4.5 が API 課金ではなく使える点が魅力的だった 導入して得られた結果 パラメーターシートやアーキテクチャ図を基に Terraform コードの自動生成が可能に AI によるコードレビューが人間のレビューを補完し、エラー検出が向上 validate、plan、apply の各段階でのエラー検出と修正が効率化 事例4: 仕様駆動開発の手引き(古川様の発表) 抱えていた課題 「仕様が主、実装が従」という本来あるべき開発の構図が逆転しがち 仕様書の陳腐化や実装との乖離の発生 vibe coding は業務で活用するには曖昧すぎる 導入した理由・きっかけ 自分で設計して自分で実装するケースが多く、生成 AI 導入の恩恵が大きいと考えたため 他の生成 AI ツールと Amazon Q Developer の比較検討を自分自身でやってみたかったため 仕様駆動開発が開発手法として確立しつつあり、業務に適用してみたかったため 導入して得られた結果 ルール制定 → README記述 → 設計書作成 → TODOリスト作成 → 実装という流れで社内用の小規模なツールを効率的に開発できた AI が設計図やタスク分解などを自動化し、人間はレビューと意図合わせに集中できる 仕様駆動開発の考え方を取り入れることで、開発の最初に充実したドキュメントを作れるようになった 事例5: Amazon Q Developer 活用事例紹介(鈴木様の発表) 抱えていた課題 製品機能設計に向けて AI エージェント技術の理解と実験環境構築が必要だった AgentCore や CloudFormation など、大量コードの読解や IaC 化の負荷が高い 新しい技術領域で情報が少なく、定義ミスやドキュメント解釈間違いが発生しやすい 導入した理由・きっかけ Amazon Bedrock AgentCore を使った機能検討のため、AI エージェントの仕組み理解と環境構築を効率化したかった GitHub の AgentCore サンプルを活用する中で、Q を使えばコード理解・修正・IaC 化まで一気に進められると判断 大量コードの理解、React アプリ実装など AI に向いている作業が多かったため Q 活用を決断 導入して得られた結果 AgentCore + Knowledge MCP + CloudFormation による再利用可能なAIエージェント実験環境を構築 React チャットアプリやブラウザ動作確認まで実装〜テストの大部分を Q が自動化 Rules 整備やレビューを通じて、Q を“正解を出す AI ”ではなく“協働する相棒”として運用する体制を確立 Try & Error の混乱を Git コミットや TODO 管理で整理し、AI と協働できる実践的な開発フローを確立 定量的な成果 3か月間の業務適用検証期間において、Amazon Q Developerを利用した取組は以下の定量的な成果を達成しました。 コード生成・開発効率 開発スピード 3 倍向上: 通常 2 週間かかる PoC 開発が 3 日で完了 工数削減 67%: 10 人日から 3 人日へ削減、コストは約 1/3 に コード生成数: 検証期間中、57 名の参加者が累計で数千行のコード生成を実施 レビュー・品質向上 レビュー時間短縮: AIによるコードレビュー支援により、人間のレビュー工数を削減しつつエラー検出精度が向上 エラー早期発見: validate、plan、apply の各段階でのエラー検出が効率化され、手戻りコストを削減 継続利用 参加率 95% : 募集定員 60 名に対し 57 名が参加し継続して利用 アクティブ利用: 検証期間中、定期的なオフィスアワーやTeams「生成AI交流広場」での活発な情報交換を実施 イベント参加: キックオフイベントに 250 名、ハンズオンに 100 名以上が参加 定性的なフィードバック(利用者の声) 検証期間中のアンケートやCITS Day 2025での発表から、以下のような利用者の声が得られました。 「SNS API や Streamlit など、未経験の技術を短期間で習得できた。新規技術獲得へのハードルが大幅に下がった」 「PoC の進め方が大きく変わることを実感。人は課題抽出やロジック検討、結果確認に注力できるようになった」 「生成 AI と開発の構造を組み合わせることで、柔軟性・速さと品質・一貫性の両立が可能になった」 「仕様書を起点に、AI エージェントに任せながら効率的に開発できる。仕様駆動開発が現実的な選択肢になった」 「パラメーターシートやアーキテクチャ図を基に Terraform コードの自動生成が可能になり、インフラ構築業務が大幅に効率化された」 検証の総括 キヤノンITS 様は、生成 AI ビジネス推進室を中心に Amazon Q Developer の展開を推進し、3 か月間の業務適用検証を通じて組織的な AI 駆動開発の定着を実現しました。エグゼクティブスポンサーの支援と予算負担の工夫により現場の参加障壁を排除し、専用 Teams チャネルでのコミュニティ形成、定期的なオフィスアワー、実践的なハンズオンセッションという段階的な学習支援を提供しました。 検証期間中、57 名の技術者が実務で Amazon Q Developer を活用し、開発スピード 3 倍向上、工数 67 %削減という具体的な定量効果を達成。Amazon Q Developer 自身で作成したダッシュボードにより利用状況を可視化し、CITS Day 2025 での表彰制度により 5 つの優秀事例を全社で共有しました。 成功の鍵は、生成AIビジネス推進室の設立による組織的な推進体制、単発イベントで終わらせない年間ロードマップに基づく継続的な支援施策、そして実ビジネスでの活用という 3 つの要素にあります。キックオフから始まり、ハンズオン、中間イベント、表彰へと続く一連の取り組みにより、SNS バズ検知システムなど実際の PoC 案件での成果を創出し、新規技術習得の加速、PoC プロセスの変革、インフラ構築の効率化など、多様な領域での効果を実証しました。 キヤノンITS 様からAmazon Web Services Japanへの期待 今回の取り組みを通じて、Amazon Q Developer を開発現場の生産性向上に有効活用できることが実感できました。PoC からインフラ構築、既存システムの改善まで、多様な領域で活用の可能性が広がっています。 今後は、今回の検証で得られた知見をもとに、社内での活用パターンの整理やナレッジの共有を進め、より多くのプロジェクトで生成AIを活かせる環境づくりを進めていきます。また、Amazon Web Services Japan 様と連携しながら、新機能の検証や他サービスとの組み合わせなど、さらなる活用領域の拡大にも取り組んでいく予定です。 生成AI が IT ライフサイクル全般の在り方を大きく変えつつある中、私たちは、現場の開発体験を改善するとともに、社会やお客様へ更なる価値提供に向けて積極的に活用していくための取り組みを継続して進めていきます。 執筆者 キヤノンITソリューションズ株式会社 生成AIビジネス推進室 石堂 きよみ Amazon Web Services Japan ハイテク&ヘルスケア事業本部 アカウントマネージャー Amazon Web Services Japan ソリューションアーキテクト 木村 直登(Naoto Kimura)
本記事は、シリーズ「AWS における AI エージェント対応のデータ基盤」の第 2 回です。 第 1 回 では、AI エージェントが組織の本番データに対して正しく動くために必要な 3 要素(認可・ビジネスデータカタログ・ドメイン知識)を紹介し、認可が効いている様子をデモで示しました。本記事では、3 要素のうち認可に焦点を当て、AI エージェント経由のデータアクセスに Amazon SageMaker Catalog のアクセス制御を透過的に効かせる実装パターンを解説します。 サンプルリポジトリ: aws-samples/sample-sagemaker-agentic-analyst aws-samples sample-sagemaker-agentic-analyst A demo application that demonstrates how fine-grained access controls configured in SageMaker Unified Studio are transparently enforced on data access through AI agents. AI エージェントにアクセス制御を効かせる 3 つの壁 AI エージェントにデータアクセスを任せるとき、守るべき原則があります。エージェントは独自の認可ロジックを持たず、ユーザーが SageMaker Catalog で付与されている権限を、エージェント経由でもそのまま透過的に利用させることです(SageMaker Catalog は Amazon DataZone の上に構築されており、権限設定は DataZone API で操作します)。エージェント内に独自の認可ロジックを作ると、既存のガバナンスと二重管理になり、整合性を保つのが難しくなるからです。 この原則を実現しようとすると、素直な実装ではたどり着けない 3 つの壁があります。これらは本記事で解説する設計上の工夫によって越えられます。 壁 1: コンピュートリソース自体のロールで権限を取得すると、全ユーザーが同一権限になる。 AI エージェントのツールは AWS Lambda 、 AWS Fargate 、 Amazon EC2 など何らかのコンピュートリソース上で実行されます。そのコンピュートリソース自体のロール(たとえば Lambda の実行ロール)で DataZone の GetEnvironmentCredentials API を呼ぶと、返ってくるのはそのロール自身のメンバーシップに基づくプロジェクトロールです。どのユーザーがリクエストしても同じ認証情報が返るため、ユーザー個別のアクセス制御を効かせるには工夫が必要です。 壁 2: SAML フェデレーション経由のトークンには、IdP 側のグループ情報が乗らない。 AWS IAM Identity Center (以下 IdC)と、たとえば Amazon Cognito を SAML フェデレーションで連携する構成では、IdC 側のグループ情報が Cognito のトークンに自動的には含まれません。「データコンシューマーには athena_query を許可し、ドメイン管理者には cloudtrail_query のみ許可する」といったツール単位の認可を IdC のグループベースで行うには、グループ情報をトークンに載せる工夫が必要です。 壁 3: 設定時と実行時で関与するサービスが異なり、認可の全体像を把握する必要がある。 SageMaker Catalog の裏側では複数のサービスが連携しています。設定時に使うサービスと、クエリ実行時に評価されるサービスが異なるため、全体像を把握しないと正しい実装にたどり着けません。 本記事では、サンプルリポジトリ sample-sagemaker-agentic-analyst がこれらの壁をどう越えているかを解説します。 サービスの役割分担を整理する 本記事で扱うサービスの関係を先に整理します。 Amazon SageMaker Catalog は、データと AI の発見・ガバナンス・コラボレーションを担うサービスで、Amazon DataZone の上に構築されています。データの Publish/Subscribe やアクセス権の設定は SageMaker Catalog(および Amazon SageMaker Unified Studio の UI)で行いますが、実際のクエリ実行時に行・列レベルのアクセス制御を評価するのは AWS Lake Formation です。S3 上のファイルに対するアクセス制御は Amazon S3 Access Grants が担います。 つまり、SageMaker Catalog で「誰がどのデータを見てよいか」を 設定 し、Lake Formation と S3 Access Grants が 実行時 にその設定を評価する、という役割分担です。 重要な原則として、DataZone はクエリ実行パスに入りません。後述する認証情報変換フローでは DataZone API( RedeemAccessToken / GetEnvironmentCredentials )を呼びますが、これは AgentCore Gateway に接続された Lambda(以下 Tool Lambda)が プロジェクトロールの認証情報を取得する ための前段であり、Athena クエリや S3 オブジェクト取得そのものには DataZone は介在しません。クエリ実行時の認可評価は Lake Formation と S3 Access Grants が担います。この「認証情報取得の経路」と「データアクセスの経路」の分離を理解しておくと、以降のフローが読みやすくなります。 認証情報変換フロー: 5 つのステップ 壁 1 と壁 3 に対応するため、本サンプルでは 5 つのステップで認証情報を変換します。ブラウザでサインインしたユーザーの Cognito トークンから出発し、最終的にそのユーザーの権限が反映された SageMaker プロジェクトロールの一時認証情報を Tool Lambda の手元に届けます(下図)。 Step 1: ブラウザから AgentCore Runtime へ ブラウザ上の React アプリが、 Amazon Bedrock AgentCore Runtime のエンドポイントに HTTPS リクエストを送ります。このリクエストには 2 つのトークンが乗っています。 Authorization: Bearer <Cognito Access Token> — Runtime の Cognito Authorizer が検証します カスタムヘッダー X-Amzn-Bedrock-AgentCore-Runtime-Custom-Cognito-Id-Token: <Cognito ID Token> — 次のステップで使います Cognito Access Token と Cognito ID Token はどちらも Amazon Cognito が発行する JSON Web Token(JWT)ですが、役割が異なります。Access Token は「このリクエストは正当なユーザーから来たか」を Runtime と Gateway が判定するために使います。ID Token はユーザーのアイデンティティ情報(メールアドレスなど)を含んでおり、次のステップで IdC のユーザーと突き合わせるために使います。 Step 2: chat-agent が Cognito ID Token を IdC Access Token に引き換える Amazon Bedrock AgentCore Runtime はエージェントプロセスをホストするマネージドサービスです。呼び出し主体はその上で動くユーザーコード(本サンプルでは chat-agent )であり、Runtime サービス自身がトークン変換を自動で行うわけではありません。 chat-agent が IdC の CreateTokenWithIAM API を呼びます。 const tokenRes = await new SSOOIDCClient({ region }).send( new CreateTokenWithIAMCommand({ clientId: idcApplicationArn, grantType: 'urn:ietf:params:oauth:grant-type:jwt-bearer', assertion: cognitoIdToken, }), ); const idcAccessToken = tokenRes.accessToken; jwt-bearer grant で Cognito ID Token を渡すと、IdC はそのクレームから IdC ユーザーを特定し、IdC Access Token を返します。 ここで 2 つの補足があります。 Cognito JWT と IdC Access Token は別物です。 発行者が違い(Cognito vs IdC)、形式も違います(JWT vs 不透明トークン)。Cognito JWT は Cognito 連携アプリでしか通用しませんが、IdC Access Token は IdC の Trusted Identity Propagation(TIP) に対応した AWS サービスで通用します。TIP は、IdC ユーザーのアイデンティティを IAM ロールの STS セッションに identity context として伝播させる仕組みです。DataZone は TIP 対応サービスの 1 つで、 RedeemAccessToken はその入口に位置します。 CreateTokenWithIAM と RedeemAccessToken は、このトークンの世界をまたぐブリッジの役割を果たします。 ただし本サンプルでは、TIP の identity-enhanced session をそのままデータ層まで持ち込んで Lake Formation や S3 Access Grants に評価させる構成は採っていません。SageMaker Catalog の Publish/Subscribe モデルが プロジェクトロール に行・列・オブジェクトレベルの権限を付与する設計になっているため、IdC ユーザーのアイデンティティは RedeemAccessToken → GetEnvironmentCredentials を経由してプロジェクトロールへ引き換えられ、以降のデータアクセスはプロジェクトロールの権限で評価されます。TIP の役割はこの引き換えの前段に限定され、本記事の焦点もそこにあります。 CreateTokenWithIAM には jti 制約があります。 JWT には jti (JWT ID)という一意識別子のクレームがあり、IdC は jwt-bearer grant で受け取った JWT の jti を記録します。同じ jti の JWT が再度送られると拒否されるため、同一の Cognito ID Token で CreateTokenWithIAM を 2 回呼ぶことはできません。このため、chat-agent で 1 リクエストあたり 1 回だけ実行し、得られた IdC Access Token を x-idc-access-token カスタムヘッダーで AgentCore Gateway 経由で全 Tool Lambda に伝播する設計になっています。 なお、 CreateTokenWithIAM を呼ぶための IAM アクション名は sso-oauth:CreateTokenWithIAM です。SDK クライアントは SSOOIDCClient を使いますが、IAM ポリシー側のサービス名は sso-oauth になります。また、IdC の OAuth Customer Managed Application に datazone:domain:access スコープを事前に登録しておく必要があります。 Step 3: Tool Lambda が IdC Access Token を DomainExecutionRole の認証情報に引き換える Tool Lambda が Amazon DataZone の RedeemAccessToken エンドポイントに HTTP POST を投げます。 const redeemRes = await fetch( `https://datazone.${region}.api.aws/sso/redeem-token`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ domainId, accessToken: idcAccessToken }), }, ); const { credentials: domainExecRoleCreds } = await redeemRes.json(); RedeemAccessToken は AWS SDK に含まれていません。 公開ドキュメントでは Athena JDBC ドライバ経由の利用例( Analyze subscribed data via JDBC )が示されていますが、サーバーサイドアプリからの直接呼び出しは生の HTTP リクエストで行う必要があります。このため、エンドポイント URL も通常の DataZone SDK が使う datazone.{region}.amazonaws.com ではなく datazone.{region}.api.aws を指定します。 この API には 2 つの特徴があります。SigV4 署名が不要であること(認証は IdC Access Token 自体が行う)、そして jti 制約がないため並列の Tool 呼び出しで複数の Lambda が同じ IdC Access Token を使っても問題ないことです。 返ってくるのは DomainExecutionRole の一時認証情報( accessKeyId / secretAccessKey / sessionToken / expiration )です。DomainExecutionRole は SageMaker Unified Studio ドメインに紐付く IAM ロールで、この認証情報には IdC ユーザーのアイデンティティが紐付いています 。内部的には、 RedeemAccessToken が DomainExecutionRole を assume する際に、Step 2 で触れた TIP の仕組みにより STS セッションに IdC ユーザーの identity context が埋め込まれます。これが次のステップで効いてきます。 Step 4: Tool Lambda が DomainExecutionRole の認証情報でプロジェクトロールを取得する Tool Lambda が Amazon DataZone SDK を DomainExecutionRole の認証情報で 初期化し、 GetEnvironmentCredentials を呼びます。 const envCreds = await new DataZoneClient({ region, credentials: domainExecRoleCreds, }).send( new GetEnvironmentCredentialsCommand({ domainIdentifier: domainId, environmentIdentifier: environmentId, }), ); Amazon DataZone は呼び出し元の STS セッションから identity context を取り出し、IdC ユーザーを特定します。そのユーザーがプロジェクトのメンバーであれば、プロジェクトロールの一時認証情報を返します。メンバーでなければ拒否されます。 ここが本サンプルの核心です。DomainExecutionRole の認証情報で呼ぶからこそ、 ユーザー本人のメンバーシップ で認可が評価されます。もし Lambda 実行ロールで直接 GetEnvironmentCredentials を呼んでいたら、Lambda 実行ロール自身のメンバーシップで判定されてしまい、ユーザーごとの権限差が消えます。 Step 5: プロジェクトロールで Athena / S3 を呼び出す Tool Lambda が Athena や S3 のクライアントを プロジェクトロールの認証情報で 初期化し、クエリやオブジェクト取得を実行します。 const athena = new AthenaClient({ region, credentials: { accessKeyId: envCreds.accessKeyId, secretAccessKey: envCreds.secretAccessKey, sessionToken: envCreds.sessionToken, }, }); Athena がクエリを実行すると、Lake Formation がプロジェクトロールの権限に基づいて行・列レベルのフィルタリングを透過的に適用します。ユーザーの権限の範囲内にある行と列だけが結果として返り、範囲外の情報は応答に含まれません。 ステップのまとめ Step 主体 API 入力 出力 1 ブラウザ → Runtime POST /invocations — Cognito Access Token + ID Token(Runtime に到達) 2 chat-agent → IdC CreateTokenWithIAM Cognito ID Token IdC Access Token 3 Tool Lambda → DataZone RedeemAccessToken IdC Access Token DomainExecutionRole 認証情報 4 Tool Lambda → DataZone GetEnvironmentCredentials DomainExecutionRole 認証情報 プロジェクトロール認証情報 5 Tool Lambda → Athena/S3 StartQueryExecution / GetObject 等 プロジェクトロール認証情報 クエリ結果 / オブジェクト Step 5 の S3 アクセスは Publisher と Subscriber で経路が分かれます。後述の「Publisher と Subscriber で異なる S3 アクセス方式」で詳述します。 この設計では、 Lambda 実行ロールはデータアクセスに一切使いません 。権限判定はすべてユーザーに紐付いた認証情報で行われます。 Policy in AgentCore によるツール単位認可 認証情報変換フローはデータアクセスの認可を扱いますが、「どのユーザーがどのツールを呼べるか」という別軸の認可も必要です。AgentCore の認可モデルは、 Inbound(ユーザー → AI エージェントへの入口) と Outbound(AI エージェント → ツールへの出口) の 2 軸で整理されます。Inbound は AgentCore Runtime の JWT Authorizer が Cognito Access Token を検証して「この呼び出し元はエージェントを呼んでよいか」を判定します。Outbound はツール単位の認可で、本サンプルでは AgentCore Gateway の Policy in AgentCore で実現しています(下図)。 グループ情報の埋め込み 壁 2 で述べた通り、IdC と Cognito を SAML フェデレーションで連携する構成では、IdC 側のグループ情報は Cognito トークンに自動的には含まれません。本サンプルでは、 Amazon Cognito の Pre token generation Lambda trigger の V2 イベントを使い、Cognito Access Token に cedar_groups カスタムクレームを埋め込みます。値は |data-producers|security-auditors| のようにパイプ区切りの文字列です。 Cedar ポリシーによる評価 Policy in AgentCore では、Cedar 言語で記述されたポリシーを policy engine に登録し、それを AgentCore Gateway に関連付けます。Gateway にリクエストが到達すると、policy engine が Cognito Access Token の cedar_groups クレームを読み取り、Cedar ポリシーで評価します。Gateway はリクエスト時点で JWT のクレームを AgentCore::OAuthUser エンティティのタグとして Entity Store に格納するため、ポリシー上は principal.getTag("cedar_groups") のようにタグとして参照します。「JWT では cedar_groups クレーム、Cedar ポリシーでは cedar_groups タグ」という名前の対応関係です。 permit( principal is AgentCore::OAuthUser, action, resource == AgentCore::Gateway::"<gateway-arn>" ) when { principal.hasTag("cedar_groups") && principal.getTag("cedar_groups") like "*|security-auditors|*" && (action == AgentCore::Action::"cloudtrail-query___cloudtrail_query") }; このポリシーは「 security-auditors グループに属するユーザーだけが cloudtrail_query ツールを呼べる」ことを宣言しています。アクション名の cloudtrail-query___cloudtrail_query は、AgentCore Gateway が MCP ツール定義から自動生成する命名で、 ターゲット名( cloudtrail-query ) ___ ツール名( cloudtrail_query ) の形を取ります。 Cedar の policy engine は default-deny (明示的に許可されない限り拒否)で動作します。上記の 1 本のポリシーだけでは security-auditors 向けの 1 ツールしか許可されていないため、他のユーザー・他のツールはすべて拒否されます。同様のポリシーを複数定義することで、たとえばデータコンシューマーには athena_query と s3_read のみを許可し、データプロデューサーにはカタログ管理ツールも許可する、といった職務分離を実現できます。 Policy in AgentCore によるツール単位認可と、認証情報変換フローによるデータアクセス認可は独立した 2 つの軸です。Gateway で「このユーザーはこのツールを呼んでよいか」を判定し、Tool Lambda で「このユーザーはこのデータを見てよいか」を判定します。 Publisher と Subscriber で異なる S3 アクセス方式 非構造化データ(S3 上のファイル)へのアクセスは、プロジェクトの役割によって経路が異なります。Amazon S3 Access Grants は、S3 の prefix / bucket / object 単位で IAM プリンシパルやディレクトリユーザーに READ/WRITE/READWRITE 権限を付与する仕組みで、 GetDataAccess API で当該対象への一時認証情報を取得してから S3 API を呼ぶ形で利用します。SageMaker Catalog の Publish/Subscribe は、この Grant を Subscriber のプロジェクトロールに対してのみ自動作成する 設計です。Publisher 側のプロジェクトロールには明示的な Grant が作られず、Publisher は別のパス(IAM ポリシーによる直接アクセス)でバケットを読みます。これが Publisher/Subscriber で経路が分かれる理由です。 Publisher(プロジェクトがバケットを所有する場合): プロジェクトロールの認証情報で直接 S3:GetObject を呼びます。アクセス権は、プロジェクトロールに付与された IAM インラインポリシー(プロジェクト配下のプレフィックスに限定)によって許可されます。Publisher プロジェクトロール自身への明示的な S3 Access Grants の Grant は存在しないため、 GetDataAccess は失敗します。 Subscriber(別プロジェクト経由で購読する場合): SageMaker Unified Studio の Publish/Subscribe が Subscriber ロールに対して IAM タイプの Grant を自動作成します。Tool Lambda はまず S3Control:GetDataAccess で一時認証情報を取得し、その認証情報で S3:GetObject を呼びます。 判断ロジックは、コネクションの accessRole の有無とプロジェクトの所有関係で決まります。プロジェクトレベルのコネクションで accessRole があれば S3 Access Grants 経由、なければ直接アクセスです。 まとめと次のアクション 本記事では、AI エージェント経由のデータアクセスに SageMaker Catalog のアクセス制御を透過的に効かせる実装パターンを解説しました。 設定時と実行時の役割分担 を整理し、SageMaker Catalog / DataZone が設定を担い、Lake Formation / S3 Access Grants が実行時に認可を評価する構造を明確にする 認証情報変換フロー ( CreateTokenWithIAM → RedeemAccessToken → GetEnvironmentCredentials )で、ユーザーに紐付いたプロジェクトロールの認証情報を Tool Lambda に届ける Policy in AgentCore で、ツール単位の認可をデータアクセス認可とは独立した軸で制御する Lambda 実行ロールはデータアクセスに一切使わず、権限判定はすべてユーザーに紐付いた認証情報で行われます。これにより、SageMaker Catalog で設定された行・列・オブジェクトレベルのアクセス権は、AI エージェント経由でも透過的に適用されます。 第 1 回 で紹介した拡張性(ゼロショット時系列予測のオンデマンド実行)も、本記事で解説した認可の仕組みに支えられています。アクセス制御されたデータを、追加の認証設計なしで Amazon SageMaker AI の推論エンドポイントに流し込めるのは、プロジェクトロールの認証情報が Tool Lambda の手元まで届いているからです。サンプルリポジトリの apps/gateway-tools/time-series-forecast/ と design/data-access-control.md で実装の詳細を確認できます。 高野 賢司 AWS のシニアソリューションアーキテクトとして、東海以西の製造業のお客様を中心に支援しています。Infrastructure as Code や AI 駆動開発を中心とした開発者ツールのエキスパートでもあり、 Kiro によって広がったソフトウェア開発の世界を楽しんでいます。
AI エージェントに本番データを分析させるには、単にモデルと API をつなぐだけでは足りません。認可、ビジネスデータカタログ、ドメイン知識の 3 要素が揃うことで、エージェントは組織のアクセス制御とデータ構造を尊重した形で動作できます。 本記事は、シリーズ「AWS における AI エージェント対応のデータ基盤」の第 1 回です。 Amazon SageMaker を使用したデータ分析エージェントの参照実装としてサンプルリポジトリ aws-samples/sample-sagemaker-agentic-analyst を公開しました。本記事ではこのサンプルを題材に、3 要素がどう組み立てられているかを俯瞰し、2 つのデモシナリオで実際の挙動を見ていきます。また、AI エージェント対応のデータ基盤でできることの例として、従来は個別のモデルトレーニングが必要だった時系列予測を、任意のデータかつゼロショットで実行する例も紹介します。認可の実装詳細は 第 2 回 で扱います。 aws-samples sample-sagemaker-agentic-analyst A demo application that demonstrates how fine-grained access controls configured in SageMaker Unified Studio are transparently enforced on data access through AI agents. ツールを配る時代から、データを返す時代へ 組織のデータを業務で活用したい場合、利用者はこれまで BI ツール、ダッシュボード、SQL エディタといったツールを使って、自分でデータにたどり着く必要がありました。「先月の関西エリアの売上の前年同月比を見たい」と思ったら、ダッシュボードを開き、フィルタを設定し、数値を読み取ります。慣れていない利用者は、ツールの使い方を覚えるところから始めなければなりません。 AI エージェントがあれば、要求の形が変わります。利用者はチャット UI に「先月の関西エリアの売上の前年同月比を見せて」と依頼すれば、エージェントが利用者の権限を代行してデータを取得し、集計し、結果を返します。利用者はツールの操作を学ぶ必要はありません。必要なのは、何を知りたいかを言葉で伝えることだけです。 この変化を成立させる要素は 3 つあります。 第 1 に、認可がデータ層で効いていること。 エージェントは利用者本人の権限でデータを取得する必要があります。例えば「 AWS Lambda の実行ロールに全てのデータへのアクセス権を与え、利用者が見てよい範囲は LLM に判断させる」という仕組みは成立しません。システムプロンプトはユーザーからの指示によって上書きされる可能性があるからです。このため、アクセス制御は LLM の外側、データ層で効かせる必要があります。行・列・オブジェクトレベルのアクセス制御は、データ層で宣言的に設定され、利用者を特定した認証情報でクエリが実行されなければなりません。 第 2 に、データがカタログ化され、エージェントから発見可能であること。 エージェントは組織のどこにどんなデータがあるか知らなければ、正しいクエリを実行できません。エージェントのコンテキストウィンドウをあふれさせる前に、的確にデータを発見するための仕組みが必要です。 第 3 に、ドメイン知識がエージェントに届くこと。 同じ「アクティブユーザー」という語でも、組織ごとに定義が違います。「週次レポートでは前週比と前年同週比を併記する」といった分析パターンも組織ごとに異なります。こうした文脈をエージェントに渡す方法がないと、一般的には正しいが組織の文脈と合わない回答や、あるいはもっともらしく見える誤ったデータを返す可能性があります。 本記事で紹介するサンプルは、これら 3 要素を Amazon SageMaker Catalog 、 Amazon Bedrock AgentCore 、 AWS Lake Formation 、 Amazon S3 Access Grants の組み合わせで実装しています。 AI エージェント対応のデータ基盤の 3 要素 3 要素がサンプルでどのように実装されているかを表にまとめます。 要素 役割 本サンプルでの実装 認可 触ってよいデータ・使ってよいツールを制御する SageMaker Catalog(AWS Lake Formation + Amazon S3 Access Grants)で設定された行・列・オブジェクトレベルのアクセス権が、エージェント経由のデータアクセス時にも透過的に評価される。ツール単位の認可は、エージェントからツールへのリクエストを仲介する Amazon Bedrock AgentCore Gateway 上で、 Policy in Amazon Bedrock AgentCore により管理する ビジネスデータカタログ どこにどんなデータがあるかを発見させ、正しいデータに導く SageMaker Catalog をエージェントから検索・参照できるツール( catalog_search / catalog_detail )として提供する。Publish/Subscribe モデルと整合する ドメイン知識 組織固有の語彙・パターン・嗜好を注入する SageMaker Catalog のアセット説明・ビジネス用語集を通じて、組織のデータ資産そのものがエージェントのドメイン知識源になる。 Amazon Bedrock AgentCore Memory がチャット履歴を担当する 認可: 宣言的な設定を透過的に適用する Amazon SageMaker Catalog は、データと AI の発見・ガバナンス・コラボレーションを担うサービスで、 Amazon DataZone の上に構築されています。データプロデューサーがテーブルやファイルを Publish し、データコンシューマーが Subscribe することで、プロジェクト単位の権限が宣言的に設定されます。 このデータ層の認可では、 権限を設定する場所と、権限が適用される場所が分離されている のが特徴です。設定は SageMaker Catalog 上で Publish/Subscribe モデルに沿って行い、実際のアクセス制御はクエリ実行時に別のサービスで適用されます。行・列レベルのフィルタリングは、データレイクに対するきめ細かなアクセス制御を担う AWS Lake Formation が適用します。S3 オブジェクトへのアクセスは、利用者・グループ単位で管理する Amazon S3 Access Grants が適用します。 AI エージェントがデータアクセスするときも、同じ認可設定がそのまま効きます。エージェントの内部にアクセス制御ロジックを書く必要はありません。利用者が SageMaker Catalog で付与されている権限が、エージェント経由のアクセスに対しても同じように評価されます。具体的な実装パターン(ブラウザのログインセッションから Tool Lambda の手元までプロジェクトロールの一時認証情報を運ぶ仕組み)は 第 2 回 で扱います。 ツール単位の認可は別軸で必要になります。たとえばセキュリティ監査ロールには CloudTrail 検索ツールだけを許し、データコンシューマーには Athena クエリと S3 読み取りだけを許す、といった職務分離です。本サンプルでは、Policy in Amazon Bedrock AgentCore により、AgentCore Gateway に接続されたツールの実行がグループベースのポリシーで制御されます。 ビジネスデータカタログ: エージェントから発見可能にする SageMaker Catalog は UI から人間が検索するだけのものではありません。本サンプルでは、エージェントがツール経由で検索・参照できるよう、以下の Tool を独自に実装して AgentCore Gateway 経由で提供しています。 catalog_search : 自然言語クエリやキーワードでアセットを検索する catalog_detail : 特定アセットの詳細(スキーマ、説明、ビジネス用語集との関連)を取得する エージェントは、利用者の問いに応じてまずカタログを検索し、適切なテーブルを特定してからクエリを組み立てます。検索は Subscribe 済みアセットに絞り込むか、カタログ全体を対象にするかを選べます。Subscribe 済みに絞ると回答は利用者の現在の権限で得られる範囲に限定されます。一方、全体検索では Subscribe していないアセットも「未購読」として識別できるため、必要であれば利用者に Subscribe 申請を促すこともできます(デモ 2 で扱います)。いずれの場合も、実際のデータアクセスは利用者本人の権限で実行されるため、Subscribe していないアセットのデータを勝手に読むことはできません。 ドメイン知識: データ資産に書き込む ドメイン知識には、組織内で共有されるものと、利用者個人に紐付くものがあります。本サンプルでは、それぞれを注入できるパスを以下のように整理しています。 種類 注入できるパス 組織固有の語彙・定義(例: 「アクティブユーザー」の定義) SageMaker Catalog のアセット説明・ビジネス用語集。データプロデューサーが Publish 時に書き込むと、そのままエージェントが参照できる 分析パターン・クエリテンプレート(例: 月次売上では必ず前年同月比も出す) システムプロンプトへの注入、SageMaker Catalog のアセット説明への記述、Agent Core Memory のセマンティック検索 利用者個人の嗜好・履歴(例: 関西エリアの分析をよく頼む) AgentCore Memory の長期記憶 ポイントは、カタログのメタデータだけでは似たテーブルを区別できない場面が多いことです。たとえば sales_daily と sales_fact がどちらも売上を表していても、一方は速報値で一方は確定値かもしれません。この違いを自然言語でアセット説明に書き込めば、エージェントは正しいテーブルを選べます。ドメイン知識をデータ資産そのものに書き込む文化が、エージェントの回答品質を左右します。 補足: SQL 生成とセマンティックレイヤー AI エージェントにデータ分析を任せる際のアプローチは、大きく 2 つに整理できます。1 つは本サンプルのようにエージェントが SQL を直接生成する方法(Text-to-SQL)、もう 1 つは事前に定義したメトリクスと次元を持つセマンティックレイヤーを通じて問い合わせる方法です。前者は任意の問いに柔軟に応答でき、後者は正確性と決定性が必要な分析を安定して返せます。どちらが優れているというより、組織のデータ成熟度と用途で使い分けるのが現実的です。 本サンプルのアーキテクチャは、どちらのアプローチにも寄せられる構造を持ちます。Amazon Bedrock AgentCore Gateway は任意のツールを AWS Lambda 上で実装して接続できるため、 athena_query のような汎用的な SQL 実行ツールと、 sales_monthly_metric のように事前にパラメータ化されたツールを、同じエージェントに共存させられます。広いカバレッジを Text-to-SQL で取りつつ、よくあるユースケースや間違えてはいけない分析だけをセマンティックレイヤー相当のツールとして事前定義する、という運用も組めます。SageMaker Catalog のアセット説明・ビジネス用語集は、どちらのアプローチでもドメイン知識の伝達路として使えます。 デモ 3 要素がどう協調して動くかを、2 つのシナリオで見ていきます。 デモ 1: 構造化データと非構造化データを束ねて分析する 営業分析担当者が「店舗別の売上傾向を知りたい」と問いかけるところから始まります。 エージェントはまず SageMaker Catalog を検索し、売上テーブルを見つけます。利用者本人の権限で Amazon Athena にクエリを投げ、店舗別の集計を取得します。 Amazon Bedrock AgentCore Code Interpreter で集計結果を可視化し、グラフと短い解釈を返します。ここで効いている要素は次の通りです。 ビジネスデータカタログ : 利用者はテーブル名を知らなくてよい。エージェントがカタログから探す 認可 : クエリは利用者本人の権限で実行される。Subscribe していないアセットはエージェントが検索で「未購読」と判別できる ドメイン知識 : 「店舗別の売上傾向」という問いを、適切な集計粒度に落とし込む 続いて利用者が「既存の製品カタログを読んで、製品ごとのトレンドを分析して」と依頼します。ここでは、品番は売上テーブルにありますが、品名や製品説明はテーブルには含まれておらず、 Amazon S3 上のテキストファイル(製品カタログ)にしかないという状況です。 エージェントは S3 からテキストファイルを取得し、そこに書かれた品名・説明と売上データを突き合わせて、製品カテゴリごとのトレンドを分析します。構造化データ(Athena / Lake Formation)と非構造化データ(S3 / S3 Access Grants)を同じ会話の中で束ねられるのは、どちらも利用者本人の権限で取得しているからです。 デモ 2: 権限のないデータへのアクセスを、エージェントが仲介する もう 1 つのシナリオは、データへのアクセス権がまだない状況から始まります。利用者が「B2B 商談パイプラインの状況を教えて」と問いかけます。 カタログには B2B 商談データがありますが、利用者のプロジェクトはまだ Subscribe していません。エージェントはデータにアクセスできないことを伝え、利用者の指示に従って SageMaker Catalog に Subscribe 申請を出します。申請自体をエージェントが Amazon DataZone の API 経由で実行します(上のスクリーンショット)。 次に、データ所有者の操作に移ります。データ所有者は Amazon SageMaker Unified Studio にログインし、届いている Subscribe 申請を確認して承認します。 利用者の画面に戻ります。同じチャットセッションで「承認されました」と伝えると、エージェントは再度データアクセスを試み、今度は成功します。B2B 商談パイプラインの分析と可視化が提示されます。 このシナリオの注目点は、利用者が SageMaker Catalog の UI を直接触らなくても、既存の Publish/Subscribe モデルに乗ってデータアクセス権の申請と取得ができることです。データガバナンスの仕組みはそのまま維持され、利用者体験だけがチャット UI に統合されます。 デモで起きていること どちらのデモでも、データ取得は利用者本人の権限で実行されています。AWS Lake Formation が行・列レベルのアクセス制御を、Amazon S3 Access Grants がオブジェクトレベルのアクセス制御を、クエリ実行時にプロジェクトロールの認証情報に対して評価します。利用者が Subscribe していないアセットには、エージェントもアクセスできません。デモ 2 で Subscribe 申請が承認されるまでデータが返らなかったのは、その評価がエージェント経由のアクセスにも同じように効いている証拠です。 どの利用者がどのロールで何を見たかは、すべて AWS CloudTrail に記録されます。Lambda の実行ロールは監査ログのデータアクセスに登場しません。プロジェクトロールの一時認証情報でクエリが実行されているからです。 サンプルの拡張例: ゼロショット時系列予測をオンデマンドで 3 要素(認可、ビジネスデータカタログ、ドメイン知識)が揃ったデータ基盤の上には、分析以外の高度な機能もオンデマンドで組み込めます。ここでは一例として、本サンプルに含めているゼロショット時系列予測を紹介します。 従来、時系列予測モデルを使うには、データ準備、特徴量設計、モデル学習、評価、運用という長いサイクルが必要でした。系列ごとに個別のモデルをトレーニングするコストは、適用対象を限定する要因になっていました。近年登場したゼロショット予測モデル(本サンプルでは Chronos-2 )は、新しい系列に対する追加学習なしに実用精度の予測を返します。このモデルを Amazon SageMaker AI の推論エンドポイントでホストし、エージェントのツール( time_series_forecast )として公開することで、利用者は任意のテーブルに対して「来月の売上を予測して」と依頼するだけで予測結果とグラフを受け取れます。 このツール 1 つで、本サンプルの世界観は次のように広がります。 利用者が SageMaker Catalog で Subscribe した売上・在庫・トラフィック等のテーブルに対して、学習プロジェクトを立ち上げずに予測を実行できる エージェントがデータの取得から集計、予測、可視化までを一連の会話の中で扱う。Amazon Athena で取得したデータはそのまま Chronos-2 の推論エンドポイントに渡され、AgentCore Code Interpreter で fan chart として描画される アクセス制御はデータ取得の段階で効いているため、予測対象になるのは利用者が見てよい系列だけに自動的に限定される 個別のトレーニング基盤を用意せずに、アクセス制御されたデータの上で時系列予測を提供できる点が、この組み合わせの面白さです。実装の詳細(Chronos-2 の系列フォーマット、前処理の難しさ、AgentCore Code Interpreter 側の描画仕様)は、サンプルリポジトリの apps/gateway-tools/time-series-forecast/ と apps/chat-agent/src/prompt.ts を参照してください。 考慮事項 コスト 本サンプルの固定費は月数ドル程度です。大半を占めるのは Amazon Bedrock のモデル推論の従量課金で、利用量に依存します。具体的な試算はサンプルリポジトリの docs/ 配下に掲載しています。AWS 無料利用枠の範囲で動く部分も多く、低コストで検証を始めることができます。 既存データレイクへの適用 既存の S3 / Redshift データレイクを、作り直さずに本サンプルと同じ構造に組み込めます。対象のテーブルやデータセットを SageMaker Catalog で管理するようにし、Publish/Subscribe を設定することで、エージェント経由のアクセスを追加できます。データのメタデータ整備や Publisher/Subscriber の役割分担、運用ポリシーの設計は、組織のデータガバナンス方針に沿って進めます。 デプロイ手順の概要 読者が自分で動かせるよう、手順の全体像を示します。詳細は リポジトリの README を参照してください。前提として、 AWS IAM Identity Center (以下 IdC)の組織インスタンスが必要で、SageMaker Unified Studio ドメインは AWS マネジメントコンソールから作成する必要があります。 まとめと次のアクション AI エージェントが組織の本番データで動くには、認可、ビジネスデータカタログ、ドメイン知識の 3 要素が揃う必要があります。本サンプルは、これらを Amazon SageMaker Catalog、Amazon Bedrock AgentCore、AWS Lake Formation、Amazon S3 Access Grants の組み合わせで実現しています。既存のデータレイクを作り直すことなく、SageMaker Catalog で管理する形に組み込んで AI エージェントに接続できます。 ツールを配る時代から、データを返す時代へ。次のアクションとして、以下を検討してください。 試す : GitHub リポジトリ を参照してデプロイし、3 つの IdC ユーザーで権限ごとに異なる回答が返ることを確認する 自社に当てはめる : 既存の S3 / Redshift データレイクを SageMaker Catalog で管理する形に組み込めるかを検討する。具体的には、対象テーブルの洗い出しと、Publisher/Subscriber の役割分担の設計から着手する 仕組みの理解を深める : 第 2 回「SageMaker Catalog で行・列レベルのアクセス権を透過的に適用する」 で、認可の実装パターンを追う 高野 賢司 AWS のシニアソリューションアーキテクトとして、東海以西の製造業のお客様を中心に支援しています。Infrastructure as Code や AI 駆動開発を中心とした開発者ツールのエキスパートでもあり、 Kiro によって広がったソフトウェア開発の世界を楽しんでいます。
technical how本記事は 2026 年 5 月 13 日 に公開された「 Sim-to-Real and Real-to-Sim: The Engine Behind Capable Physical AI 」を翻訳したものです。 はじめに 現実世界で知覚・推論・行動するロボット、いわゆる Physical AI システムの進化が加速しています。その中心にあるのが Sim-to-Real パイプラインです。しかし、実験室の外でも安定して動作するモデルの構築は、この分野で最も難しい課題の一つです。シミュレーションで機能するものと実際のハードウェアで機能するものの間にあるギャップこそ、多くのプロジェクトが行き詰まる原因です。 本記事では、Sim-to-Real (Sim2Real) と Real-to-Sim (Real2Sim) が、物理環境で動作する AI モデル構築において最も重要な技術となった理由を解説します。シミュレーションと現実のギャップがなぜ埋まりにくいのか、現代的なアプローチでどう克服するのか、そしてロボティクスをけん引する Vision Language Action モデル (VLA) がこのパイプラインの品質に全面的に依存している理由についても説明します。 実世界のデータだけではスケールしない理由 ロボットに操作タスクを学習させるには、照明・物体の位置・表面テクスチャ・グリッパーの向きといった条件を横断して汎化するために、通常数万件のデモンストレーションが必要です。それを実機で実施するのは時間もコストもかかり、リスクも伴います。 この制約はあらゆる分野に共通します。倉庫の自動化では通常、数千種類の SKU バリエーションへの対応が必要です。自動運転車は通常、数百万件の走行シナリオを必要とします。手術ロボットは、実際の患者で倫理的にリハーサルできない処置を扱います。必要な規模での物理的なデータ収集は、現実的に不可能です。 シミュレーションはこの課題に直接対処します。物理的に正確な仮想環境では、通常、はるかに低コストで安全な環境から桁違いの速さでトレーニングデータを生成できます。ただし、純粋にシミュレーションで学習したモデルは、常に変化し予測不可能な物理環境での動作という性質上、実世界に展開すると失敗しがちです。この失敗パターンには名前があります。シミュレーションと現実のギャップ、すなわち「リアリティギャップ」です。 シミュレーションと現実のギャップ シミュレーションと現実のギャップとは、シミュレーションで学習したモデルを実機に展開したときの性能差のことです。シミュレーションはあくまで近似であるため、このギャップは避けられません。実際のカメラはノイズ・歪み・露出変動をもたらしますが、合成レンダリングはデフォルトではそれを再現しません。実際の表面には、どの物理エンジンも完全にはモデル化できない摩擦係数があります。実際のアクチュエータにはバックラッシュ・遅延・熱ドリフトがあります。クリーンな合成データで学習したモデルはシミュレーションの完全性を利用することを覚えてしまい、その挙動は現実には転用できません。 ギャップを埋めるには、二つの補完的なアプローチが必要です。 シミュレーション精度の向上 NVIDIA Isaac Sim のような現代の物理シミュレーターは、剛体ダイナミクス・変形可能物体・流体挙動・接触力を、数年前には実現できなかったレベルの精度でモデル化します。パストレーシングと物理ベースマテリアルを用いたフォトリアリスティックなレンダリングにより、実際のカメラ映像との区別がますます難しい視覚入力が生成されます。 Figure 1: Amazon EC2 G6e.4xlarge インスタンス上で動作する NVIDIA Isaac Sim ドメインランダム化 単に一つのシミュレーションを完全に正確にするのではなく、多数のランダム化されたバリエーションにわたって学習します。照明・テクスチャ・物体の質量・関節摩擦・センサーノイズを変化させることで、幅広い条件の分布に対してロバストなポリシーを学習します。重要なのは、純粋なデータ量ではなく、シミュレーションパラメータの十分な多様性とカバレッジです。これにより、ニューラルネットワークは多様な環境において、対象物のキーとなる要素を識別することを学習します。 Figure 2: OpenAI が実証した、ルービックキューブを解くロボット。(出典: OpenAI, https://openai.com/index/solving-rubiks-cube/) Real-to-Sim: 物理世界をトレーニングインフラに変える Real-to-Sim とは、現実の環境をキャプチャしてシミュレーション対応のデジタル表現に変換するプロセスです。Sim2Real が学習済みポリシーを実機に転用することを目的とするなら、Real2Sim はそのシミュレーションがハードウェアの実際の動作環境を反映することを保証するためのものです。 使用される技術は複数の分野にまたがります。LiDAR スキャンとフォトグラメトリーは、3D メッシュに処理できる点群を生成します。 Neural Radiance Fields (NeRF) と 3D Gaussian Splatting は、通常のカメラ映像からシーンのジオメトリと外観を再構築し、物理シミュレーション環境に直接取り込めるアセットを生成します。これはリアリティギャップ、すなわち仮想アセットと物理アセットのモデル化における性能差の解消に役立ちます。これらのアセットは、多様な照明条件やカメラアングルにわたって現実の見た目や質感を保持する技術を用いて仮想世界に取り込まれます。 Physical AI のトレーニングパイプラインにおいて、Real2Sim は 遠隔操作によるデータ収集 で特に重要な役割を果たします。人間のオペレーターがデモンストレーションインターフェースを通じて物理的なロボットアームを操作すると、システムはその動きをシミュレーション上のデジタルツインに同時にミラーリングします。これにより現実世界で記録された人間品質のデモンストレーションデータセットと、同じタスクの追加的な合成バリエーションを生成できる同期済みシミュレーショントレースという二つのデータを同時に得られます。。 Figure 3: SO-101 を使ったテレオペレーション このアプローチが実用的な加速手段となるのは、 模倣学習 の中心的なボトルネックに対処しているからです。模倣学習とは、報酬ベースの試行錯誤ではなく人間のデモンストレーションを観察することでロボットが学習する枠組みです。高品質な人間のデモンストレーションは模倣学習が依存するトレーニングシグナルであり、Real2Sim インフラを活用することで、物理ハードウェアのコストを比例的に増やすことなくそのシグナルをスケールできます。 合成データの生成とフィルタリング 実世界およびテレオペレーションで収集したデータは分布に沿った教師信号を提供します。つまり、トレーニングサンプルがロボットの展開時に実際に直面する条件 (照明・物体の種類・カメラアングル) を反映しています。シミュレーションはスケールを提供します。現代の Physical AI トレーニングパイプラインはこの二つを組み合わせます。 合成データ生成とは、シミュレーション環境内でラベル付きトレーニングサンプルをプログラム的に大規模生成することです。操作タスクでは、異なる物体姿勢・照明条件・グリッパー構成にわたって把持シナリオの数千バリエーションをレンダリングし、それぞれに深度・セグメンテーションマスク・アクションラベルのグラウンドトゥルースを自動アノテーションします。 データ量だけでは不十分です。フィルタリングパイプラインは、自動品質メトリクスと学習済み識別器を使って、分布外または物理的に不自然なサンプルをトレーニングセットに入る前に除去します。適切に構築されたパイプラインの出力は、実際のデモンストレーションによる物理的な根拠、合成生成の規模、および自動フィルタリングによる品質管理を備えたトレーニングデータセットとなります。 VLM・VLA と、シミュレーション品質がモデル性能を決める理由 Physical AI チームがロボット制御の基盤レイヤーとして注目しているモデルが、Vision Language Model (VLM) と Vision Language Action モデル (VLA) です。 VLM は、大規模な画像とテキストのコーパスで学習したマルチモーダル基盤モデルです。幅広い視覚的理解で、画像内の内容を推論し、空間的な関係を説明し、物体を識別し、視覚的なコンテンツを参照する言語指示に従う能力を獲得します。 Amazon Bedrock 上の Amazon Nova 、Anthropic Claude、Qwen、Mistral などがこのクラスの例です。Amazon Bedrock は、基盤インフラを管理することなくこれらのモデルにアクセスするためのマネージド API レイヤーを提供します。これは、独自のインフラの複雑さを持つ Physical AI パイプラインに視覚的推論を統合する際に重要です。 VLA は、VLMのパラダイムを物理的な動作へと拡張したものです。VLAは、テキストを出力するのではなく、視覚的な観察と言語による指示に応じて、ロボットの動作、関節の位置、速度指令、エンドエフェクタの軌道などを生成します。VLAのトレーニング目標は、視覚的理解と物理的な因果関係の両方に基づいた方針を学習することです。つまり、「自分が見ているものと、自分がするように求められていることを踏まえて、どのような行動をとるべきか?」を学習します。 シミュレーションデータの品質は、VLAが明示的に学習されていないタスクに対してどれだけうまく汎化できるかを直接左右します。学習に使用した視覚ドメイン(合成レンダリング)が展開ドメイン(現実世界)と一致しない場合、学習されたポリシーは破綻し、ぎこちない動作制御、タスクの失敗、ポリシー評価の精度低下といったパフォーマンス上の問題が即座に発生します。ドメインランダム化は、高品質のベースデータセットを取り込み、それを拡張して、新しいオブジェクト、異なる照明条件や色を持つ環境などを含むさらに高品質のデータセットを生成することで、ポリシーの堅牢性を高めます。高忠実度物理演算により、動作出力が物理的に意味のあるものとなることが保証されます。 合成データパイプラインは、実際のデモンストレーションだけではカバーできないタスク分布、まれな障害モード、エッジケース構成、そしてまだ物理的に存在しない環境に対してVLAを学習させることを可能にします。 産業への応用 このパイプラインが最も即効性のある価値をもたらす業界には、ある共通の特徴があります。それは、物理的な環境がリスクが高く、変化に富み、直接学ぶには費用がかかったり危険を伴ったりするという点です。 製造業 では、倉庫自動化システムが SKU のバリエーション・梱包の損傷・フロアレイアウトの変化に対応する汎化能力を必要とします。Real2Sim キャプチャがシミュレーショントレーニングに供給され、Sim2Real 転用により実世界のバリエーションに耐えるポリシーが生成されます。 自動車業界 では、自動運転システムは通常、実世界では安全に再現できない数百万件のエッジケースシナリオにわたるトレーニングを必要とします。 医療分野 では、手術や患者ケアへの応用が厳格な安全規制上の制約を受けます。高精度なシミュレーションにより、患者への接触なしにモデルのトレーニングと検証を進められます。 エネルギー・公益事業 では、点検用の自律ロボットが変電所・パイプライン・風力発電所など、人間が立ち入ることに実際の身体的リスクを伴う環境で稼働します。 小売業界 では、自律型フルフィルメントシステムは、絶えず変化するレイアウトの中で膨大な種類のSKU(在庫管理単位)に対応しなければなりません。数千種類もの製品バリエーションにわたるトレーニングデータを生成するシミュレーションこそが、生産規模での汎用化を実現する唯一の現実的な方法です。 今後の展望 本記事では、Physical AIモデルを現実世界で動作させるためのコアエンジンであるSim2Real/Real2Simパイプラインの目的と内容について解説しました。本シリーズの次回記事では、LeRobot SO-101 AWS Sim2Real2Sim リファレンスプロジェクトのハンズオン技術解説を通じて、これらの概念を具体化します。AWS インフラストラクチャ・NVIDIA Isaac Sim・公開されている LeRobot プラットフォームを使ってエンドツーエンドで実装する、完全にデプロイ可能なアーキテクチャを紹介します。 まずは基盤モデルへのアクセスに Amazon Bedrock を、シミュレーションワークロードに最適化された Amazon EC2 G6e インスタンス をご確認ください。 <!-- '"` --> Dario Macagnano Dario Macagnano is a Physical AI Solutions Architect at AWS. With years of experience designing and deploying solutions spanning real-time simulation, digital twins, and edge inference — from rapid prototypes to large-scale production systems — Dario is passionate about the convergence of AI, robotics, and cloud infrastructure that brings intelligent systems into the physical world. Ignacio Sánchez Ignacio Sanchez is a Worldwide Specialist Solutions Architect for Physical AI in AWS, based in Madrid, Spain. He works with customers and partners globally to design and deploy AI solutions that bridge the digital and physical worlds, spanning spatial computing, robotics, and edge inference workloads on AWS. Ignacio is passionate about emerging technologies and their real-world applications. In his spare time, he enjoys reading, playing video games, and staying active through sports. Quinn Cheong Quinn Cheong is a Worldwide Specialist Solutions Architect for Physical AI at AWS, helping to shape the global Physical AI architectural strategy for the domain. Quinn’s expertise spans cutting-edge software development, and he has pioneered multiple solutions from World Generation and 3D Model Inferencing on Kubernetes, to creating WebXR augmented workers for AR Glasses. Quinn is also a seasoned AWS speaker, having presented at 30+ global events and summits. He is now focused on scaling Physical AI Infrastructure with Kubernetes and Agentic AI. 翻訳は Visual Compute SSA 森が担当しました。原文はこちらをご覧ください。
本ブログは 2026 年 3 月 20 日に公開された Amazon Science Blog “ Formally verified AES-XTS: The first AES algorithm to join s2n-bignum ” を翻訳したものです。 コア演算のアセンブリコードを単純化して明確化することで、自動最適化と検証が可能になりました。 暗号化アルゴリズムは、読み取り可能なデータをランダムなビットの並びのように見える暗号文に変換する数学的手続きです。暗号文は、対応する復号アルゴリズムと正しい鍵を使用したときにのみ復号できます。 保管中のデータ (ディスクやデータベースに保存される情報) に対しては、 AES-XTS のようなアルゴリズムが、ストレージに書き込まれる前に各ブロックを暗号化することで、物理的な盗難やストレージシステムへの不正アクセスから保護します。転送中のデータ (ネットワーク上を移動する情報) に対しては、TLS のようなプロトコルが複数のアルゴリズムを組み合わせて使用します。非対称暗号化アルゴリズム (RSA や楕円曲線) で安全な接続を確立し、高速な対称暗号化アルゴリズム (AES-GCM など) で実際のデータストリームを保護するとともに改ざんされていないことを検証します。Amazon Web Services (AWS) では、 EBS 、 Nitro Card 、DynamoDB などのサービスでお客様のデータを保護するために AES-XTS を使用しており、AES-GCM を用いた TLS によりサービス間およびお客様との通信を含むすべてのネットワーク通信を保護しています。 AWS は、AES-XTS 復号の最適化された Arm64 アセンブリ実装の形式的検証に挑戦しました。「形式的検証」とは、エンジニアリングされたシステムが特定の 仕様 を満たすことを数学的に証明するプロセスです。 本研究は、ブロック指向ストレージデバイスの暗号保護に関する IEEE 標準 1619 に従い、AES-XTS の AES-256-XTS バリアントに焦点を当てています。「256」は暗号化鍵のサイズを表します。 固定サイズのブロックを処理するアルゴリズムとは異なり、AES-XTS は 16 バイトから 16 メガバイトまでの可変長データを扱い、不完全なブロックには特別なロジックを使用します。検証されたアセンブリコードは 5 倍アンロール版で、ループが 5 つのレジスタ (それぞれが入力ブロックを格納) で並列実行されるように展開され、最新の CPU パイプライン向けに最適化されていました。エラーがあるとお客様データのセキュリティを損なう可能性がある重要なコードでありながら、手動レビューでは正当性を保証できないほど複雑でした。 Amazon Web Services の形式的に検証された大数演算ライブラリである s2n-bignum の一部として、AWS は改善された Arm64 アセンブリ実装による AES-XTS 暗号化と復号を提供するとともに、チームメンバー (John Harrison) が開発した HOL Light 対話型定理証明器を用いた仕様記述および形式的検証を行いました。 これは、入力長に応じて複数の経路を持つ大規模関数を対象とした証明駆動開発の実験でした。その結果、s2n-bignum ライブラリにおいてこれまでで最大規模の証明が完成しました。典型的な入力サイズである 512 バイトでは、アルゴリズムのパフォーマンスは元のコードと同等か、高度に最適化された Arm コアではわずかに向上しました。このアルゴリズムとその証明を s2n-bignum ライブラリに追加することで、より多くの AES ベースのアルゴリズムを追加する道が開かれます。 アルゴリズムの説明 AES は鍵付き置換を実装するブロック暗号です。つまり、平文ファイルをブロック (この場合は 128 ビットのブロック) に分けて処理し、任意の鍵に対して、各平文ブロックを一意の暗号文ブロックに対応付ける全単射 (一対一かつ可逆) 関数を定義します。この数学的性質により、復号によって元の平文を一意に復元できることが保証されます。 AES-XTS は、ストレージ暗号化のために特別に設計されたモードです。基盤となる構成要素として AES を使用しますが、ディスク暗号化の独自要件に対応するため、位置依存の tweak (調整値) と暗号文スティーリング (ciphertext stealing) (部分ブロックを処理する方法) を追加しています。ディスク暗号化では、任意のセクタへのランダムアクセスが必要であり、データサイズを正確に保つ必要があります。 AES-XTS は、2 つの鍵を使用するアプローチでストレージデータを暗号化します。各 128 ビットブロックとその位置依存の tweak は排他的論理和 (XOR、入力値が異なる場合のみ 1 を出力する二項演算) され、その結果が AES で暗号化され、再び tweak と XOR されます。これにより、ディスク上の異なる位置にある同一のデータが異なる暗号文を生成します。tweak は、セクタ番号を 2 番目の鍵で暗号化し、 ガロア体 で α のべき乗を掛けることで生成され、各ブロック位置に対して一意の値が作成されます。 最後のブロックが完全な 128 ビットでない場合、暗号文スティーリングが機能します。暗号文スティーリングは前のブロックからバイトを「借用」することで、パディングや無駄な領域なしに任意の長さのデータを暗号化できるようにします。これにより、各ブロックの暗号化を位置に基づいて行いながら、任意のセクタを独立して読み書きできます。これはディスク暗号化において重要な機能です。なぜなら、ディスク暗号化のセキュリティモデルでは、攻撃者が対象以外のセクタにアクセスし、それらを変更し、復号を要求することが許容されているためです。また、暗号文のサイズが平文と完全に同じになることも保証され、所定の場所に収まります。 XOR-暗号化-XOR (XEX) 構造を採用した AES-XTS 暗号化 暗号文スティーリングは、最後から 2 番目のブロックの出力を分割することで、暗号化中の部分ブロックを処理 対称復号プロセス 復号のための逆暗号文スティーリング アセンブリ実装の制御フロー AWS は、Amazon の AWS-LC 暗号ライブラリにある既存の AES-XTS 実装から開始しました。AES-XTS は平文を 128 ビットブロックでループ処理し、各ブロックの暗号化には 15 のステップが必要で、各ステップには暗号化鍵から導出された独自の「ラウンドキー」が使用されます。既存の実装は 5 倍アンロールされており、5 ブロックずつ並列で処理します。最後のブロックの長さが 128 ビット未満の場合、入力バッファの限界を超えて読み取る「バッファオーバーリード」のリスクがあります。 オーバーリードを回避するため、既存の実装では入力バッファ内の現在位置へのポインタに対して複雑な操作を行います。これには、追跡が困難な高度な制御フローが必要です。ループカウンタはループの前と途中で複数回インクリメントおよびデクリメントされ、ループには最終的なループバック分岐以外に 2 つの追加の出口点があります。 1 つの出口点は、ループの最終イテレーションで 4 ブロックが残っている場合のためのもので、もう 1 つの出口点は 1 ~ 3 ブロックが残っている場合のためのものです。ループのフローは、パイプラインの使用率を最大化するためにロード/ストア命令と AES および XOR 命令をインターリーブしています。ループ終了後、残りのブロックの処理は 4 から 1 までの長さに対して絡み合っており、最後に部分ブロックがある場合、アルゴリズムは暗号文スティーリング手順を実行します。さらに、15 個のラウンドキーのうち 7 つだけがレジスタに保持され、他の 8 つはループ内外でメモリから繰り返しロードされていました。 AWS はまず、Arm コード用のスーパーオプティマイザである SLOTHY に命令を再配置させてパイプラインの使用率を最大化することで、メインループのパフォーマンスを向上できるかを調査しました。SLOTHY には、さまざまな Arm マイクロアーキテクチャの簡略化されたモデルが含まれています。制約ソルバーを使用して、最適な命令スケジュール、レジスタリネーミング、および周期的なループインターリーブを提供します。 しかし、SLOTHY がループを識別して最適化するためには、ループは典型的なループの動作を示し、各イテレーションの最後にカウンタを減少させ、最初に戻る必要があります。SLOTHY はまた、8 つのラウンドキーをロードすることで作成されるネストされたループを処理できません。 これがループを「整理」し始める動機となりました。まず、すべてのラウンドキーを永続的に保持するためにレジスタを解放しました。これは、最適化された命令の順序が元のコードよりも少ない一時レジスタしか必要としなかったため可能でした。次に、複数の出口点と、残りのブロックを処理するためのループカウンタの操作を取り除きました。カウンタの値は常にバッファに残っている 5 ブロックチャンクの数を示し、SLOTHY の要件に適合します。ループは残りのブロックの処理の前に終了します。 ループが終了したら、1 から 4 までの残りブロック数のそれぞれを処理するための個別の処理ブランチを用意します。4 つのブランチはすべて暗号文スティーリングで終了します。これは、暗号化アルゴリズムと復号アルゴリズムの制御フローグラフ (下記参照) で確認できます。コード全体を通して、定数時間の設計思想を維持しました。つまり、分岐や特別な処理は秘密データではなく、入力バイト長などの公開値のみに基づいています。 AES-256-XTS 暗号化制御フローグラフ AES-256-XTS 復号制御フローグラフ パフォーマンス コードへの修正により、AWS は SLOTHY を使用して暗号化アルゴリズムを最適化できるようになりました。これにより AWS Graviton ファミリーの Arm プロセッサでわずかなパフォーマンス向上が得られましたが、最適化されたアウトオブオーダーパイプラインを持つより高度なチップでは、向上幅は小さくなりました。元の実装と比較して、アルゴリズムの実行を通じてラウンドキーをレジスタに保持しメモリからのロードを節約することで、AES 命令を他の命令とインターリーブしないことの影響を相殺できました。 ループ内の命令フローをよりクリーンにし、出口処理をモジュール化したことで、ループイテレーションのさまざまなアンロール係数を試すことができました。AWS は 3 倍、4 倍、6 倍の係数を実験し、さまざまなマイクロアーキテクチャにおいて 5 倍が依然として最良の選択であると結論付けました。 形式的検証による正当性の確保 最適化された暗号化コードを本番環境にデプロイするには、それが正しく動作することの数学的な確実性が必要です。ランダムテストでは単純なケースを素早くチェックできますが、AWS は AES-XTS 実装に対して最高レベルの保証を提供するために形式的検証を活用しています。 なぜ AES-XTS に HOL Light なのか? AWS の実装が IEEE 1619 仕様に一致することを証明するために、同僚の John Harrison が開発した対話型定理証明器である HOL Light を使用しています。HOL Light は、コードが書かれる際に検証される「構築による正当性」アプローチをソフトウェア開発に対して特に単純に実装したものです。HOL Light の信頼されたカーネルはわずか数百行のコードで、基本的な論理推論規則を実装しています。これは、証明戦術や自動化にバグがあったとしても、HOL Light が誤った証明を受け入れる原因にはなり得ないことを意味します。最悪の場合、バグによって証明を完了できなくなりますが、偽の命題を証明可能にすることはできません。 AWS が AES-XTS 検証に HOL Light を選んだ理由はいくつかあります。 アセンブリレベルの検証 : AWS はコンパイル済みコードに依存するのではなく、実装を直接アセンブリで記述しています。より困難ではありますが、これにより証明はあらゆるコンパイラから独立したものになります。HOL Light は CPU 命令仕様を使用してマシンコードバイトについて直接推論し、ソフトウェアスタックの最下層で保証を提供します。 既存の暗号インフラストラクチャ : s2n-bignum は、実行アーティファクトを取り除き純粋に数学的な問題を残すシンボリックシミュレーション、ワード演算用の特殊化された戦術、バイトリスト処理など、暗号検証のための広範なサポートをすでに提供しています。AWS は AES 演算に関する証明された補題を追加し、他の AES モードの証明にも再利用できるようにしました。 複雑な制御フローの処理 : 十分な説明なしに複雑な証明で失敗する可能性のある完全自動証明器とは異なり、HOL Light の対話型アプローチにより、5 倍アンロールされたループに必要な複雑なループ不変条件を経由して証明を導くことができ、任意の長さのデータブロックを処理し、可変長入力と部分ブロックに必要な複雑なメモリ推論を実行できます。 s2n-bignum フレームワーク s2n-bignum を AES-XTS の実装に使用することは、2 つの目的を果たします。これは x86-64 および Arm アーキテクチャでアセンブリコードを形式的に検証するためのフレームワークであり、暗号化のための高速で検証されたアセンブリ関数のコレクションでもあります。このライブラリには、特に大数の数学的演算 (これが名前の由来) に関する多数の暗号化アルゴリズムの検証済み実装がすでに含まれており、これらは公開鍵暗号プリミティブの基盤となっています。s2n-bignum の一部として公開鍵アルゴリズムを証明するために HOL Light がどのように使用されたかの詳細については、Amazon Science の以前のブログ記事「 Graviton での RSA の高速化: 形式的検証で正当性を証明し開発も加速 」および「 自動推論で「25519」楕円曲線暗号の高速化と正当性保証を実現 」を参照してください。 前述のとおり、AES-XTS は AES ブロック暗号のモードの 1 つです。AES は、換字操作 (S ボックスを使用した SubBytes)、転置操作 (ShiftRows、MixColumns)、および鍵混合を組み合わせた換字・転置ネットワーク (SPN) 構造に基づいています。s2n-bignum を Arm64 および x86_64 プロセッサにある AES 命令セットアーキテクチャ (ISA)、AES ブロック暗号の仕様、および AES-XTS 用の追加仕様を含むように拡張することで、より多くの AES ベースのアルゴリズムを同じ厳密な検証で扱う道を開いています。 仕様の開発とテスト AES およびそれに基づくモードの SPN の性質は、定理証明器が本来理解できる単純な数式 (公開鍵暗号の基本である剰余乗算など) では表現できません。データを処理するステップの記述を書く必要があります。これがアセンブリを検証する前に、HOL Light の仕様が IEEE 標準を正確に捉えているという確信が必要だった理由です。 AWS は、入出力にバイトリストを使用し、内部ブロック演算には 128 ビットワードを使用して、標準の構造を反映するように仕様を記述しました。次に、 変換 を開発しました。これは、評価が数学的に正しいという証明を生成しながら、具体的な入力で仕様を評価するために使用される HOL Light 関数です。 AWS は、さまざまな AES-XTS 暗号化/復号シナリオをカバーし、すべてのブロックの処理 (再帰を使用) と暗号文スティーリングを実行する単体テストを実施することで、仕様を検証しました。 これらのテストにより、より複雑なアセンブリ検証に取り組む前に、仕様が IEEE 標準と一致することが確認されました。この 2 段階のアプローチ (まずテストにより仕様が正しいことを保証し、次に実装が仕様と一致することを形式的に検証する) により、AWS は正しいことを証明しているという確信を得られました。 証明戦略 AWS の証明はコンポジショナル (合成的) であり、全体の問題を個別に証明できる部分問題に分解します。部分問題に応じて、部分証明は有界 (入力範囲に対してのみ真) または無界となります。 5 ブロック (復号の場合は 6 ブロック) 未満の入力に対しては、各ケースを網羅的に検証する有界証明を作成しました。5 ブロック (復号の場合は 6 ブロック) 以上の入力に対しては、ループ実行中に真であり続ける数学的命題であるループ不変条件を開発し、任意の長さの入力に対する正当性を証明しました。ループ不変条件は、ループ終了条件が満たされるまでに 3 つの重要な要素を追跡します。各イテレーションでのレジスタ状態、「tweak」(各ブロックの暗号化を一意にするもの) の進化、そしてブロックが処理されるにつれてのメモリ内容です。部分ブロック (末尾) 処理については、すべてのケースで再利用できる暗号文スティーリングの個別の定理を証明しました。 トップレベルの正当性定理はすべての証明を組み合わせ、次の命題を主張します。 もしプログラム、入力、出力、スタックが特定の互いに素な性質を満たし、 入力長 len が 16 <= len <= 2 24 を満たすならば、 初期マシン状態が適切なシンボリック値で設定されている場合、 プログラム全体が実行された後、出力バッファに格納された値は AES-XTS 仕様を満たさなければならない。 メモリ安全性と定数時間の証明 最近、s2n-bignum にはアセンブリ関数の定数時間およびメモリ安全性の特性を形式的に定義するための新しい関数と戦術が追加されました。これらのリソースにより、s2n-bignum の多くのアセンブリサブルーチンが定数時間でメモリ安全であることが検証されました。これには、楕円曲線のトップレベルのスカラー乗算関数、RSA の大整数演算、ML-KEM 暗号標準の Arm 実装 (Amazon Science で近日公開予定のブログ記事のテーマ) が含まれます。2025 年 10 月時点で AWS-LC で使用するために特定されたすべてのアセンブリサブルーチンは、定数時間でメモリ安全であることが形式的に検証されました。 AWS は、新しい戦術を AES-XTS など、その後追加されたアセンブリサブルーチンの検証に簡単に使用できるかを探っています。前述のとおり、AES-XTS は非常に複雑な制御フローを持っており、長く込み入った機能的正当性証明となりました。その複雑さは安全性証明にとっても課題です。プロセスは進行中ですが、復号および暗号化アルゴリズムの暗号文スティーリングサブルーチンの安全性特性はすでに証明されています。 これらの最初の証明は、バッファオーバーリードが起こりやすい重要なメモリアクセス手順に焦点を当てました。復号および暗号化アルゴリズムの残りの部分の証明は、同じ方法論を使用できます。定数時間およびメモリ安全性の証明は、機能的正当性の証明と同じ構造に従いますが、証明目標がより焦点を絞っているためより単純です。 正当性の継続的保証 AWS は形式的検証を s2n-bignum の継続的インテグレーション (CI) ワークフローに統合しました。これにより、AES-XTS 実装への変更は、形式的な正当性証明を成功裏に通過しなければコミットできないという保証が得られます。CI の一環として、CPU 命令モデリングは実際のハードウェアに対するランダム化テストによって検証され、不正確さを「ファジング」することで、仕様が正しく証明が実際に成立することを保証します。 さらに、証明では入力がシンボルとして表現されるため、すべての可能な入力に対する正当性が保証されます。これにより、コードのすべての経路をカバーできても、すべての入力値をカバーできない可能性があるカバレッジテストの典型的な欠点を克服します。たとえば、ここで使用されているような定数時間コードは、秘密値で分岐することなく記述されます。通常、秘密値はそれらから派生したマスクの使用により演算に組み込まれます。同じ命令が秘密値に関係なく実行されます。したがって、ライン (行) カバレッジの達成は通常開発者の手の届く範囲にありますが、値カバレッジの達成は正当性の形式的検証に委ねられます。 この同じ方法論により、AWS は数学的な正当性の保証を持つ最適化された暗号化実装をデプロイし、同時に大幅なパフォーマンス向上を達成できました。これにより、開発者やツールはバグの導入を心配することなくコードをさらに自由に最適化でき、バグは証明によって自動的に検出されます。AES-XTS での経験により、アセンブリコードの証明駆動開発が、証明可能な正当性を保ちつつ、より理解しやすく、レビューしやすく、保守しやすく、最適化しやすい制御フローを生み出すことが示されました。 著者について Yan Peng Yan Peng は Amazon Web Services (AWS) の applied scientist (応用科学者) です。暗号ライブラリと認可評価ライブラリの形式的検証に取り組んでいます。 Nevine Ebeid Nevine Ebeid は Amazon Web Services (AWS) の Cryptography グループの senior applied scientist (シニア応用科学者) であり、AWS 暗号ライブラリである AWS-LC のための最適化されたアルゴリズムの開発、検証、コンプライアンスに注力しています。AWS に入社する前は、自動車およびモバイルセキュリティアプリケーション向けの暗号ライブラリとプロトコルの研究開発を行っていました。 June Lee Juneyoung Lee は Amazon の Automated Reasoning Group の senior applied scientist (シニア応用科学者) です。 本ブログは Security Solutions Architect の 中島 章博 が翻訳しました。