概要
- Deno Deploy 利用者の開発内容が、 LLM生成コードの即時実行 へと変化
- APIキーやネットワークアクセス を伴う、従来より深刻なセキュリティ課題の発生
- Deno Sandbox によるネットワーク制御とシークレット保護の実現
- サンドボックスから 本番デプロイ までのシームレスな流れ
- 柔軟な 永続化・料金体系 とエンタープライズ対応
Deno SandboxによるLLM生成コードの安全実行
- LLM(大規模言語モデル)生成コード が即時実行されるプラットフォームの増加
- 生成コードが APIキーやネットワークアクセス を必要とし、外部APIも呼び出し
- 従来の「未検証プラグイン実行」より深刻な セキュリティリスク
- 人によるレビューなし で、外部APIと連携するコードの実行
- 計算リソースの分離(サンドボックス化) だけでは不十分
Deno Sandboxの主な機能
- ネットワークエグレス制御 による外部通信先の制限
- シークレット(APIキー等) の外部流出防止
- 軽量Linux microVM (Deno Deployクラウド上)による高い隔離性
- JavaScript/Python SDK によるプログラマブルなサンドボックス生成
- SSH/HTTP/VS Code 経由でのサンドボックス操作
- 例:
import { Sandbox } from "@deno/sandbox"; await using sandbox = await Sandbox.create(); await sandbox.sh\ls -lh /`;`
- 例:
シークレットの安全管理
- サンドボックス内で シークレットはプレースホルダ としてのみ存在
- 許可済みホストへのリクエスト時のみ 実際の値が展開
- 例:
OPENAI_API_KEYはapi.openai.comへの通信時のみ有効
- 例:
- 外部への不正送信(exfiltration) が試みられても無効
- 例:
await Sandbox.create({ secrets: { OPENAI_API_KEY: { hosts: ["api.openai.com"], value: process.env.OPENAI_API_KEY } } })
ネットワークエグレスの制御
- サンドボックスが通信可能な ホストを明示的に指定
- 例:
allowNet: ["api.openai.com", "*.anthropic.com"]
- 例:
- 許可外ホストへの通信はVMレベルでブロック
- アウトバウンドプロキシ による一元的なポリシー適用
- 今後の拡張予定: 接続分析やプログラムフック による柔軟な制御
- Deno本体の
--allow-netと組み合わせた 多層防御
サンドボックスから本番デプロイへ
sandbox.deploy()で サンドボックスからDeno Deployへ直接デプロイ- 例:
const build = await sandbox.deploy("my-app", { production: true, build: { mode: "none", entrypoint: "server.ts" } });
- 例:
- CIや認証の切り替え不要、開発環境からそのまま本番運用
- 自動スケーリング対応サーバーレスデプロイ
永続化とボリューム管理
- サンドボックスは デフォルトでエフェメラル(揮発性)
- 必要に応じて 永続ボリューム や スナップショット 利用可能
- Volumes:キャッシュ、データベース、ユーザーデータ保存
- Snapshots:ツールチェーンやベースイメージの事前インストール
- 迅速な開発環境の再現 が可能
技術仕様
- リージョン :Amsterdam、Chicago
- vCPUs :2
- メモリ :768MB〜4GB
- 最大稼働時間 :30分(延長可)
- 起動時間 :1秒未満
- 用途例: AIエージェント、vibe-coding環境、安全なプラグイン実行、CIランナー
料金体系
- Deno Deployプランに含まれる従量課金制
- CPU時間:$0.05/時間(Proは40時間分含む)
- メモリ:$0.016/GB-時間(Proは1000GB-時間分含む)
- ボリュームストレージ:$0.20/GiB-月(Proは5GiB分含む)
- エンタープライズ向け料金 :deploy@deno.comへ問い合わせ
- 詳細:deno.com/sandbox
はじめ方とリソース
- ベータ版リリース と同時にDeno Deploy正式提供開始
- ランディングページ:deno.com/sandbox
- ドキュメント:docs.deno.com/sandbox
- JavaScript SDK:jsr.io/@deno/sandbox または npm
- Python SDK:pypi.org/project/deno-sandbox
- AIエージェントやユーザーによる安全なコード実行基盤 として期待