AWS Emulatorを検証: 無料のローカルAWSはIAMチェックを素通り
AWS Emulator(AWSエミュレーター)は、Tech AI Wireのテストでポート9297で0.6秒で起動した。IAM権限を持たないユーザーでも、リソースの作成や削除ができた。
4 分で読めます
英語の原文から機械翻訳したものです。原文はClaire Whitmoreが事実確認と編集を行いました。内容に相違がある場合は英語版が優先されます。 編集方針

数字で見る
- 対応するAWSサービス数(Werner Vogels氏のブログより)
- 200+
- エージェントが基にしたAWS APIモデルの数(Amazonより)
- 438
- LocalStackの最安有料プランのライセンスあたり月額(年払い)
- 39ドル
AWSは2026年11月11日、AWSのサービスを開発者自身のコンピューターに再現する無料のプログラム、AWS Emulatorを公開した。AWSによると、コードはすべてAIエージェントが書いた。開発者とそのコーディングエージェントは、AWSの料金も本物のAWSアカウントもなしに、クラウド向けのコードを試せる。ただしTech AI Wireのテストでは、IAM権限は守られなかった。IAM権限とは、AWSアカウントで誰が何をしてよいかを決めるルールだ。つまりこのツールでは、そのルールが正しく働くかは確かめられない。
エミュレーターとは、本物のサービスと同じリクエストに応答するローカルの代用品のことだ。Werner Vogels氏のブログAll Things Distributedの記事によると、400を超えるAPIモデルを通じて200を超えるAWSサービスに対応する。Amazon自身の説明によると、コードはパブリックドメインへの献呈であるCC0の下でGitHubに公開されている。
AWSはエージェントでどう作ったか
「エミュレーターはすべて自律型エージェントが書いた。私たちのチームは、コードを一行も書いておらず、レビューもしていない」と、AWSのシニアプリンシパルエンジニアであるMatthew Goldberg氏はHelp Net Securityに語った。Goldberg氏によると、このプロジェクトは週末の実験として始まった。あるエージェントが、AWSのメッセージキューであるAmazon SQSの最初の版を15分で作ったという。
Help Net Securityによると、今は3つのエージェントのチームが作業している。1つ目はAWSの公開API仕様からテストを書き、本物のAWSで確かめる。2つ目はそのテストをエミュレーターに対して走らせる。3つ目は失敗した部分を直す。どの変更も、ビルド、コーディング規約、セキュリティ、忠実度を確かめるマージゲートを通る必要がある。忠実度とは、エミュレーターがどれだけAWSに近いかを指す。Goldberg氏は、438のAPIモデル、「数万」のテスト、そして1日に数千の問題を直す数百のエージェントを挙げている。
Vogels氏のブログの記事は、エンジニアの仕事はこうしたチェックを作ることに移ると論じる。「AI時代のソフトウェア品質は、エンジニアがエージェントの周りに設計するガードレールにかかっている」と記事は述べている。
Tech AI Wireのテスト: セットアップ、速度、権限
テストは、Apple siliconのMacでmacOS 26とDocker 28.4.0を使って行った。AWSは完成済みのイメージを公開していない。代わりにDockerガイドが短いDockerfileを示しており、Apple silicon向けにはArm用パッケージを使う。ビルドは65秒かかり、1.16 GBのイメージができた。中でaws-emulator -vを実行すると、バージョン1.0.322、リリース日2026.11.10と表示された。
--telemetry offを付けて起動すると、エミュレーターは0.6秒で準備ができた。ログが示したエンドポイントはhttps://127.0.0.1:9297で、自己署名証明書を使う。AWSの設定ファイルと認証情報ファイルも自分で書き出したので、AWS CLIは本物の鍵なしで接続できた。ログは、コンテナがすべてのネットワークインターフェイスで待ち受けていると警告した。AWSのガイドがポートを127.0.0.1だけに公開するのは、このためだ。
基本機能は、AWS CLI 2.24.16で動いた。AWSのファイルストレージであるS3では、バケット作成、アップロード、一覧表示がすべて成功した。SQSのキューは、メッセージを受け取って返した。AWSのキーバリュー型データベースであるDynamoDBでは、新しいテーブルにすぐ書き込むとResourceNotFoundExceptionで失敗した。テーブルがまだCREATINGの状態だったためだ。aws dynamodb wait table-existsの後は、書き込みも読み込みも動いた。全体の実行は7秒で、コンテナのメモリ使用量は174 MiBだった。
弱点は権限だった。すべてを拒否するバケットポリシーは、ダウンロードを403エラーで確かに止めた。しかし次に、ポリシーを1つも付けないIAMユーザーを作った。そのユーザーの鍵を使うと、3つの呼び出しがすべて成功した。
$ aws sqs list-queues
https://sqs.us-east-1.amazonaws.com/000000000000/taw
$ aws s3 mb s3://nobody-bucket
make_bucket: nobody-bucket
$ aws dynamodb delete-table --table-name taw
DELETING
これはAWS自身が警告している弱点だ。Help Net Securityによると、エミュレーターはIAMポリシーやリソースベースのポリシーをAWSと同じようには評価しない。そのためAWSは、セキュリティのテストには使わないよう求めている。再起動すると、ドキュメントのとおりすべてが消えた。docker restartの後、バケットの一覧は空だった。
AWS EmulatorとLocalStackの無料プランの比較
LocalStackも、AWSのサービスをローカルで動かすツールだ。その無料プランには、AWS Emulatorにはない条件が付いている。表はLocalStackの料金ページとAWS自身のページによる。
| AWS Emulator | LocalStack Hobby(無料) | |
|---|---|---|
| 価格 | 無料、サービス料金なし | 無料 |
| 登録 | テストでは不要 | アカウントが必要 |
| 商用利用 | 制限の記載なし。コードはCC0 | 不可:「趣味やその他の非商用利用向け」 |
| 最安の有料プラン | 記載なし | Base、年払いでライセンスあたり月39ドル、月払いなら45ドル |
開発者にとっての意味
AWS Emulatorは、アプリのテストを走らせたり、コーディングエージェントにAWSの呼び出しを試させたりするには、速くて無料の場所だ。誰が何をできるかを確かめる場所ではない。
- 権限のテストは本物のAWSで行う。 ここでは権限のないユーザーがテーブルを削除できた。IAMのロールやポリシーは、検証用のAWSアカウントで試すこと。
- localhostだけに公開する。 AWSのガイドのとおり、Dockerでは
-p 127.0.0.1:9297:9297を使う。そうしないと、同じネットワークの誰でも呼び出せてしまう。 - 必要ならテレメトリーを切る。
--telemetry offを付けるか、EMULATOR_TELEMETRY=offを設定する。既定ではオンだが、Help Net Securityによると、リクエスト、レスポンス、リソースのデータは送らない。 - テストのたびにデータを用意する。 すべてはメモリ上にあり、再起動で消える。
- 本物のコードと同じく、リソースの準備を待つ。 準備前のDynamoDBテーブルに書き込むテストは、ここでは失敗する。
- サービスに頼る前に忠実度を確かめる。 AWSは、GitHubのリリースごとにサービス別の忠実度スコアを公開している。
AWSのテストを社内で動かすためだけにLocalStackに支払っているチームには、比べられる無料の選択肢ができた。ただし注意点はAWS自身が挙げるものと同じで、ここでテストが通っても、権限については何もわからない。
出典
- How autonomous AI agents built AWS Emulator - About Amazon
- AWS Emulator and the engineer's job when agents write the code - All Things Distributed
- AWS Emulator: Open-source tool for testing AWS apps locally, built by autonomous AI agents - Help Net Security
- Getting started with AWS Emulator in Docker - AWS Documentation
- LocalStack pricing - LocalStack
関連記事

TorchNeuronがパブリックベータに、AWS TrainiumでネイティブPyTorchを実現
TorchNeuron(トーチニューロン)のPyTorchバックエンドがパブリックベータになり、テキスト生成モデル上位100のうち89%がAWS Trainium(トレイニアム)でそのまま動くようになりました。以前は46%でした。

Perplexity、AIエージェント向けサンドボックスSPACEをオープンソース化
Perplexityは10月15日、Computerエージェントを支えるFirecrackerベースのサンドボックスSPACEを、Apache 2.0のオープンソースとして公開しました。自社のテストでは、108回の試行で脱出は0回でした。

Capcom、RE EngineをAI対応に作り直す計画「REX」を発表
Capcom(カプコン)は10月2日、27本以上のゲームに使われてきたRE Engineを、段階的にAI対応のエンジンへ変える計画「REX」を発表しました。構成要素のうち2つはオープンソース化されます。