コンテンツにスキップ

アクセストークン

Codex アクセストークンは、Codex の権限にスコープ設定された ChatGPT ワークスペースの認証情報です。Codex CLI や app-server ベースの自動化など、信頼できる非対話型のローカルワークフローを、ChatGPT ワークスペースの ID で認証します。スクリプト、スケジュール済みジョブ、または CI ランナーで、繰り返しローカルアクセスを行う必要がある場合に使用します。

現在、Codex アクセストークンは ChatGPT Business および Enterprise ワークスペースでサポートされています。

アクセストークンは、ChatGPT 管理コンソールの アクセストークン で作成します。アクセストークンは作成した ChatGPT ユーザーと、そのユーザーのワークスペースに紐付けられます。トークンは、プログラムによるローカルワークフローのエージェント ID として機能します。

Platform API キーが自動化に適している場合は、引き続き API キー認証を使用してください。信頼できるローカルワークフローで ChatGPT ワークスペースへのアクセス、ワークスペースで管理される権利、またはエンタープライズ制御が特に必要な場合は、Codex アクセストークンを使用します。

公開済みの ChatGPT ワークスペースエージェントを独自のシステムから起動する必要がありますか。その場合は、Workspace Agents API 用の Workspace Agent アクセストークンを使用してください。Codex アクセストークンは、Codex CLI または app-server クライアントを介した信頼できるローカルワークフローを認証するものであり、ワークスペースエージェントのトリガー呼び出しを認証するものではありません。Workspace Agent アクセストークンでの認証 を参照してください。

アクセストークンの仕組み

Codex CLI または app-server クライアントを、ユーザーがブラウザーサインインを完了せずに実行する必要がある場合は、アクセストークンを使用します。トークンは作成した ChatGPT ワークスペースユーザーを表すため、そのユーザーのアクセス権を使って実行でき、ワークスペースのガバナンスデータに表示されます。

クライアントは実行開始時にトークンを確認し、その実行をワークスペースの ID に紐付けます。トークンは他の自動化用シークレットと同様に扱ってください。シークレットマネージャーに保存し、ログに記録せず、定期的にローテーションしてください。

アクセストークンは次の用途に使用します。

  • codex exec ジョブを、信頼できる自動化環境から実行する場合。
  • 繰り返し実行する非対話型の Codex CLI 実行を必要とするローカルスクリプト。
  • 信頼できる app-server ベースの自動化。
  • 使用量を API 組織キーではなく ChatGPT ワークスペースユーザーに関連付ける必要があるエンタープライズワークフロー。

避けるべき主なリスクは次のとおりです。

  • シークレットの漏洩: トークンを持つ人は誰でも、トークンの作成者として Codex CLI または app-server クライアントを介してローカル実行を開始できます。トークンはシークレットマネージャーに保存し、ログに記録せず、定期的にローテーションしてください。
  • ランナーの信頼性: パブリック CI、フォークされたプルリクエスト、または共有マシンでは、ワークスペース外の人にトークンが公開される可能性があります。アクセストークンは信頼できるランナーでのみ使用してください。
  • 共有 ID: 1 人のトークンを関連のない複数のチームで再利用すると、所有権や監査証跡の解釈が難しくなります。特定のワークフロー所有者用にトークンを作成してください。
  • 古い認証情報: 有効期間の長いトークンは、ワークフローが変更された後も有効なままになる可能性があります。期間限定トークンを優先し、使用しなくなったトークンは無効化してください。
  • 認証情報の種類の誤り: Codex アクセストークンは、Codex CLI または app-server クライアントを介した信頼できるローカル自動化用です。公開済みの ChatGPT ワークスペースエージェントを起動するには Workspace Agent アクセストークンを使用し、一般的な OpenAI API 呼び出しには Platform API キーを使用してください。

アクセストークンの作成を有効にする

ワークスペース設定でアクセストークンの権限を使用して、許可されたメンバーによるアクセストークンの作成を有効にします。

アクセストークンの権限は、トークンの作成を制御します。この権限によって ChatGPT デスクトップアプリ、Codex CLI、または IDE 拡張機能へのアクセスが付与されることはなく、メンバーのシート種別、組み込みのワークスペースロール、またはローカルランタイムの権限プロファイルも変更されません。これらの制御は必要に応じて設定してください。

これらの制御の関係については、ロールとワークスペースの権限 を参照してください。

  1. ワークスペース設定 > 権限とロール に移動します。
  2. アクセストークン セクションで、許可されたすべてのメンバーがアクセストークンを作成できるようにする場合は、ユーザーによるアクセストークンの作成を許可 をオンにします。
  3. ワークフローで対象となるローカルサーフェスも必要な場合は、Codex Local セクションで メンバーによる Codex Local の使用を許可 がオンになっていることを確認します。この制御は、ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能でのローカル使用を対象とします。

アクセストークンの保存場所、使用する自動化、ローテーション方法を理解している人またはサービス所有者に、アクセストークンの作成を限定してください。

アクセストークンの有効期限の上限を設定する

