メインコンテンツまでスキップ

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

· 約8分
Shinya Kato
DayoneLabs管理人、ソフトウェア開発者、OSS開発者

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の更新について

推論プロファイル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ユーザーには、以下のポリシーをアタッチする必要があります。

bedrock-claude-code-policy.json
{
"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:InvokeModelbedrock:InvokeModelWithResponseStreambedrock:ListInferenceProfiles
AllowMarketplaceSubscriptionAWS Marketplaceのサブスクリプション管理aws-marketplace:ViewSubscriptionsaws-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経由での接続が正常に行われています。

環境変数の永続化

上記の環境変数はターミナルセッション終了時に失われるため、シェルの設定ファイルに記述して永続化することが推奨されます。

~/.zshrc
# 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_BEDROCKAWS_REGION、推論プロファイルID)とIAMポリシーの構成を行うことで、AWSの請求体系とアクセス管理の仕組みを活用しながらClaude Codeを利用できます。


参考リンク:

免責事項:
当記事は管理人の開発時に書き留められたメモをもとにAIを活用して編纂されたものです。 管理人は記事の公開前に内容の校正・校閲を行い、記事の信頼性と正確性の向上に務めますが、それらを保証するものではありません。 また、当記事の編集時の誤字やコード例の不具合等によって読者が何らかの損害等を被った場合でも、管理人は一切の責任を負いません。 当記事に掲載したコンテンツの利用については自己責任でお願い致します。