Skip to content

Claude Code on Microsoft Foundry

在 Azure 环境中通过 Microsoft Foundry 使用 Claude Code,获得完整的 RBAC 权限控制和 Azure 原生集成。

前提条件

  • 有访问 Microsoft Foundry 权限的 Azure 订阅
  • 创建 Microsoft Foundry 资源和部署的 RBAC 权限
  • 已安装并配置 Azure CLI(可选)

如果向多个用户部署,请固定模型版本

设置步骤

1. 创建 Microsoft Foundry 资源

  1. 导航到 Microsoft Foundry 门户
  2. 创建新资源,记录你的资源名称
  3. 为 Claude 模型创建部署:
    • Claude Opus
    • Claude Sonnet
    • Claude Haiku

2. 配置 Azure 凭据

选项 A:API Key 认证

  1. 在 Microsoft Foundry 门户中导航到你的资源
  2. 进入 Endpoints and keys 部分
  3. 复制 API Key
  4. 设置环境变量:
bash
export ANTHROPIC_FOUNDRY_API_KEY=your-azure-api-key

选项 B:Microsoft Entra ID 认证

未设置 ANTHROPIC_FOUNDRY_API_KEY 时,Claude Code 自动使用 Azure SDK 默认凭据链

本地环境通常使用 Azure CLI:

bash
az login

使用 Microsoft Foundry 时,/login/logout 命令被禁用,认证通过 Azure 凭据处理。

3. 配置 Claude Code

bash
# 启用 Microsoft Foundry 集成
export CLAUDE_CODE_USE_FOUNDRY=1

# Azure 资源名称(用你的资源名替换 {resource})
export ANTHROPIC_FOUNDRY_RESOURCE={resource}

# 或者提供完整的基础 URL:
# export ANTHROPIC_FOUNDRY_BASE_URL=https://{resource}.services.ai.azure.com/anthropic

4. 固定模型版本

重要

为每次部署固定特定模型版本。创建 Azure 部署时,选择特定模型版本而不是"自动更新到最新版"。

设置模型变量与步骤 1 中创建的部署名称匹配:

bash
export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-6'
export ANTHROPIC_DEFAULT_SONNET_MODEL='claude-sonnet-4-6'
export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5'

Azure RBAC 配置

Azure AI UserCognitive Services User 默认角色包含调用 Claude 模型所需的所有权限。

对于更严格的权限,创建包含以下内容的自定义角色:

json
{
  "permissions": [
    {
      "dataActions": [
        "Microsoft.CognitiveServices/accounts/providers/*"
      ]
    }
  ]
}

故障排除

"Failed to get token from azureADTokenProvider: ChainedTokenCredential authentication failed" 错误

  • 在环境中配置 Entra ID,或设置 ANTHROPIC_FOUNDRY_API_KEY

相关资源