認証
認証
ChatGPT web および Codex クライアントのサインイン方法
OpenAI 認証
Codex では、OpenAI モデルを使用する際に、ユーザーは次の 2 つの方法でサインインできます。
- サブスクリプションを利用するために ChatGPT でサインインする
- 使用量に応じて利用するために API key でサインインする
ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能では、ローカル作業に どちらのサインイン方法も使用できます。Codex cloud では ChatGPT によるサインインが必要です。
サインイン方法によって、適用される管理者向け制御とデータ処理ポリシーも決まります。
- ChatGPT でサインインした場合、Codex の使用には ChatGPT ワークスペースの 権限、ロールベースアクセス制御(RBAC)、ChatGPT Enterprise の 保持期間とデータレジデンシーの設定が適用されます。
- API key を使用した場合は、代わりに API 組織の保持期間と データ共有の設定が適用されます。
管理対象のワークスペースでは、認証はアクセス制御の一層にすぎません。ワークスペースの メンバーシップとプロビジョニングによってサインインできるユーザーが決まり、シートと ワークスペースロールによって利用できる製品画面と機能が決まります。 ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能でのローカル作業では、 権限プロファイルによってエージェントがデバイス上で実行できる操作が制限されます。これらの制御を計画するには、 グループとプロビジョニング およびロールとワークスペース権限 を参照してください。
ChatGPT でサインインする
ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能から ChatGPT でサインインすると、サインインフローによってブラウザウィンドウが開きます。サインインが完了すると、ブラウザから認証情報が Codex に返されます。
ChatGPT デスクトップアプリ
サインアウト状態の画面で Continue to sign in を選択し、ブラウザでの 手順を完了します。
API key でサインインする
API key を使用して ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能にサインインすることもできます。OpenAI ダッシュボードから API key を取得してください。
ChatGPT デスクトップアプリ
サインアウト状態の画面で Sign in another way を選択し、キーを入力してから Continue を選択します。
OpenAI は、API key の使用量について、OpenAI Platform アカウントを通じて標準の API 料金を請求します。API 料金ページを参照してください。
API key 認証はローカルの Codex ワークフローをサポートしますが、 ChatGPT ワークスペースへのアクセスやクラウドサービスに依存する一部の機能は、制限されるか利用できません。 プラン別の対応状況は、 機能の提供状況で比較してください。
API key でサインインすると、Codex では ChatGPT プランに含まれるクレジットではなく、 標準の API 料金が適用されます。
CI/CD ジョブなど、プログラムから実行する Codex CLI ワークフローには API key 認証を使用してください。 信頼できない環境や公開環境で Codex の実行機能を公開しないでください。
認証を確認する、またはサインアウトする
プロファイルメニューを開くと、使用中のアカウントまたは API key の状態を確認できます。 現在の認証情報を消去するには、Log out を選択します。
Codex CLI では、codex login status を実行すると、使用中の認証方法を確認できます。
保存されている認証情報を消去するには、codex logout を実行します。
プロセスがワークロード ID を選択した場合、認証はプロセス環境によって制御されるため、Codex は codex login と
codex logout を拒否します。
Enterprise 自動化に Codex アクセストークンを使用する
ChatGPT Enterprise ワークスペースでは、管理者がアクセストークンの 権限を付与することで、許可されたメンバーが、信頼できる 非対話型の Codex ローカルワークフロー用に Codex アクセストークンを作成できるようになります。自動化で ブラウザによるサインインを行わずに、ChatGPT ワークスペースへのアクセス、ChatGPT で管理される Codex の利用資格、または Enterprise ワークスペースの制御が必要な場合は、アクセストークンを使用してください。
アクセストークンは、信頼できるスクリプト、スケジューラー、プライベート CI ランナー向けです。一般的な OpenAI API 呼び出しには、引き続き Platform API key を使用してください。
セットアップ手順、権限、ローテーション、取り消しに関するガイダンスについては、 アクセストークンを参照してください。
Codex cloud アカウントを保護する
Codex cloud はコードベースを直接操作するため、他の多くの ChatGPT 機能より強固なセキュリティが必要です。多要素認証(MFA)を有効にしてください。
ソーシャルログインプロバイダー(Google、Microsoft、Apple)を使用している場合、ChatGPT アカウントで MFA を有効にする必要はありませんが、ソーシャルログインプロバイダー側で設定できます。
設定手順については、次を参照してください。
シングルサインオン(SSO)を通じて ChatGPT にアクセスする場合は、組織の SSO 管理者がすべてのユーザーに MFA を適用する必要があります。
メールアドレスとパスワードを使用してログインする場合、Codex cloud にアクセスする前にアカウントで MFA を設定する必要があります。
アカウントが複数のログイン方法に対応しており、そのうちの 1 つがメールアドレスとパスワードである場合は、別の方法でサインインするときでも、Codex にアクセスする前に MFA を設定する必要があります。
ログイン情報のキャッシュ
ChatGPT または API key を使用して ChatGPT デスクトップアプリ、Codex CLI、IDE 拡張機能にサインインすると、ログイン情報がキャッシュされ、再利用されます。CLI と拡張機能は、同じキャッシュ済みログイン情報を共有します。どちらか一方からログアウトした場合、次に CLI または拡張機能を起動したときに再度サインインする必要があります。
Codex は、ログイン情報を ~/.codex/auth.json にあるプレーンテキストファイル、または OS 固有の認証情報ストアにローカルでキャッシュします。
ChatGPT でサインインしたセッションでは、使用中にトークンが期限切れになる前に Codex が自動的に更新するため、通常、アクティブなセッションではブラウザで再度ログインする必要はありません。
認証情報の保存
Codex CLI がキャッシュ済み認証情報を保存する場所を制御するには、cli_auth_credentials_store を使用します。
# file | keyring | auto | ephemeral
cli_auth_credentials_store = "keyring"fileは、auth.jsonをCODEX_HOME配下(デフォルトは~/.codex)に保存して認証情報を保持します。keyringは、オペレーティングシステムの認証情報ストアに認証情報を保存し、利用できない場合は失敗します。autoは、OS の認証情報ストアが利用可能な場合はそれを使用し、利用できない場合はauth.jsonにフォールバックします。ephemeralは、現在のプロセスのメモリ内にのみ認証情報を保持します。
完全な config.toml スキーマについては、構成リファレンスを参照してください。
管理者は、cli_auth_credentials_store と chatgpt_base_url を
ローカル認証要件を通じて強制できます。
ユーザーは、config.toml や CLI のオーバーライドでこれらの要件を上書きできません。
ログイン方法またはワークスペースを適用する
管理対象環境では、管理者がユーザーに許可する認証方法を制限できます。
# Only allow ChatGPT login or only allow API key login.
forced_login_method = "chatgpt" # or "api"
# When using ChatGPT login, restrict users to a specific workspace.
forced_chatgpt_workspace_id = "00000000-0000-0000-0000-000000000000"使用中の認証情報が構成済みの制限と一致しない場合、Codex はユーザーをログアウトさせて終了します。
これらの設定は、従来のマネージド設定を通じて指定することもできます。 管理者が強制するログイン制限については、 認証をローカルで管理するを参照してください。
代替モデルプロバイダー
構成ファイルでカスタムモデルプロバイダーを定義する場合は、次の認証方法のいずれかを選択できます。
- OpenAI 認証:OpenAI 認証を使用するには、
requires_openai_auth = trueを設定します。設定後、ChatGPT または API key でサインインできます。これは、LLM プロキシサーバー経由で OpenAI モデルにアクセスする場合に便利です。requires_openai_auth = trueの場合、Codex はenv_keyを無視します。 - 環境変数認証:
<ENV_VARIABLE_NAME>という名前のローカル環境変数からプロバイダー固有の API key を使用するには、env_key = "<ENV_VARIABLE_NAME>"を設定します。 - 認証なし:
requires_openai_authを設定しない(またはfalseに設定する)場合で、かつenv_keyも設定しない場合、Codex はプロバイダーが認証を必要としないものとみなします。これはローカルモデルで便利です。