メインコンテンツにスキップ

Claude Code のコンソールからエンタープライズへの移行

Claude Console (API) → Claude Enterprise

概要

このガイドは、コンソールベースの Claude Code アクセスから Claude Enterprise への移行を検討しているチーム向けに作成されています。個別ユーザーは CLI セッションのセッション履歴を移行する必要がないことに注意してください。これらはローカルに保存されているためです。各ユーザーの Claude Enterprise アカウントをプロビジョニングするだけで、ユーザーはコンソールから Claude Enterprise へのログイン方法を切り替える必要があります。


Claude Enterprise とコンソールの比較

機能

Claude Console/API

Claude Enterprise

ウェブおよびモバイルアプリの Claude Code

Slack の Claude Code

コードレビュー

Claude Code が使用できるツールを強制する

❌ ネイティブ UI なし

*設定は MDM (Jamf、Intune) または構成管理 (Ansible、Puppet など) を介して開発者マシンにプッシュできます。

✅ managed-settings.json の許可/拒否ルールを設定するネイティブ UI

特定の bash コマンドをブロック

❌ ネイティブ UI なし*

✅ Bash(curl:*)、Bash(sudo:*) など

機密ファイルへのアクセスを防止

❌ ネイティブ UI なし*

✅ Read(.env)、Read(./secrets/**)

許可される MCP サーバーを制御

❌ ネイティブ UI なし*

✅ allowedMcpServers / deniedMcpServers

事前承認された MCP サーバーを組織全体にデプロイ

❌ ネイティブ UI なし*

✅ managed-mcp.json

サンドボックスモードを強制

❌ ネイティブ UI なし*

✅ sandbox.enabled

--dangerously-skip-permissions を無効化

❌ ネイティブ UI なし*

✅ permissions.disableBypassPermissionsMode: disable

自動モードを無効化

❌ ネイティブ UI なし*

✅ disableAutoMode: disable

カスタムロール (RBAC)

✅ グループ別にフィーチャーアクセスをスコープし、オーナーロールを付与することなく、請求、ユーザー管理、アイデンティティなどの特定の管理領域を委任します。エンタープライズプランでカスタムロールを管理

モデルガバナンス

❌ ネイティブ UI なし*

✅ 管理コンソールからチャットと Cowork (ベータ) の組織デフォルトモデルを設定し、managed settings の availableModels で Claude Code モデル選択を制限します。組織のデフォルトモデルを設定

監査ログ

❌ 監査ログサポートなし

🟡 Claude CodeはOpenTelemetryをサポートしています

🟡 監査ログとコンプライアンスAPI(監査ログイベントを含む)。ローカルCLIセッションのトランスクリプトは開発者のマシンに保存され、コンプライアンスAPIを通じてアクセスできません。

使用状況分析

✅ 作成されたコード行数、受け入れ率、日次アクティブユーザー数、日次支出。

組織設定使用状況で、作成されたコード行数、受け入れ率、日次アクティブユーザー数、メンバーあたりの月間支出。

プログラマティック使用状況とコスト報告

Claude Enterprise Analytics APIは、ユーザーごとのエンゲージメントとClaude Codeメトリクス(コミット、プルリクエスト、コード行数)に加えて、使用状況とコストエンドポイントを返します。Admin APIはプログラマティック組織管理をカバーしています。

貢献メトリクス

✅ Claude Code Analytics APIを通じて

✅ Claude Codeの支援で作成されたPRとコミットされたコード行数。

きめ細かい支出管理

✅ 組織とワークスペースの制限、およびClaude Codeワークスペース内の開発者ごとの制限

✅ 組織→グループ→個人、RBACグループと統合


SCIMプロビジョニング

アイデンティティチームが実行する必要があることは以下の通りです:

  1. IdPグループマッピングを更新する — ユーザーをClaude Enterprise組織にマップするためのIdPグループを作成または再利用します。グループマッピングを有効にして、シートを自動的に割り当てます。

  2. 十分なシートが購入されていることを確認する — SCIMシンクをトリガーする前に、Claude Enterprise組織に利用可能なシートが十分にあることを確認します。利用可能なシートがないユーザーは「未割り当て」ステータスに設定されます。

  3. Claude Codeアクセスが有効になっていることを確認する — 管理設定でエンタープライズ組織に対してClaude Codeが有効になっていることを確認し、カスタムロールまたはグループで機能をスコープしている場合は、開発者グループにClaude Codeアクセスが付与されていることを確認します。

  4. シンクをトリガーする組織設定→組織とアクセスに移動し、ディレクトリシンク(SCIM)を見つけて「シンク」をクリックします。これは大規模なシンクをトリガーする可能性があるため、遅い場合があります。

  5. シート割り当てを確認する — シンク後、組織設定→組織とアクセスを確認して、ユーザーが正しいシートタイプに割り当てられたことを確認します。

  6. オプション:Console組織マッピングを調整する — 一部のユーザーがConsole APIアクセスを保持する必要がある場合は、グループをConsole組織にマップしたままにします。ユーザーは両方の組織に同時に属することができます。

注:Microsoft Entra SCIMの変更は約40分ごとに同期されます。グループの変更後にオンデマンドでトリガーするには、「シンク」ボタンを使用します。

エンタープライズ組織のSSOがログインのみとして構成されている場合、サインインはアカウントを作成しません。開発者にログインするよう指示する前に、JITまたはSCIMプロビジョニングを有効にしてください。JITまたはSCIMプロビジョニングの設定を参照してください。


支出制限

Claude Enterpriseプランは階層的な支出管理システムを提供します。制限はカスケードされます。ユーザーは組織の制限を超えることはできません。

レベル

スコープ

設定者

制御内容

1. 組織

エンタープライズ組織全体

プライマリオーナー/オーナー

すべてのシートと使用状況全体の最大月間支出

2. グループ管理

RBACを使用したグループ

プライマリオーナー/オーナー

RBACを使用したグループの支出制限

3. 個人

特定のユーザー

プライマリオーナー/オーナー

単一のチームメンバーの支出制限

支出制限の設定と編集方法

  1. オーナーまたはプライマリオーナーとしてサインインします。

  2. 組織設定→使用状況に移動します。

  3. 組織レベルの制限を設定します。これはすべての月間支出のグローバル上限です。

  4. グループレベルの制限を設定します。「グループ別」タブの下。エンタープライズプランでグループとグループ支出制限を管理するを参照してください。

  5. 個別レベルの制限を設定 — 支出デフォルトセクションの「メンバー別」タブで特定のユーザーを見つけます。

オーナーは制限を「無制限」に設定できますが、すべての使用量は引き続き請求されます。消費シートのユーザーが制限に達した場合、次の請求期間またはアドミンが制限を増やすまで、ClaudeまたはClaude Codeを使用できません。


新しいシートの発行と再認証

シートの追加

  1. プライマリオーナーまたはオーナーとしてログインします。

  2. 組織設定 → 請求に移動します。

  3. シートの下の鉛筆アイコンをクリックします。

  4. 新しいシート数を入力します。

  5. 確認して「アップグレード」をクリックします。新しいシートは日割り計算されます。

ユーザーをシートに割り当てる

  1. 組織設定 → メンバーに移動します。

  2. 「メンバーを追加」(複数の場合は「一括追加」)をクリックします。

  3. ユーザーの@メールアドレスを入力します。

  4. ロール(ユーザー、アドミン、オーナー)を設定して招待を送信します。

SCIM プロビジョニングされたユーザーの場合、シート割り当てはグループマッピングに基づいて自動的に行われます。グループマッピングが設定されていない場合、ユーザーはデフォルトで最高利用可能なシートティアになります。

Claude Code ユーザーの再認証

現在 Console org に対して認証されている開発者は、Claude エンタープライズ組織に対して再認証する必要があります:

  1. ログイン前に残っている Console 認証情報を削除します。シェルプロファイル、ドットファイル、CI 設定で ANTHROPIC_API_KEY または ANTHROPIC_AUTH_TOKEN 環境変数をチェックし、apiKeyHelper 設定を削除します。また、CLAUDE_CODE_OAUTH_TOKENANTHROPIC_BASE_URLCLAUDE_CODE_USE_BEDROCK / _VERTEX / _FOUNDRY フラグもチェックしてください。これらも /login をオーバーライドまたはバイパスします。認証情報は Claude Code 自体の設定ファイル(~/.claude/settings.json、およびリポジトリ内の .claude/settings*.json ファイル)の env ブロックに隠れることもあります。これらが残っている場合、新しいログインに対して静かに優先されます:/login は成功したように見えますが、使用量は引き続き古い Console 組織に請求されます。

  2. ターミナルで claude を実行してから /login を実行して、認証方法を切り替えます。

  3. ログイン方法として「サブスクリプション付き Claude アカウント」を選択します。

  4. Claude エンタープライズ組織を選択します(Console org または個人アカウントではなく)。

  5. 認可してターミナルに戻り、/status を実行して、Claude Code がエンタープライズ組織を表示していることを確認します。

CI と自動化

パイプラインとスクリプトは /login を使用しません。自動化用に Console org(およびその API キー)を保持して対話型開発者シートのみを移行するか、CI をエンタープライズ認証情報に切り替えます:エンタープライズ組織にサインインしている間に claude setup-token を実行し、出力されたトークンを CI 環境で CLAUDE_CODE_OAUTH_TOKEN として設定します。これらのいずれかが配置されるまで CI 認証情報を削除しないでください。

IT 向けのヒント:forceLoginOrgUUID をエンタープライズ組織 UUID に設定した管理設定を、すべての移行の標準部分として展開します。ピンをエンドポイント管理ファイルまたは MDM ポリシーとして配信します。サーバー管理設定はユーザーがサインインした後にのみ到着するため、間違った最初のログインをキャッチできません。サーバー管理設定も使用する場合は、そこにも forceLoginOrgUUID を設定します:2 つのチャネルはマージされません。これにより、他の組織へのログインがブロックされ、上記の残っている認証情報の失敗モードが静かな誤請求から大きな失敗に変わります:Claude Code は起動を拒否し、残っている認証情報(ANTHROPIC_API_KEYANTHROPIC_AUTH_TOKEN、または apiKeyHelper)を削除する必要があることをユーザーに伝えます。

移行の検証後

移行された開発者を Console org から削除するか、キーをローテーションします。削除により、Console ログイントークンが取り消され、Claude Code ワークスペースキーが無効になり、対話型使用からのさらなる Console 請求が停止されます。他の Console ワークスペースで作成した API キーは、削除によって無効になりません。これらを個別に確認して無効にしてください。エンタープライズアクセスが機能することを確認するまでメンバーを削除しないでください。自動ロールバックはありません。


レポート機能の改善

Console API から Claude Enterprise に移行すると、Claude Code 使用状況のより豊富な分析がロック解除されます:

メトリック

Console API

Claude Enterprise

トークン消費

受け入れられたコード行

提案受け入れ率

Claude Code 支援で作成された PR

✅ Claude Code Analytics API 経由

Claude Code 支援でコミットされたコード行

✅ Claude Code Analytics API 経由

支出制限通知

✅ 設定可能な受信者を持つ制限時通知メール

閾値アラート

メンバーあたりの月間支出

管理者設定 → 使用状況

コンプライアンス監査証跡

Compliance APIには監査ログイベントが含まれています。ローカルCLIセッションのトランスクリプトは開発者のマシンに保存され、Compliance APIを通じて利用することはできません。

すべてのレポートはClaudeアドミンパネルのAnalyticsからアクセスできます。プログラマティックアクセスの場合、Claude Enterprise Analytics APIはユーザーごとのエンゲージメントメトリクス、Claude Codeアクティビティ(コミット、プルリクエスト、コード行数)、および使用状況とコストデータを返します。Analyticsは移行されません。Enterpriseオーガニゼーションは新しいレポート履歴で開始され、そのAnalytics/Admin APIはEnterpriseオーガニゼーションで作成された新しいAPIキーが必要です。Consoleキーは引き継がれません。移行前に、履歴ダッシュボードに必要なConsole分析をエクスポートしてください。Console APIキーに残るトラフィック(例えばCI)は、Consoleレポートにのみ表示され続けます。

ドキュメント: Claude Code Usage Analytics


マネージドポリシー設定 — 詳細解説

これはセキュリティおよびITチームにとって最も重要なアップグレードです。サーバー管理設定により、すべての開発者のマシン全体でClaude Codeが実行できることと実行できないことを一元的に制御し、強制することができます。これらを配信する方法は2つあり、最初の方法を使用するためにMDMは必要ありません。

仕組み

Claude Codeは設定ソースの階層から設定を読み込みます。managed-settings.jsonファイルは最上位に位置し、ユーザーまたはプロジェクト設定によってオーバーライドすることはできません。

優先度

ソース

スコープ

制御者

1(最高)

マネージド設定(サーバー管理またはエンドポイント管理)

エンタープライズ全体

オーナー/プライマリオーナー(claude.aiアドミンコンソールからプッシュされた場合)またはIT/MDMチーム(ファイルとしてデプロイされた場合)。

2

コマンドライン引数

セッション

開発者

3

.claude/settings.local.json

プロジェクト(個人用)

開発者

4

.claude/settings.json

プロジェクト(共有、Git内)

チーム

5(最低)

~/.claude/settings.json

ユーザー(グローバル)

開発者

マネージド設定を配信する2つの方法

サーバー管理設定(MDM不要): オーナーまたはプライマリオーナーがアドミンコンソールのOrganization settingsClaude CodeManaged settingsで設定を定義します。オーガニゼーションにサインインしているすべてのClaude Codeクライアントは、起動時に自動的にそれらを取得し、1時間ごとに更新をポーリングします。これはデバイス管理インフラストラクチャを持たないオーガニゼーション、または非管理デバイス上のユーザーを持つオーガニゼーションに適しています。サーバー管理設定の詳細をご覧ください。

エンドポイント管理設定: ITは設定をデバイスに直接デプロイします。ネイティブOSポリシー(macOS管理設定またはWindowsレジストリ、Jamf、Intune、グループポリシーなど経由)またはシステムパスにプッシュされたmanaged-settings.jsonファイルのいずれかを使用します。エンドユーザーが変更できないようにOSレベルの権限でファイルを保護してください。登録済みデバイスでは、OSがユーザーの改ざんを防ぐため、サーバー管理配信よりも強力な保証が提供されます。

注: 両方のチャネルは同じ最高優先度層を占め、同じJSON形式を使用しますが、マージされません。最初に空でない設定を配信するソースが優先されます。サーバー管理設定が最初にチェックされ、キーを配信する場合、エンドポイント管理設定は完全に無視されます。/statusを実行して、どのマネージドソースがアクティブかを確認してください。

ファイルの場所(エンドポイント管理)

OS

パス

macOS

/Library/Application Support/ClaudeCode/managed-settings.json

Linux

/etc/claude-code/managed-settings.json

Windows

C:\Program Files\ClaudeCode\managed-settings.json

主要設定リファレンス

これらは、Console から Enterprise への移行に最も関連する設定です。Claude Code はさらに多くの設定をサポートしています。完全な最新リストについては、Claude Code 設定を参照してください。

設定

目的

permissions.deny

特定のツール/コマンドを組織全体でブロック

Bash(curl:*), Read(.env)

permissions.allow

信頼できるコマンドを明示的に許可

Bash(npm run test:*)

permissions.ask

毎回ユーザーの承認が必要

Bash(rm:*)

permissions.disableBypassPermissionsMode

--dangerously-skip-permissions を防止

"disable"

forceLoginOrgUUID

ログインを特定の Enterprise 組織に制限します。1 つの組織 UUID または配列を受け入れます。他の組織へのログインはブロックされます。単一の UUID はログイン時にその組織を自動選択します。

"298e7cb2…"

forceLoginMethod

ログイン方法(claudeai、console、または gateway)を強制します。forceLoginOrgUUIDと一緒に使用することで、ユーザーはアカウントタイプ選択をスキップできますが、組織制限を適用するには必須ではありません。

"claudeai"

allowedMcpServers

承認された MCP サーバーのみを許可(名前、コマンド、または URL パターンで照合)

[{"serverName": "github"}]

deniedMcpServers

特定の MCP サーバーをブロックリストに登録

[{"serverName": "filesystem"}]

allowManagedPermissionRulesOnly

管理設定からのアクセス許可ルールのみが適用されます。ユーザーとプロジェクトは独自のルールを追加できません

true

allowManagedMcpServersOnly

管理対象の MCP 許可リストのみが適用されます。拒否リストはすべてのソースからマージされます

true

allowManagedHooksOnly

管理対象および管理者承認済みのフックのみが実行されます

true

enforceAvailableModels

availableModels 許可リストをデフォルトモデルオプションに拡張します

true

sandbox.enabled

サンドボックスモードを強制

true

sandbox.allowUnsandboxedCommands

サンドボックス化されていない実行をブロック

false

cleanupPeriodDays

ローカルセッションデータ(トランスクリプトおよびその他のアプリケーションファイル)の保持期間。デフォルト:30日

7

companyAnnouncements

すべてのClaude Codeユーザーにメッセージを表示

文字列の配列

デプロイメント:MDMツール(Intune、Jamf、SCCM、Puppet等)を使用して、managed-settings.jsonをすべての開発者マシンにプッシュします。ファイルをOSレベルの権限で保護し、エンドユーザーが変更できないようにしてください。

こちらの回答で解決しましたか?