Claude Code や Claude App を使ってみたいけど、最初から月額20ドルを払うのはちょっとお財布が・・・という場合に、AWS Bedrock を利用することで、完全従量制で利用することができます。
ただし、完全従量制ということは、コストが青天井であるということです。
少額で色々試したいのに、AWSの予算アラートは数時間遅れで飛んでくるので、気づいた時には予算を大幅に超過しているなんてことが起こり得て、限られたお小遣いでの個人開発には結構なリスクです。また、チームで共有してBedrockを使いたいといった場合にも、ユーザごとにクオータを設定して、特定の個人が予算を使い切ってしまうことを防ぎたいニーズはあると思います。
公式ツールはうまく動かせず、無駄にトークンを消費することに・・・
ネットを検索して、最初はAWS公式のGitHubリポジトリで公開されている管理ツールを試そうとしました。
しかし、このツールでは複数ユーザ管理のためには外部のOIDCプロバイダが必要です。今回認証基盤として使いたかった AWS IAM Identity Center は、残念ながら手軽なOIDC連携が難しいようで、利用をあきらめました。
また、手順通りにデプロイを試してもうまくいかず、Bedrock経由のClaudeで色々こねくり回して試行錯誤していたら、気づけば40ドルを超えてしまっていました。
自分でも何をやったのか記憶もないですがこちらに記録は残します。
ただ、こちら、ECS FargateやALB(Application Load Balancer)が必要のようで、これらは常時稼働のリソースとなるため、全く使っていない時間帯でも定常的にそこそこのインフラコストがかかってしまいます。
Claude Apps Gateway、爆誕
そうこうしているうちに、Anthropic公式から、「Claude Apps Gateway」というサービスが発表されました。
AWSやGCP上にゲートウェイを構築して、Claudeのあらゆる機能を使えるようになるみたいです。
ただし、この公式のセルフホスト型ツールも常時稼働のリソースがあり運用コストがかかるため、LambdaとDynamoDBを使って、コスト管理ができるBedrockプロキシを作りました。
それがこちらです。
Claude Code Bedrock Proxy
主な特徴とアーキテクチャ
-
Lambdaベースで稼働: 待機時のオーバーヘッドコストはほとんどかからないはずです。(Lambdaを起動する分、推論の開始に少しだけ時間はかかります)
-
SAML認証: AWS IAM Identity Center と、 OIDC ではなく SAML で連携します。
-
DynamoDBでコスト管理: ユーザーごとの利用額とモデルコストを管理します。専用の管理画面からクォータ(上限)管理設定も可能です。
導入方法
DEPLOY.md を参照してください。(後半に日本語版があります。)
基本的にはAWS Identity Centerを設定した後、Secretなどをセットして、proxy、 token_issuer の2つのディレクトリで sam build 、 sam deploy を何度か実行すればOKです。
使い方 (Claude Code CLI)
使い方は非常にシンプルです。
アプリケーションから、Claude Code Token Issuer を選択します。

すると、認証が成功して、有効期限24時間(ビルド時に設定可能)のトークンが発行されます。

下にスクロールすると、ターミナルに貼り付けるコマンドが用意されているので、コピペですぐに利用開始することができます。
これだけで、CLIClaude CodeからBedrockを利用できます。
北海道テレビ(HTB)のキャラクター、onちゃんの友達、ohちゃんに似てるんですよね・・
なぜか家にあるカレンダーをみて、気づきました。
というのはおいておいて。
使いかた (Claude App(デスクトップ版))
開発者モードをオンにした Claude App(デスクトップ版) でも使うために、アプリ側が要求する「モデル一覧」を返すAPIも実装しています。
ヘルプから開発者モードを有効にした後、開発メニューから「サードパーティ推論を設定」をクリックします。
ゲートウェイ ベースURLに、コンソール同様に /prod で終わるURLを指定して、APIキーにトークンを貼り付けます。
接続テスト、モデルディスカバリーのテストをクリックして、それぞれ正常終了することを確認します。

設定を反映するために再起動すると、動くようになります。
利用金額の確認方法
Token Issuerページをリロードすると、利用金額が表示されます。
これで安心ですね。
Admin設定
AWS Identity Center側でAdminグループに登録したユーザは、Admin Consoleへのアクセス権もあります。
画面上で、各ユーザごとにクオータ設定を変更できます。また、タイムゾーンを設定することで、ローカル時間の深夜12時に日次クオータをリセットできます。
※注意点
仕様上、Identity Centerで追加したユーザーが管理画面に表示されるのは「初回ログインした後」になります。(Token Issuerの処理でユーザテーブルに追加されます。)
ユーザのクオータの初期値はビルド時のパラメータで設定できます。
開発の裏話:AIとのペアプロの限界
今回、当然のようにAI(コーディングアシスタント)と一緒に作ったのですが、実態としては修正するたびに人間の目で見てツッコミを入れる必要がありました。
例えば、
-
「SAMLの署名検証ロジックが面倒くさいから」と、しれっと検証をスキップしたコードを出してくる。
-
新しいパラメータを増やしたのに deploy.md に追加し忘れる。
-
AWSリソースのデプロイの依存関係を全く理解しておらず、デプロイでコケる。
テストハーネスをしっかり書いたり、Skill(ツール連携)などを活用すればもっと賢くなるのかもしれませんが、今の自分のプロンプト力ではこれが限界でした。まだまだ人間のマネジメントが必要ですね。
【小ネタ】Kiroと楽しむ月末駆動開発
この節は別の記事に切り出しました。
40ドルの消費におののいた自分は、AIコーディングアシスタントの「Kiro」も使ってみました。Kiroは、月額20ドルで1000トークンを利用可能ですが、初回利用の料金は1000トークンのまま、日割り計算になるようで、とてもお得です。
なので「月末」数日前に使い始めて、翌月が来る前にキャンセルすると、格安(日割り)なのに1000トークン丸々使えてお得です。Kiroの「月末駆動開発」、いつ仕様変更されるかわかりませんが、おすすめです。
私はAWS Identity Centerを使ってKiroを利用しているので、もしかしたらそれ以外のSubscriptionだと、初回のみ日割りなど、縛りがあるかもしれませんし、今後仕様変更されるかもしれませんので、ご自身の責任でご活用ください。
おわりに
「個人やチームで、手軽かつコスト的にも安全・安心にClaude for Bedrock環境を構築したい」という方は、ぜひ試してみてください。
もしSAML周りなど、セキュリティの懸念点やツッコミどころがあれば、この記事のコメントやGitHubのIssue等で教えていただけると泣いて喜びます。














