できること
API キー無しで認証
自社の ID プロバイダが発行する短期間有効な OIDC トークンで、ワークロードを Claude API に認証できます。長期間有効な静的 API キーを置く必要がありません。
信頼ルールを定義
Claude Console で発行元 (issuer)、サービスアカウント、連携ルールを設定し、どの JWT にどの権限のトークンを発行するかを決められます。ルールは subject_prefix、audience、クレームの値、CEL の条件式で照合できます。
トークン更新を自動化
トークンの交換と更新は SDK が自動で行います。アプリケーションのコードは API キー無しでクライアントを作り、通常どおり API を呼び出します。
機能解説
概要
トークンは、AWS IAM、Google Cloud、GitHub Actions、Kubernetes、Microsoft Entra ID、Okta、SPIFFE など、すでに運用している ID プロバイダが発行します。Anthropic は Claude Console で設定した信頼ルールに照らしてトークンを検証し、組織内のサービスアカウントに結び付いた短期間有効なアクセストークンを返します。
ワークロードが連携を始める前に、Claude Console で次の 3 つのリソースを設定しておきます。Connect workload ウィザードを使うと、3 つを 1 つの流れで作成し、接続を端から端まで検証できます。
- サービスアカウント: Anthropic の組織内にある、人ではない名前付きの ID です。メールアドレス、パスワード、Console へのログインを持ちません。発行されたトークンは、対応するワークスペースのレート制限と利用量の帰属に従います。これは API キーと同じ扱いです。
- federation issuer (連携の発行元): OIDC の ID プロバイダを組織に登録するものです。発行元の URL と JWKS の取得元 (
discovery、explicit_url、inline) を設定します。inlineを使うと、プライベートな Kubernetes クラスタのように公開インターネットから到達できない発行元の鍵セットをアップロードできます。 - federation rule (連携ルール): 発行元とサービスアカウントを結び付け、JWT のクレームが条件に合うときに、指定したスコープのトークンを発行します。照合条件は組み合わせて使え、設定したすべての条件を満たす必要があります。発行されるトークンの OAuth スコープの既定値は
workspace:developerで、ワークスペースの API キーと同じアクセス権を持ちます。
トークン交換のリクエストでは、クライアントがどのルールを使うかを指定します。ルールを暗黙に探す動作はありません。
トークンの有効期間と更新
発行される Anthropic のトークンの有効期間は、ルールの token_lifetime_seconds (既定値 3,600 秒) と、提示した ID プロバイダの JWT の残り有効期間の 2 倍のうち、短いほうです。60 秒を下回ることはありません。
SDK はすべてのリクエストにトークンを付けて送り、有効期限が切れる前に交換をやり直します。交換のたびに ANTHROPIC_IDENTITY_TOKEN_FILE を読み直すため、ローテーションされたトークンも自動で取り込みます。
既定では、jti クレームを持つ ID トークンは 1 回限りの使用です。同じ JWT をもう一度提示すると、jti_reused という理由で失敗します。
本番環境の構成と API キーからの移行
本番環境では、SDK のクライアントを引数無しで作成し、環境ごとに次の環境変数を注入します。同じコンテナイメージをすべての環境に配布できます。
ANTHROPIC_FEDERATION_RULE_IDANTHROPIC_ORGANIZATION_IDANTHROPIC_SERVICE_ACCOUNT_IDANTHROPIC_WORKSPACE_IDANTHROPIC_IDENTITY_TOKEN_FILE
認証情報の優先順位では ANTHROPIC_API_KEY が連携より上にあります。環境に古いキーが残っていると、連携が警告無しに上書きされます。既存の API キーから移行するときは、次の順で進めます。
- 既存の
ANTHROPIC_API_KEYを残したまま連携を設定し、連携ルールがワークロードのトークンに合うことを確かめます。 - ワークロードの中で
ant auth statusを実行し (または SDK のデバッグログを確認し)、どの認証情報が使われているかを確認します。 - CI のシークレット、コンテナの環境変数、シェルのプロファイルから
ANTHROPIC_API_KEYを外し、もう一度ant auth statusを実行して連携が使われていることを確認します。 - ワークロードが連携のトークンで動き始めたら、Claude Console の API keys (API キー) のページでキーを削除します。
導入時に確認したい点
Workload Identity Federation は、それだけで完結するセキュリティ対策ではありません。連携による認証の強さは、JWT に署名する上流の ID プロバイダの強さに依存します。ID プロバイダ側の管理と、連携ルールの照合条件をあわせて確認する必要があります。
対象プランは、公式のリリースノートには記載がありません。
使い方
連携の設定は Claude Console で行います。
- Claude Console で Workload identity (ワークロード ID) のページを開き、Connect workload (ワークロードを接続) を選びます。
- 利用している ID プロバイダのタイル (GitHub Actions、AWS、Google Cloud、Microsoft Entra ID、Kubernetes) を選びます。それ以外の標準準拠のプロバイダでは Custom OIDC (カスタム OIDC) を選びます。
- プロバイダごとの入力欄に、発行元の設定、受け取る JWT の照合条件、作成するサービスアカウントと連携ルールの名前を入力します。
- 必要に応じて Verify issuer (発行元を検証) を選び、リソースを作成する前に発行元の設定を試験的に実行して、Anthropic が JWKS を取得・解析できることを確認します。
- ウィザードが発行元、サービスアカウント、連携ルールを作成し、15 分間トークン交換の成功を待ち受けます。この時間内にワークロードからトークン交換を実行し、設定が動くことを確認します。
利用シーン
GitHub Actions のワークフローから Claude API を呼び出す場面に使えます。CI のシークレットに長期間有効な API キーを置かずに認証できます。
プライベートな Kubernetes クラスタで動くワークロードの認証に向いています。公開インターネットから到達できない発行元でも、鍵セットをアップロードして登録できます。
同じコンテナイメージを開発・検証・本番などの複数環境に配布する場面に向いています。環境ごとの違いは環境変数の注入で切り替えます。
運用中の API キーを段階的に置き換える場面に使えます。キーを残したまま連携を設定し、ant auth status で確認してからキーを削除できます。
ChatGPT・OpenAI の対応する機能
比較の単位となる業務: 静的 API キーを使わない短期トークンによるワークロードの API 認証
OpenAI API のワークロード ID 連携も、外部で発行された ID トークンを短期間有効なアクセストークンと交換する仕組みで、長期間有効な API キーを保存せずに認証する点は Workload Identity Federation と共通です。
Workload Identity Federation は AWS IAM、Google Cloud、GitHub Actions などの ID プロバイダが発行する OIDC トークンを使い、発行元と連携ルールを Claude Console で設定します。OpenAI API では、2026 年 8 月 29 日に相互 TLS (mTLS) と X.509 によるワークロード ID 連携が一般提供になりました。証明書と X.509 の ID プロバイダは Platform コンソールで設定し、そのアクセスは組織のロールと権限で制御されます。
これまでの変更
Workload Identity Federation の提供が始まりました。自社の ID プロバイダが発行する短期間有効な OIDC トークンで Claude API に認証でき、発行元と連携ルールは Claude Console で設定し、トークンの交換と更新は SDK が自動で行います。
その後、Claude Code で、workload identity federation 用の環境変数 ANTHROPIC_WORKSPACE_ID が追加されました。連携ルールが複数のワークスペースを対象とする場合に、発行するトークンを特定のワークスペースに限定できます。