Azure AI FoundryでClaude Codeを使いたい管理者・開発者がまず押さえるべき結論は、Claude Codeを単体のAnthropic環境ではなく、Microsoft Foundry上のClaudeモデルデプロイに接続して使う構成が公式に整理されたという点です。既存アプリが自動的に壊れるような変更ではありませんが、認証、RBAC、モデルデプロイ名、リージョン、CI/CDのシークレット管理を確認せずに導入すると、接続エラーや権限不足、想定外のコストにつながります。
特に重要なのは、CLAUDE_CODE_USE_FOUNDRY=1を設定してClaude CodeをMicrosoft Foundry向けに切り替えること、Claude Sonnet/Haiku/Opusのデプロイ名を環境変数で明示すること、認証は原則としてMicrosoft Entra IDを優先することです。Microsoftの公式ドキュメントでは、Claude CodeをCLI、VS Code拡張機能、GitHub ActionsからMicrosoft Foundry経由で利用する手順が示されています。(Microsoft Learn)
Azure AI Foundryの「Configure Claude Code for Microsoft Foundry」とは
「Configure Claude Code for Microsoft Foundry」は、AnthropicのClaude CodeをMicrosoft FoundryのClaudeモデルデプロイに接続するための公式設定ガイドです。Claude Codeは、コードベースを読み取り、ファイル編集、コマンド実行、開発ツール連携を行うエージェント型のコーディングツールです。Microsoft Foundryに接続することで、Azure側の認証、RBAC、ネットワーク、利用状況管理の枠組みに載せて利用できます。(Microsoft Learn)
なお、Microsoftの現行ドキュメントでは「Azure AI Foundry」から「Microsoft Foundry」への表記変更が進んでいます。公式説明では、以前の「Azure AI Studio / Azure AI Foundry」に相当するブランドが現在は「Microsoft Foundry」と整理されています。社内資料や既存手順ではAzure AI Foundry表記が残っている場合があるため、ドキュメント名だけで別サービスと判断しないよう注意してください。(Microsoft Learn)
今回のポイントは「Claude CodeをAzure管理下で使うための設定標準化」
この情報の実務上の意味は、Claude Codeを開発者個人のローカルツールとしてだけでなく、企業のAzure環境に接続して使う前提が明確になったことです。具体的には、モデルのデプロイ、認証方式、権限、VS Code、GitHub Actions、監視、クォータ確認までを一連の導入手順として扱います。
| 確認項目 | 内容 | 影響を受ける人 |
|---|---|---|
| Foundry連携の有効化 | CLAUDE_CODE_USE_FOUNDRY=1を設定する | 開発者、DevOps |
| モデルデプロイ | Sonnet、Haiku、Opusなどを用途別にデプロイする | 管理者、AI基盤担当 |
| 認証方式 | Microsoft Entra IDまたはAPIキーを使う | 管理者、開発者 |
| RBAC | Foundry Userなどのロールを割り当てる | 管理者、セキュリティ担当 |
| CI/CD利用 | GitHub Actionsでシークレットと権限を管理する | DevOps、開発リーダー |
| 監視とコスト | トークン消費、レイテンシ、エラー率、クォータを確認する | 管理者、FinOps担当 |
対象者は管理者・開発者・DevOps担当
この設定ガイドの対象は、単にClaude Codeを試したい個人開発者だけではありません。むしろ企業利用では、次の担当者がそれぞれ確認すべき項目を持ちます。
Azure管理者が見るべきポイント
Azure管理者は、サブスクリプション、リージョン、Marketplaceアクセス、RBAC、課金管理を確認します。ClaudeモデルをMicrosoft Foundryで使うには、有効な支払い方法を持つAzureサブスクリプション、Microsoft Foundryへのアクセス、対応リージョンのFoundryプロジェクト、リソースグループ上のContributorまたはOwner権限などが前提になります。公式ドキュメントでは、Claudeモデルの対応リージョンとしてEast US 2とSweden Centralが示されています。(Microsoft Learn)
特に注意したいのは、すべてのAzureサブスクリプションで使えるわけではない点です。Cloud Solution Providerサブスクリプション、従量課金が有効でない無料試用・学生・スタートアップクレジット系アカウント、一部のSponsoredサブスクリプションなどは対象外として示されています。(Microsoft Learn)
開発者が見るべきポイント
開発者は、CLIのインストール方法、環境変数、モデル名、/statusでの接続確認、CLAUDE.mdによるプロジェクト文脈の整備を確認します。Claude CodeはデフォルトでSonnetを一般的なコーディング用途に使うため、実際のFoundry上のデプロイ名と環境変数の値が一致していないと「モデルが見つからない」系のエラーが起きやすくなります。(Microsoft Learn)
DevOps担当が見るべきポイント
DevOps担当は、GitHub ActionsでClaude Codeを動かす場合のシークレット管理、ワークフロー権限、実行対象ファイル、ブランチ保護を確認します。公式例では、ANTHROPIC_FOUNDRY_RESOURCEとANTHROPIC_FOUNDRY_API_KEYをGitHub Secretsから渡し、Pull Request上でテスト生成やレビュー支援を行う構成が示されています。(Microsoft Learn)
導入前に確認すべき前提条件
Claude Code for Microsoft Foundryを設定する前に、次の条件を満たしているか確認します。
| 項目 | 確認内容 | 失敗しやすいポイント |
|---|---|---|
| Azureサブスクリプション | 有効な支払い方法があるか | 無料試用やクレジットのみの環境で利用できない場合がある |
| リージョン | Claudeモデル対応リージョンでプロジェクトを作成しているか | 未対応リージョンでモデルを探しても表示されない |
| Marketplace | パートナーモデルをデプロイできる権限があるか | 組織ポリシーでMarketplace購入が制限されている |
| RBAC | Contributor、Owner、Foundry Userなど適切な権限があるか | モデルの呼び出しはできてもデプロイ作成ができない |
| ローカル環境 | macOS、Linux、Windows Git Bash/WSLなどを準備しているか | WindowsでPowerShell、Git Bash、WSLの環境変数が混在する |
| Azure CLI | Entra ID認証を使う場合、az login済みか | 別テナントにログインしてトークンエラーになる |
Windows環境では、Git BashまたはWSL2の利用が推奨されています。PowerShellで設定した環境変数と、WSL内の環境変数は別物として扱われるため、VS Codeやターミナルの起動元にも注意が必要です。(Microsoft Learn)
設定手順の全体像
Claude CodeをMicrosoft Foundryで使う手順は、大きく分けて次の流れです。
| 手順 | 作業内容 | 確認コマンド・確認場所 |
|---|---|---|
| モデルをデプロイ | FoundryポータルでClaudeモデルをデプロイ | デプロイのDetailsタブ |
| Claude Code CLIを入れる | ネイティブインストーラーまたはHomebrewで導入 | claude --version |
| Foundry連携を有効化 | 環境変数を設定 | CLAUDE_CODE_USE_FOUNDRY=1 |
| 認証する | Entra IDまたはAPIキーを設定 | az login、APIキー環境変数 |
| 動作確認する | Claude Codeを起動し/statusを確認 | API provider: Microsoft Foundry |
| プロジェクト文脈を追加 | CLAUDE.mdを作成 | リポジトリ直下など |
Claudeモデルをデプロイする
Claude Codeでは、用途に応じて複数のClaudeモデルを使い分けます。公式ドキュメントでは、一般的なコーディング用途のPrimary modelとしてclaude-sonnet-4-6、軽量な操作向けのFast modelとしてclaude-haiku-4-5、複雑な推論向けのExtended thinkingとしてclaude-opus-4-6が示されています。Claudeモデルはプレビュー扱いであり、利用可能なモデルは変わる可能性があります。(Microsoft Learn)
実務では、最初からすべてのモデルを本番チームに開放するのではなく、まずSonnetを標準モデルとして小規模に試し、Haikuを軽量作業向け、Opusをレビューや設計相談など高負荷タスク向けに分けると管理しやすくなります。
Claude Code CLIをインストールする
公式ドキュメントでは、npmによるインストール方法は非推奨になっており、ネイティブインストーラーまたはHomebrewの利用が案内されています。すでにnpmで導入している場合は、claude installによる移行が案内されています。(Microsoft Learn)
Bash/WSLでは、次のようにインストール後にバージョン確認を行います。
curl -fsSL https://claude.ai/install.sh | bash
claude --version
PowerShellでは、次の形式です。
irm https://claude.ai/install.ps1 | iex
claude --version
claude --versionが見つからない場合は、PATHにインストール先が含まれていない可能性があります。チーム展開する場合は、開発者ごとに手作業で直すのではなく、セットアップ手順書や開発コンテナ、端末管理ツールで統一するとトラブルを減らせます。
Foundry接続に必要な環境変数
Claude CodeをMicrosoft Foundryに接続する中心設定は環境変数です。最低限必要なのは、Foundry連携を有効化するCLAUDE_CODE_USE_FOUNDRYと、接続先を示すANTHROPIC_FOUNDRY_RESOURCEまたはANTHROPIC_FOUNDRY_BASE_URLです。公式ドキュメントでは、リソース名を使う場合、Claude Codeがhttps://<resource-name>.services.ai.azure.com/anthropicの形式でエンドポイントを構成すると説明されています。 (Microsoft Learn)
Bash/WSLの例です。
export CLAUDE_CODE_USE_FOUNDRY=1
export ANTHROPIC_FOUNDRY_RESOURCE=<your-resource-name>
export ANTHROPIC_DEFAULT_SONNET_MODEL="claude-sonnet-4-6"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="claude-haiku-4-5"
export ANTHROPIC_DEFAULT_OPUS_MODEL="claude-opus-4-6"
PowerShellの例です。
$env:CLAUDE_CODE_USE_FOUNDRY = "1"
$env:ANTHROPIC_FOUNDRY_RESOURCE = "<your-resource-name>"
$env:ANTHROPIC_DEFAULT_SONNET_MODEL = "claude-sonnet-4-6"
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL = "claude-haiku-4-5"
$env:ANTHROPIC_DEFAULT_OPUS_MODEL = "claude-opus-4-6"
本番展開では、ここで指定する値を「モデルID」ではなく「デプロイ名」として管理するのが重要です。たとえば、Foundry上でデプロイ名をteam-a-sonnetのように変更している場合、環境変数にもそのデプロイ名を指定する必要があります。モデル名とデプロイ名を混同すると、設定は正しく見えても実行時にモデル未検出エラーになります。
認証はMicrosoft Entra IDを優先する
Claude Code for Microsoft Foundryでは、Microsoft Entra IDとAPIキーの2種類の認証方式が示されています。企業利用では、ユーザー、グループ、条件付きアクセス、監査、権限剥奪を一元管理しやすいMicrosoft Entra IDを優先するのが基本です。公式ドキュメントでも、Entra IDは企業環境、チームアクセス、CI/CDで秘密情報を管理したくない場合に適していると説明されています。(Microsoft Learn)
Entra IDを使う場合は、事前にAzure CLIでログインします。
az login
az account show
Foundryリソースが既定テナントと異なる場合は、テナントIDを明示します。
az login --tenant <tenant-id>
APIキー認証は、短期検証やAzure CLIを使えない環境では便利です。ただし、キーの漏えい、ローテーション、退職者対応、GitHubへの誤コミットなどのリスクがあります。CI/CDで使う場合は、必ずGitHub Secretsや組織のシークレット管理基盤に保存し、ワークフローログに出力しないようにしてください。
| 認証方式 | 向いている用途 | 注意点 |
|---|---|---|
| Microsoft Entra ID | 社内標準利用、チーム開発、監査が必要な環境 | Azure CLIのログイン先テナントとサブスクリプションを確認する |
| APIキー | 短期検証、CLIが使えない環境、限定的なCI/CD | キーの保管、ローテーション、権限範囲を厳格に管理する |
RBACではFoundry Userとロール名変更に注意
Claude Codeでモデルを呼び出すメンバーには、Foundry上のClaudeモデルにアクセスできる権限が必要です。公式ドキュメントでは、Foundry Userがモデル呼び出しとデプロイ閲覧に使えるロールとして示され、Cognitive Services UserはレガシーのAzure AI Servicesロールとして説明されています。(Microsoft Learn)
また、Foundry RBACロールは最近名称変更されており、Foundry User、Foundry Owner、Foundry Account Owner、Foundry Project Managerは、以前のAzure AI User、Azure AI Owner、Azure AI Account Owner、Azure AI Project Managerに対応します。ロールIDと中核権限は変わらない一方、画面やドキュメントによって旧称が残る場合があります。(Microsoft Learn)
社内手順では、次のように役割を分けると運用しやすくなります。
| ペルソナ | 推奨される考え方 | 避けたい設定 |
|---|---|---|
| 一般開発者 | モデル呼び出しに必要な最小限のロールを付与 | 全員にOwnerやContributorを付ける |
| AI基盤担当 | モデルデプロイ、クォータ、監視を管理 | 個人アカウントだけで本番設定を持つ |
| DevOps担当 | CI/CD用のシークレットとワークフロー権限を管理 | APIキーを平文でワークフローに書く |
| セキュリティ担当 | Entra ID、条件付きアクセス、ログ監査を確認 | 認証方式を開発者任せにする |
VS Code拡張機能で使う場合の注意点
Claude CodeはVS Code拡張機能からも利用できます。公式手順では、VS Codeの設定から「Claude Code: Environment Variables」を編集し、CLAUDE_CODE_USE_FOUNDRY、ANTHROPIC_FOUNDRY_RESOURCE、必要に応じてANTHROPIC_FOUNDRY_API_KEYを設定します。(Microsoft Learn)
VS Code利用でよくある失敗は、ターミナルでは環境変数が設定されているのに、VS Code側には渡っていないケースです。特にWindowsとWSLを併用している場合、Windowsホスト側とWSL側のどちらで拡張機能が動いているかを確認してください。接続できない場合は、環境変数を設定したターミナルからcode .でVS Codeを起動すると切り分けしやすくなります。
GitHub Actionsで使う場合は「できること」を絞る
Claude CodeをGitHub Actionsに組み込むと、Pull Requestのテスト生成、コードレビュー補助、変更ファイルの要約などを自動化できます。ただし、Claude Codeはファイル編集やコマンド実行が可能なエージェント型ツールです。便利な反面、ワークフロー権限を広くしすぎると、意図しないファイル変更や過剰な書き込み権限につながります。
公式ドキュメントでは、anthropics/claude-code-action@v1を使い、環境変数としてCLAUDE_CODE_USE_FOUNDRY、ANTHROPIC_FOUNDRY_RESOURCE、ANTHROPIC_FOUNDRY_API_KEYを渡す例が示されています。(Microsoft Learn)
実務では次の設定を推奨します。
| 設定 | 推奨 |
|---|---|
| 実行対象 | src/**やtests/**など必要なパスに限定する |
| 権限 | contents: readから始め、必要な場合だけwriteを付与する |
| シークレット | リポジトリではなく組織または環境単位で管理する |
| 自動編集 | 本番ブランチへの直接反映は避け、Pull Request経由にする |
| ログ | APIキーやプロンプト内の機密情報が出ないようにする |
CLAUDE.mdでプロジェクト文脈を明文化する
Claude Codeをチームで使うなら、CLAUDE.mdを用意すると品質が安定します。公式ドキュメントでは、グローバル設定、リポジトリルート、現在ディレクトリのCLAUDE.mdを読み込み、後から読み込まれるファイルが前の設定を上書きする仕組みが説明されています。(Microsoft Learn)
CLAUDE.mdには、抽象的な「良いコードを書いてください」ではなく、次のような実務情報を書きます。
## Project Overview
このプロジェクトは社内FAQ検索用のRAGアプリケーションです。
## Tech Stack
- Python 3.11
- FastAPI
- Azure Functions
- Microsoft Foundry
- pytest
## Rules
- 本番データをログに出力しない
- APIキーや接続文字列をコードに直書きしない
- テストはpytestで追加する
- 既存の命名規則に合わせる
## Commands
- テスト実行: pytest tests/ -v
- 型チェック: pyright
このファイルを整備しておくと、Claude Codeが毎回同じ前提を理解しやすくなり、レビュー観点や禁止事項も共有できます。導入初期は、開発標準、テスト方針、セキュリティ禁止事項の3つだけでも書いておくと効果があります。
監視・クォータ・コストで確認すべきこと
Claude Codeは対話的な開発支援だけでなく、CI/CDでも使えるため、気づかないうちにトークン消費が増える可能性があります。公式ドキュメントでは、FoundryポータルのOperateからトークン消費、リクエストレイテンシ、エラー率、レート制限ヒットを確認する手順が示されています。(Microsoft Learn)
また、Claudeモデルのデプロイを削除すればデプロイスロットやクォータを解放できます。公式ドキュメントでは、ClaudeモデルはGlobal Standardの従量課金であり、アイドル状態のデプロイ自体には課金されない一方、各デプロイはリソースごとのデプロイ上限にカウントされると説明されています。(Microsoft Learn)
クォータ面では、Foundry Modelsの既定の上限やレート制限も確認が必要です。Microsoftのクォータ情報では、リソースごとの最大デプロイ数が32と示されています。複数チームが同じFoundryリソースを共有する場合、検証用デプロイを放置すると本番デプロイの枠を圧迫します。(Microsoft Learn)
データ・プライバシー面で見落としやすい点
Microsoft Foundry経由でClaudeを使う場合でも、データ処理の責任分界は確認が必要です。Microsoftのデータ・プライバシー説明では、FoundryでClaudeを利用する際、Anthropicの利用規約が適用され、Anthropicがプロンプトと出力のデータ処理者になると説明されています。また、MicrosoftはAPIデプロイ基盤やエンドポイントを提供・管理し、請求や利用情報を収集する場合があります。(Microsoft Learn)
さらに、Claude APIのプロンプトと出力は、運用上の目的で利用リージョン外で処理される可能性があると説明されています。個人情報、顧客データ、ソースコード、営業秘密を扱う場合は、導入前に社内のデータ分類、DPA、リージョン要件、委託先管理の確認を行ってください。(Microsoft Learn)
よくあるエラーと対処法
設定時のトラブルは、多くの場合「認証」「テナント」「モデルデプロイ名」「リージョン」「環境変数」のどれかに原因があります。
| 症状 | 主な原因 | 確認すること |
|---|---|---|
| HTTP 401/403 | ログイン不足、権限不足、APIキー不正 | az login、RBAC、APIキーを確認 |
Failed to get token | Azure CLIの認証情報が使えない | az account show、テナントIDを確認 |
Token tenant does not match resource tenant | 別テナントにログインしている | az login --tenant <tenant-id>で再ログイン |
| モデルが見つからない | 環境変数のモデル名とデプロイ名が不一致 | Foundryのデプロイ名を確認 |
| Claude CodeがAnthropicログインを求める | Foundry連携が有効になっていない | CLAUDE_CODE_USE_FOUNDRY=1を確認 |
| VS Code拡張機能が接続しない | VS Code側に環境変数が渡っていない | 設定JSON、起動元ターミナル、WSL側設定を確認 |
| HTTP 429 | レート制限やクォータ超過 | FoundryポータルのOperate > Quotasを確認 |
公式ドキュメントでも、これらに近いトラブルシューティング項目が示されています。特に「Claude Code prompts for Anthropic login」は、Foundry連携用の環境変数が設定されていない典型例です。(Microsoft Learn)
移行・展開時の実務チェックリスト
導入を急ぐ場合でも、いきなり全社展開するのではなく、次の順序で確認すると失敗しにくくなります。
| フェーズ | 実施内容 | 完了条件 |
|---|---|---|
| 検証 | 1つのFoundryプロジェクトでClaude Sonnetをデプロイ | claude起動後に/statusでMicrosoft Foundryが表示される |
| 権限整理 | 開発者にFoundry User相当の権限を付与 | OwnerやContributorを不用意に配らない |
| セキュリティ確認 | Entra ID、APIキー管理、データ分類を確認 | 機密データ投入ルールが明文化されている |
| 開発標準化 | CLAUDE.md、モデル名、セットアップ手順を整備 | 新規メンバーが同じ手順で接続できる |
| CI/CD試行 | GitHub Actionsを限定パス・限定権限で実行 | PR上で意図した範囲だけ動作する |
| 運用開始 | 監視、クォータ、コスト確認を定例化 | トークン消費とエラー率を追跡できる |
管理者と開発者が次に取るべき行動
まず管理者は、Claudeモデルを使えるサブスクリプションか、対応リージョンにFoundryプロジェクトがあるか、MarketplaceとRBACが許可されているかを確認してください。次に、開発者はClaude Code CLIをネイティブインストーラーで導入し、CLAUDE_CODE_USE_FOUNDRY=1、ANTHROPIC_FOUNDRY_RESOURCE、モデルデプロイ名を設定して、/statusで接続先がMicrosoft Foundryになっていることを確認します。
チーム展開では、Entra IDを基本認証方式にし、APIキーは短期検証やCI/CDなど必要な場面に限定するのが安全です。あわせてCLAUDE.mdをリポジトリに追加し、禁止事項、テスト方針、使ってよいコマンドを明文化しておくと、Claude Codeを単なる便利ツールではなく、管理された開発支援基盤として運用しやすくなります。

コメント