ワークスペースの所有者と管理者は、メンバーが Codex アクセストークンを作成するときに選択できる最長の有効期限を設定できます。ワークスペース設定 > 権限とロール に移動し、Codex Local セクションで アクセストークンの有効期限の上限 を設定します。

この上限は新しいアクセストークンに適用されます。既存のトークンには現在の有効期限が維持されます。

アクセストークンを作成する

アクセストークンページでトークンに名前を付け、有効期限を選択します。

  1. アクセストークン に移動します。
  2. 作成 を選択します。

  1. release-cinightly-docs-check など、説明的な名前を入力します。

  1. 有効期限を選択します。7 日、30 日、60 日、90 日など、有限の有効期限を選択することを推奨します。有効期限なし を選択した場合は、定期的にトークンをローテーションしてください。
  2. 作成 を選択します。
  3. 生成されたアクセストークンを直ちにコピーします。モーダルを閉じた後に再度表示することはできません。
  4. トークンをシークレットマネージャーまたは CI シークレットストアに保存します。

カスタムで設定できる最短の有効期限は 1 日です。取り消し済みまたは期限切れのトークンを使用して、新しい認証済み実行を開始することはできません。

Codex CLI でアクセストークンを使用する

一時的な自動化では、トークンを CODEX_ACCESS_TOKEN に保存し、通常どおり Codex CLI を実行します。

export CODEX_ACCESS_TOKEN="<access-token>"
codex exec --json "review this repository and summarize the top risks"

永続的なローカルログインでは、トークンを codex login --with-access-token にパイプします。

printf '%s' "$CODEX_ACCESS_TOKEN" | codex login --with-access-token
codex exec "summarize the last release diff"

codex login --with-access-token は、エージェント ID の認証情報を Codex CLI の認証ストレージに保存します。マシン上に認証情報を保存したくない場合は、代わりに CODEX_ACCESS_TOKEN 環境変数を使用してください。

codex app-server は、CODEX_ACCESS_TOKEN を介して、または codex login --with-access-token で作成したログインを通じて同じ認証情報を使用し、OpenAI リクエストを認証できます。この認証情報は、クライアントと app-server 間のトランスポート認証とは別のものです。リモート WebSocket 接続では、App server の説明に従って、別の bearer トークンまたは capability トークンを設定してください。Codex アクセストークンをトランスポートトークンとして再利用しないでください。認証とネットワーク環境変数 も参照してください。

トークンをローテーションまたは無効化する

アクセストークンは、他の自動化用シークレットと同じ方法でローテーションします。

  1. 置き換え用のトークンを作成します。
  2. ランナー、スケジューラー、またはシークレットマネージャーのシークレットを更新します。
  3. 新しいトークンでスモークテストを実行します。
  4. アクセストークン から古いトークンを無効化します。

アクセストークンページから、ワークスペースの所有者と管理者は、ワークスペース内の任意のトークンを無効化できます。アクセストークンの権限を持つメンバーは、自分が作成したトークンのみを無効化できます。

権限モデル

ワークスペースのアクセストークン権限は、トークンの作成を制御します。メンバーによる Codex Local の使用を許可 というワークスペース権限は、ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能でのローカル使用へのアクセスを別途制御します。メンバーは、アクセストークンを作成する権限がなくても、ローカルアクセスを持つことができます。

機能 ワークスペースの所有者と管理者 アクセストークンの権限を持つメンバー アクセストークンの権限を持たないメンバー
アクセストークン を開く はい はい いいえ
アクセストークンを作成する 自分の ChatGPT ワークスペース ID に対して可能 自分の ChatGPT ワークスペース ID に対して可能 いいえ
アクセストークンを一覧表示する 各トークンの作成者を含むワークスペース一覧 自分が作成したトークンのみ いいえ
アクセストークンページからアクセストークンを無効化する ワークスペース内の任意のトークン 自分が作成したトークンのみ ページへのアクセスなし
アクセストークンの権限を付与または削除する はい いいえ いいえ
その他のローカルクライアントまたは Codex クラウド設定を管理する ワークスペース管理者権限に基づいて可能 別途付与されていない限り不可 いいえ

要約すると、ワークスペースの所有者と管理者は、ワークスペースレベルでアクセスを管理します。メンバーが自分のトークンを作成および管理するにはアクセストークンの権限が必要ですが、その権限によって管理者権限や他のメンバーのトークンへのアクセスが付与されることはありません。

トラブルシューティング

アクセストークンページが 404 または禁止エラーを返す

ワークスペースの所有者または管理者に、自分のロールに ユーザーによるアクセストークンの作成を許可 が含まれていることを確認してもらってください。ワークフローで対象となるローカルサーフェスも必要な場合は、ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能でのローカル使用に対して メンバーによる Codex Local の使用を許可 が有効になっていることを確認してください。

codex login --with-access-token が失敗する

生成されたアクセストークンをコピーしたことを確認してください。ブラウザーのセッショントークンや Platform API キーではありません。また、トークンの有効期限が切れていないこと、無効化されていないことも確認してください。

関連ドキュメント