Claude API 支持两种请求身份验证方式:
| 方法 | 凭据 | 最适用于 |
|---|---|---|
| API 密钥 | 在 x-api-key 标头中传递的长期有效的 sk-ant-api... 密钥 | 本地开发、原型设计、脚本以及您可以控制密钥存储的单租户服务器 |
| 工作负载身份联合 | 由您的身份提供商的身份令牌交换而来的短期有效的 bearer 令牌 | 云平台(AWS、Google Cloud、Azure)上的生产工作负载、CI/CD 流水线以及 Kubernetes,适用于您希望消除静态密钥的场景 |
两种方法都可授予对 Claude API 端点的相同访问权限。如需快速上手,请选择 API 密钥;当您的工作负载已经拥有可以联合的平台颁发的身份时,请迁移到工作负载身份联合。
API 密钥是您在 Claude Console 中生成并在每个请求中传递的静态密钥。
x-api-key 标头,或设置 ANTHROPIC_API_KEY 环境变量,客户端 SDK 会自动读取该变量。POST /v1/messages
x-api-key: YOUR_API_KEY
anthropic-version: 2023-06-01
content-type: application/jsonAPI 密钥没有过期时间。请将其存储在密钥管理器中,定期轮换,并撤销任何您怀疑已泄露的密钥。
client = Anthropic(api_key="my-anthropic-api-key")
# 或者,在环境中设置了 ANTHROPIC_API_KEY 的情况下:
client = Anthropic()"Workload Identity Federation"(工作负载身份联合),即 WIF,允许工作负载使用由您已信任的身份提供商(IdP)颁发的短期身份令牌进行身份验证,例如 AWS IAM、Google Cloud 或任何符合标准的 OIDC 颁发者(如 GitHub Actions、Kubernetes 服务账户、SPIFFE、Microsoft Entra ID 或 Okta)。工作负载在 POST /v1/oauth/token 端点将其 IdP 颁发的 JWT 交换为短期有效的 Claude API 访问令牌,SDK 会在令牌过期前自动刷新。无需生成、分发或轮换任何 sk-ant-api... 字符串。
联合机制从您的环境中移除了长期有效的 Claude API 密钥,从而缩小了凭据泄露的影响范围,并让您能够使用已用于云资源的相同 IdP 控制来管理访问权限。但它本身并不能保证端到端的安全性:信任链的强度取决于您的身份提供商的配置,而上游一跳处的长期密钥(例如,可以生成 IdP 令牌的静态云凭据)仍可能破坏这一机制。请将联合机制与您的提供商的控制措施(如 IP 允许列表、MFA 和审计日志)结合使用。
要配置联合,您需要在 Claude Console 中创建三个资源(一个服务账户、一个联合颁发者和一个联合规则),然后将您的 SDK 指向该规则。有关完整的设置演练,请参阅工作负载身份联合。
配置颁发者、规则和服务账户,然后交换令牌
适用于 AWS、Google Cloud、Azure、GitHub Actions、Kubernetes、SPIFFE 和 Okta 的分步指南
环境变量、验证规则、配置文件配置和错误参考
Python、TypeScript、C#、Go、Java、PHP、Ruby 和 CLI
Was this page helpful?