Аутентификация
Способы входа в веб-версию ChatGPT и клиенты Codex
- Настольное приложение ChatGPT Проекты, файлы и длительные задачи на компьютере.
- Веб-версия ChatGPT Чаты, проекты и Work в браузере.
- Codex CLI Codex в вашем терминале.
- Расширение Codex для IDE Codex в вашем редакторе.
Чтобы подключить локальный клиент к шлюзу вашей организации со входом через ChatGPT или без него, см. «Подключение к шлюзу». Для прямого доступа к Bedrock используются варианты аутентификации Amazon Bedrock.
Аутентификация OpenAI
Codex поддерживает два способа входа пользователя при работе с моделями OpenAI:
- Вход с помощью ChatGPT для доступа по подписке
- Вход с помощью API key для доступа с оплатой по факту использования
Приложение ChatGPT для настольных компьютеров, Codex CLI и расширение IDE поддерживают оба способа входа для локальной работы. Для Codex cloud требуется вход с помощью ChatGPT.
Способ входа также определяет, какие административные элементы управления и политики обработки данных применяются.
- При входе с помощью ChatGPT использование Codex регулируется разрешениями вашего рабочего пространства ChatGPT, управлением доступом на основе ролей (RBAC), а также настройками хранения и размещения данных ChatGPT Enterprise.
- При использовании API key вместо этого применяются настройки хранения и передачи данных вашей организации API.
В управляемых рабочих пространствах аутентификация — лишь один из уровней доступа. Членство в рабочем пространстве и подготовка учетных записей определяют, кто может войти, а лицензии и роли рабочего пространства — какие интерфейсы продукта и функции им доступны. При локальной работе в приложении ChatGPT для настольных компьютеров, Codex CLI или расширении IDE профили разрешений ограничивают действия агента на устройстве. См. разделы Группы и подготовка учетных записей и Роли и разрешения рабочего пространства, чтобы спланировать эти меры управления.
Вход с помощью ChatGPT
Чтобы использовать доступ к локальному компьютеру через Work Cloud в настольном и мобильном приложениях, а также в веб-версии:
Войдите с помощью ChatGPT в рабочее пространство, соответствующее условиям.
Попросите владельца рабочего пространства включить Work Cloud, а затем включить Разрешить доступ к локальному компьютеру в разделе Work Cloud. Параметр Использовать Codex локально в настольном приложении ChatGPT не является обязательным условием.
API key и токены доступа Codex не предоставляют доступ к локальному компьютеру через Work Cloud. Предварительные условия см. в разделах Роли и разрешения рабочего пространства и Часто задаваемые вопросы администраторов Work, а инструкции по настройке — в разделе Доступ к локальному компьютеру для Work Cloud и dots.
При входе с помощью ChatGPT из приложения ChatGPT для настольных компьютеров, Codex CLI или расширения IDE процесс входа открывает окно браузера. После входа браузер передает ваши учетные данные обратно в Codex.
Веб-версия ChatGPT
Откройте ChatGPT, войдите в учетную запись и выберите рабочее пространство, в котором хотите работать. Веб-версия ChatGPT сохраняет сеанс аутентификации в браузере.
Приложение ChatGPT для настольных компьютеров
На экране выхода из учетной записи выберите Continue to sign in, а затем завершите процесс в браузере.
Codex CLI
Выполните codex login, затем завершите вход в браузере. Это стандартный
способ аутентификации, когда действующий сеанс отсутствует.
Расширение для IDE
На экране входа выберите Войти с помощью ChatGPT, затем завершите вход в браузере.
Вход с помощью API key
В приложение ChatGPT для настольных компьютеров, Codex CLI или расширение IDE также можно войти с помощью API key. Получите свой API key на панели управления OpenAI.
Приложение ChatGPT для настольных компьютеров
На экране выхода из учетной записи выберите Sign in another way, введите ключ, а затем выберите Continue.
Codex CLI
Передайте ключ в codex login через stdin:
printenv OPENAI_API_KEY | codex login --with-api-keyРасширение для IDE
На экране входа выберите Использовать API key, введите ключ, затем выберите OK.
OpenAI выставляет счет за использование API key через вашу учетную запись OpenAI Platform по стандартным тарифам API. См. страницу с тарифами API.
Аутентификация с помощью API key поддерживает локальные рабочие процессы Codex, но некоторые функции, которым требуется доступ к рабочему пространству ChatGPT или облачным службам, ограничены либо недоступны. Сравните поддержку для разных тарифных планов в разделе Доступность функций.
В Codex CLI и Codex в настольном приложении ChatGPT аутентификация с помощью API key предоставляет доступ к поддерживаемым плагинам, отобранным OpenAI. Некоторые плагины недоступны, поскольку для их подключения требуются неподдерживаемые возможности OAuth. См. Использование плагинов.
При входе с помощью API key в Codex применяется стандартная тарификация API вместо кредитов, включенных в тарифный план ChatGPT.
Используйте аутентификацию с помощью API key для программных рабочих процессов Codex CLI, например заданий CI/CD. Не предоставляйте доступ к выполнению Codex в недоверенных или общедоступных средах.
Проверка аутентификации и выход
Откройте меню профиля, чтобы проверить текущую учетную запись и рабочее пространство. Чтобы завершить сеанс веб-версии ChatGPT в этом браузере, выберите Выйти.
Откройте меню профиля, чтобы просмотреть активную учётную запись или статус API key. Выберите Выйти, чтобы удалить текущие учётные данные.
Выполните codex login status, чтобы увидеть текущий способ аутентификации. При использовании сохраненных
учетных данных выполните codex logout, чтобы удалить их. Когда
процесс выбирает удостоверение рабочей нагрузки, Codex отклоняет codex login и
codex logout, поскольку аутентификацией управляет окружение процесса.
Откройте меню профиля, чтобы просмотреть активную учётную запись или статус API key. Выберите Выйти, чтобы удалить текущие учётные данные.
Использование токенов доступа Codex для корпоративной автоматизации
В рабочих пространствах ChatGPT Enterprise администраторы могут предоставить разрешение на токены доступа, чтобы участники с соответствующими правами могли создавать токены доступа Codex для доверенных неинтерактивных локальных рабочих процессов Codex. Используйте токен доступа, когда автоматизации требуется доступ к рабочему пространству ChatGPT, управляемым ChatGPT правам на использование Codex или механизмам управления корпоративным рабочим пространством без входа через браузер.
Токены доступа предназначены для доверенных скриптов, планировщиков и частных исполнителей CI. Для обычных вызовов OpenAI API продолжайте использовать ключи Platform API.
Инструкции по настройке, разрешениям, ротации и отзыву см. в разделе Токены доступа.
Если ваше окружение уже предоставляет токен доступа Codex, передайте его в CLI через канал:
printenv CODEX_ACCESS_TOKEN | codex login --with-access-tokenЗащита учетной записи Codex cloud
Codex cloud напрямую взаимодействует с вашей кодовой базой, поэтому ему требуется более надежная защита, чем многим другим функциям ChatGPT. Включите многофакторную аутентификацию (MFA).
Если вы используете поставщика входа через социальную учетную запись (Google, Microsoft, Apple), включать MFA в учетной записи ChatGPT необязательно, но ее можно настроить у поставщика входа через социальную учетную запись.
Инструкции по настройке:
Если вы получаете доступ к ChatGPT через единый вход (SSO), администратор SSO вашей организации должен обеспечить обязательное использование MFA для всех пользователей.
Если вы входите с помощью адреса электронной почты и пароля, перед получением доступа к Codex cloud необходимо настроить MFA в своей учетной записи.
Если ваша учетная запись поддерживает несколько способов входа и один из них — адрес электронной почты и пароль, перед получением доступа к Codex необходимо настроить MFA, даже если вы используете другой способ входа.
Кэширование данных для входа
При входе в приложение ChatGPT для настольных компьютеров, Codex CLI или расширение IDE с помощью ChatGPT либо API key данные для входа кэшируются и используются повторно. CLI и расширение используют общие кэшированные данные для входа. Если вы выйдете из учетной записи в одном из них, при следующем запуске CLI или расширения потребуется войти снова.
Codex кэширует данные для входа локально в текстовом файле по адресу ~/.codex/auth.json либо в хранилище учетных данных вашей операционной системы.
Для сеансов с входом через ChatGPT Codex автоматически обновляет токены во время использования до истечения срока их действия, поэтому активные сеансы обычно продолжаются без повторного входа через браузер.
Хранение учетных данных
Используйте cli_auth_credentials_store, чтобы указать, где Codex CLI хранит кэшированные учетные данные:
# file | keyring | auto | ephemeral
cli_auth_credentials_store = "keyring"fileсохраняет учётные данные вauth.jsonв каталогеCODEX_HOME(по умолчанию —~/.codex).keyringсохраняет учётные данные в хранилище учётных данных вашей операционной системы и завершается с ошибкой, если оно недоступно.autoиспользует хранилище учётных данных ОС, если оно доступно, иначе использует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 завершает сеанс пользователя и закрывается.
Эти настройки также можно задать через устаревшую управляемую конфигурацию. Сведения об ограничениях входа, принудительно заданных администратором, см. в разделе Локальное управление аутентификацией.
Диагностика входа
При прямом запуске codex login создается отдельный файл codex-login.log в
настроенном каталоге журналов. Используйте его для диагностики сбоев входа через браузер или
с помощью кода устройства, а также когда служба поддержки запрашивает журналы, относящиеся к входу.
Пользовательские наборы сертификатов CA
Если в вашей сети используется корпоративный TLS-прокси или частный корневой центр сертификации, укажите
в CODEX_CA_CERTIFICATE путь к PEM bundle перед входом. Если
CODEX_CA_CERTIFICATE не задана, Codex использует SSL_CERT_FILE. Эти же
настройки пользовательских CA применяются при входе, обычных HTTPS-запросах и защищённых WebSocket-
соединениях.
export CODEX_CA_CERTIFICATE=/path/to/corporate-root-ca.pem
codex loginВход на устройствах без графического интерфейса
Если вы входите в ChatGPT через Codex CLI, в некоторых ситуациях интерфейс входа через браузер может не работать:
- Вы запускаете CLI в удалённой среде или среде без графического интерфейса.
- Настройки вашей локальной сети блокируют обратный вызов на localhost, который Codex использует для передачи токена OAuth в CLI после входа.
В таких ситуациях рекомендуется аутентификация по коду устройства (бета). В интерактивном интерфейсе входа выберите Войти с помощью кода устройства или сразу выполните codex login --device-auth. Если аутентификация по коду устройства не работает в вашей среде, воспользуйтесь одним из запасных способов.
Рекомендуемый способ: аутентификация по коду устройства (бета)
- Включите вход по коду устройства в настройках безопасности ChatGPT (для личной учётной записи) или в разрешениях рабочего пространства ChatGPT (для администратора рабочего пространства).
- В терминале, где вы запускаете Codex, выберите один из вариантов:
- В интерактивном интерфейсе входа выберите Войти с помощью кода устройства.
- Выполните
codex login --device-auth.
- Откройте ссылку в браузере, войдите в систему и введите одноразовый код.
Если вход по коду устройства недоступен в вашей среде, воспользуйтесь одним из запасных способов ниже.
Запасной способ: войдите локально и скопируйте кеш аутентификации
Если вы можете войти в систему на компьютере с браузером, вы можете скопировать кешированные учётные данные на компьютер без графического интерфейса.
- На компьютере, где доступен вход через браузер, выполните
codex login. - Убедитесь, что кеш входа существует по пути
~/.codex/auth.json. - Скопируйте
~/.codex/auth.jsonв~/.codex/auth.jsonна компьютере без графического интерфейса.
Обращайтесь с ~/.codex/auth.json как с паролем: этот файл содержит токены доступа. Не добавляйте его в коммиты, не вставляйте в обращения в службу поддержки и не отправляйте в чат.
Если ваша ОС сохраняет учётные данные в хранилище учётных данных, а не в ~/.codex/auth.json, этот способ может не подойти. Инструкции по настройке
хранения учётных данных описывают, как включить хранение в файле.
Скопируйте файл на удалённый компьютер по SSH:
ssh user@remote 'mkdir -p ~/.codex'
scp ~/.codex/auth.json user@remote:~/.codex/auth.jsonИли используйте однострочную команду без scp:
ssh user@remote 'mkdir -p ~/.codex && cat > ~/.codex/auth.json' < ~/.codex/auth.jsonСкопируйте файл в контейнер Docker:
# Replace MY_CONTAINER with the name or ID of your container.
CONTAINER_HOME=$(docker exec MY_CONTAINER printenv HOME)
docker exec MY_CONTAINER mkdir -p "$CONTAINER_HOME/.codex"
docker cp ~/.codex/auth.json MY_CONTAINER:"$CONTAINER_HOME/.codex/auth.json"Более сложный вариант этого подхода для доверенных исполнителей CI/CD описан в руководстве
Поддержание аутентификации учётной записи Codex в CI/CD (расширенный сценарий).
В нём объясняется, как позволить Codex обновлять auth.json при обычных запусках и
затем сохранять обновлённый файл для следующего задания. Для автоматизации по-прежнему рекомендуется
по умолчанию использовать API key.
Запасной способ: перенаправьте обратный вызов на localhost через SSH
Если вы можете настроить перенаправление портов между локальным компьютером и удалённым хостом, вы можете использовать стандартный вход через браузер, создав туннель к локальному серверу обратного вызова Codex (по умолчанию localhost:1455).
- На локальном компьютере запустите перенаправление портов:
ssh -L 1455:localhost:1455 user@remote- В этом сеансе SSH выполните
codex loginи откройте выведенный адрес на локальном компьютере.
Альтернативные поставщики моделей
При определении пользовательского поставщика моделей в файле конфигурации можно выбрать один из следующих способов аутентификации:
- Аутентификация OpenAI: Задайте
requires_openai_auth = true, чтобы использовать аутентификацию OpenAI. После этого вы сможете войти через ChatGPT или с помощью API key. Это полезно при доступе к моделям OpenAI через прокси-сервер LLM. Приrequires_openai_auth = trueCodex игнорируетenv_key. - Аутентификация через переменную среды: Задайте
env_key = "<ENV_VARIABLE_NAME>", чтобы использовать API key провайдера из локальной переменной среды с именем<ENV_VARIABLE_NAME>. - Встроенная поддержка OAuth для шлюза: Настройте
[model_providers.<id>.gateway_oauth]для входа через браузер с помощью поставщика удостоверений вашей организации. Это работает со входом через ChatGPT и без него. Требования к шлюзу и инструкции по настройке см. в разделе «Встроенная поддержка OAuth для шлюза». - Аутентификация с помощью команды: Настройте
[model_providers.<id>.auth]для получения токена через установленный помощник для получения учётных данных. - Без аутентификации: Для локальной модели, которой не нужны учётные данные, оставьте
requires_openai_authнезаданным или используйтеfalseи не указывайте настройки учётных данных, включаяenv_key,experimental_bearer_token,authиgateway_oauth.