Claude CodeでAmazon Bedrockを使用する - 環境変数の設定からIAMポリシーの構成まで

どうも、Shinyaです。この記事では、Anthropicが開発したAIコーディングアシスタント「Claude Code」をAmazon Bedrockと連携して使用するためのセットアップ手順について解説します。
- Claude Codeの導入を検討している人
- Claude CodeをAmazon Bedrock経由で使用したい人
- AWSの請求体系でAIツールのコストを一元管理したい人
- IAMによるアクセス権管理を活用したい人
この記事では、AWS CLIがインストール・設定済みであることを前提としています。まだ設定していない場合は、以下の記事を参照してください。
Claude Codeとは
Claude Codeは、Anthropicが開発したCLIベースのAIコーディングアシスタントです。ターミナル上で動作し、コードの生成・編集・デバッグ・リファクタリングなど、幅広いソフトウェア開発タスクを支援します。
Claude Codeは公式の定額制サブスクリプションでも利用可能ですが、Amazon Bedrockと連携することで従量課金制での利用が可能になります。
Amazon Bedrockを使用するメリット
Claude CodeをAmazon Bedrock経由で使用することには、以下のような利点があります。
- 従量課金制: トークン単位の課金でコストを細かく管理できる
- AWS請求の一本化: AWSの既存の請求体系にClaude Codeの利用料金を統合できる
- APIキー管理が不要: Anthropic APIキーの発行・管理が不要になる
- IAMによるアクセス管理: AWSのIAMポリシーで利用権限を制御できる
- エンタープライズ機能との連携: Amazon CloudWatchでのログ管理・分析など、AWSの各種サービスと組み合わせた運用が可能
- オンデマンド課金: Amazon Bedrockはリクエストごとに料金が発生するため、使用量に応じたコスト管理が必要
- モデルごとの料金差: 使用するモデルによって料金が大きく異なり、上位モデルは高価になる場合がある
- 料金の事前確認: 利用開始前にAmazon Bedrockの料金ページで最新の料金体系を確認することが推奨される
Claude Codeのインストール
ターミナルで次のコマンドを実行してClaude Codeをインストールします。
npm install -g @anthropic-ai/claude-code
インストールが完了したら、次のコマンドでバージョン情報を確認します。
claude --version
バージョン情報が出力されれば、インストールは正常に完了しています。
2.1.63 (Claude Code)
環境変数の設定
Claude CodeでAmazon Bedrockを使用するには、いくつかの環境変数を設定する必要があります。
Amazon Bedrockの有効化
Claude CodeからAmazon Bedrockを使用する設定を有効化します。
export CLAUDE_CODE_USE_BEDROCK=1
AWSリージョンの設定
Amazon Bedrockを使用するAWSリージョンを設定します。
export AWS_REGION=ap-northeast-1
推論プロファイルIDの設定
Claude Codeで使用するモデルの推論プロファイルIDを設定します。推論プロファイルは、Amazon Bedrockで利用可能なモデルを識別するためのIDです。
ANTHROPIC_MODELにはメインで使用するモデル、ANTHROPIC_SMALL_FAST_MODELには軽量・高速なモデルを指定します。
export ANTHROPIC_MODEL='jp.anthropic.claude-sonnet-4-5-20250929-v1:0'
export ANTHROPIC_SMALL_FAST_MODEL='jp.anthropic.claude-haiku-4-5-20251001-v1:0'
利用可能な推論プロファイルの一覧は、Amazon Bedrockでサポートされている推論プロファイルから確認できます。グローバル推論プロファイル(global.プレフィックス)はリージョンに依存せず使用でき、リージョン別推論プロファイル(jp.などのプレフィックス)は特定のリージョンに紐づいています。
推論プロファイルIDはClaude Codeのアップデートでは自動更新されません。Anthropicから新しいモデルがリリースされた場合は、環境変数を手動で更新する必要があります。
AWSプロファイルの指定(任意)
AWS CLIのデフォルトプロファイル以外を使用する場合は、AWS_PROFILE環境変数で対象のプロファイルを指定します。
export AWS_PROFILE=bedrock-user
AWS CLIのプロファイル設定については、AWS CLIでIAMユーザーのプロファイルを設定するで詳しく解説しています。
IAMポリシーの設定
Claude CodeからAmazon Bedrockに接続するIAMユーザーには、以下のポリシーをアタッチする必要があります。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowModelAndInferenceProfileAccess",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream",
"bedrock:ListInferenceProfiles"
],
"Resource": [
"arn:aws:bedrock:*:*:inference-profile/*",
"arn:aws:bedrock:*:*:application-inference-profile/*",
"arn:aws:bedrock:*:*:foundation-model/*"
]
},
{
"Sid": "AllowMarketplaceSubscription",
"Effect": "Allow",
"Action": [
"aws-marketplace:ViewSubscriptions",
"aws-marketplace:Subscribe"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:CalledViaLast": "bedrock.amazonaws.com"
}
}
}
]
}
このポリシーには2つのステートメントが含まれています。
| ステートメント | 目的 | 許可されるアクション |
|---|---|---|
| AllowModelAndInferenceProfileAccess | モデルの呼び出しと推論プロファイルの取得 | bedrock:InvokeModel、bedrock:InvokeModelWithResponseStream、bedrock:ListInferenceProfiles |
| AllowMarketplaceSubscription | AWS Marketplaceのサブスクリプション管理 | aws-marketplace:ViewSubscriptions、aws-marketplace:Subscribe |
AllowMarketplaceSubscriptionにはConditionが設定されており、Amazon Bedrock経由での呼び出し時のみ有効になります。
IAMポリシーをアタッチしたIAMユーザーのプロファイルをAWS CLIで設定することで、Claude CodeはAWS認証情報を参照してAmazon Bedrockのモデルを呼び出します。
Claude Codeの起動
環境変数の設定とIAMポリシーの構成が完了したら、Claude Codeを起動します。任意のプロジェクトディレクトリで次のコマンドを実行します。
claude
初回起動時はカレントディレクトリへのアクセス許可を求められます。
────────────────────────────────────────────────────────────────────────────────
Accessing workspace:
/xxx/yyy
Quick safety check: Is this a project you created or one you trust? (Like your
own code, a well-known open source project, or work from your team). If not,
take a moment to review what's in this folder first.
Claude Code'll be able to read, edit, and execute files here.
Security guide
❯ 1. Yes, I trust this folder
2. No, exit
信頼できるディレクトリであれば「1. Yes, I trust this folder」を選択します。
許可すると、以下のようにClaude Codeが起動し、設定した推論プロファイルが反映されていることを確認できます。
▐▛███▜▌ Claude Code v2.1.63
▝▜█████▛▘ global.anthropic.claude-opus-4-6-v1 · API Usage Billing
▘▘ ▝▝ ~/xxx/yyy/zzz
Welcome to Opus 4.6
2行目に表示されているモデル名が環境変数で設定した推論プロファイルIDと一致し、「API Usage Billing」と表示されていれば、Amazon Bedrock経由での接続が正常に行われています。
環境変数の永続化
上記の環境変数はターミナルセッション終了時に失われるため、シェルの設定ファイルに記述して永続化することが推奨されます。
# Claude Code - Amazon Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=ap-northeast-1
export ANTHROPIC_MODEL='jp.anthropic.claude-sonnet-4-5-20250929-v1:0'
export ANTHROPIC_SMALL_FAST_MODEL='jp.anthropic.claude-haiku-4-5-20251001-v1:0'
# export AWS_PROFILE=bedrock-user # 必要に応じて有効化
設定ファイルを編集した後、次のコマンドで変更を反映します。
source ~/.zshrc
まとめ
この記事では、Claude CodeをAmazon Bedrock経由で使用するためのセットアップ手順を解説しました。環境変数の設定(CLAUDE_CODE_USE_BEDROCK、AWS_REGION、推論プロファイルID)とIAMポリシーの構成を行うことで、AWSの請求体系とアクセス管理の仕組みを活用しながらClaude Codeを利用できます。
参考リンク:



