인증
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 아래의 로컬 컴퓨터 접근 허용 을 켜 달라고 요청하세요. ChatGPT 데스크톱 앱에서 Codex를 로컬로 사용 은 필수 조건이 아닙니다.
API key와 Codex 액세스 토큰으로는 Work Cloud의 로컬 컴퓨터 접근 기능을 활성화할 수 없습니다. 사전 요구 사항은 역할 및 워크스페이스 권한과 Work 관리자 FAQ를, 설정 방법은 Work Cloud 및 dots의 로컬 컴퓨터 접근을 참조하세요.
ChatGPT 데스크톱 앱, Codex CLI 또는 IDE 확장 프로그램에서 ChatGPT로 로그인하면 로그인 절차를 위한 브라우저 창이 열립니다. 로그인 후 브라우저가 자격 증명을 Codex로 반환합니다.
ChatGPT 웹
ChatGPT를 열고 로그인한 다음 작업할 워크스페이스를 선택하세요. ChatGPT 웹은 인증된 세션을 브라우저에 유지합니다.
ChatGPT 데스크톱 앱
로그아웃된 화면에서 로그인 계속하기 를 선택한 후 브라우저 절차를 완료하세요.
Codex CLI
codex login을 실행한 다음 브라우저에서 절차를 완료하세요. 유효한 세션이 없을 때 사용하는 기본
인증 방식입니다.
IDE 확장 프로그램
로그아웃 상태의 화면에서 ChatGPT로 로그인 을 선택한 다음 브라우저에서 절차를 완료하세요.
API key로 로그인
API key를 사용하여 ChatGPT 데스크톱 앱, Codex CLI 또는 IDE 확장 프로그램에 로그인할 수도 있습니다. OpenAI 대시보드에서 API key를 발급받으세요.
ChatGPT 데스크톱 앱
로그아웃된 화면에서 다른 방법으로 로그인 을 선택하고 키를 입력한 후 계속 을 선택하세요.
Codex CLI
stdin을 통해 키를 codex login에 파이프로 전달하세요.
printenv OPENAI_API_KEY | codex login --with-api-keyIDE 확장 프로그램
로그아웃 상태의 화면에서 API key 사용 을 선택하고 키를 입력한 다음 확인 을 선택하세요.
OpenAI는 표준 API 요금에 따라 OpenAI Platform 계정을 통해 API key 사용량을 청구합니다. API 요금 페이지를 참조하세요.
API key 인증은 로컬 Codex 워크플로를 지원하지만, ChatGPT 워크스페이스 액세스나 클라우드 서비스에 의존하는 일부 기능은 제한되거나 사용할 수 없습니다. 플랜별 지원 여부는 기능 제공 여부에서 비교하세요.
Codex CLI와 ChatGPT 데스크톱 앱의 Codex에서 API key 인증을 사용하면 지원되는 OpenAI 선정 플러그인에 접근할 수 있습니다. 일부 플러그인은 연결 절차에 지원되지 않는 OAuth 기능이 필요하므로 사용할 수 없습니다. 플러그인 사용을 참조하세요.
API key로 로그인하면 Codex는 ChatGPT 플랜에 포함된 크레딧 대신 표준 API 요금을 적용합니다.
CI/CD 작업과 같은 프로그래밍 방식의 Codex CLI 워크플로에는 API key 인증을 사용하세요. 신뢰할 수 없거나 공개된 환경에 Codex 실행 기능을 노출하지 마세요.
인증 확인 또는 로그아웃
프로필 메뉴를 열어 현재 사용 중인 계정과 워크스페이스를 확인하세요. 해당 브라우저에서 ChatGPT 웹 세션을 종료하려면 로그아웃 을 선택하세요.
프로필 메뉴를 열어 현재 사용 중인 계정이나 API key 상태를 확인하세요. 로그아웃 을 선택하면 현재 자격 증명이 삭제됩니다.
codex login status을 실행하여 현재 사용 중인 인증 방식을 확인하세요. 저장된 인증 정보를
사용하는 경우 codex logout을 실행하여 현재 자격 증명을 삭제하세요.
프로세스가 워크로드 ID를 선택하면 Codex는 codex login과
codex logout을 거부합니다. 프로세스 환경이 인증을 제어하기 때문입니다.
프로필 메뉴를 열어 현재 사용 중인 계정이나 API key 상태를 확인하세요. 로그아웃 을 선택하면 현재 자격 증명이 삭제됩니다.
엔터프라이즈 자동화에 Codex 액세스 토큰 사용
ChatGPT Enterprise 워크스페이스에서 관리자는 허용된 구성원이 신뢰할 수 있는 비대화형 로컬 Codex 워크플로용 Codex 액세스 토큰을 생성할 수 있도록 액세스 토큰 권한을 부여할 수 있습니다. 브라우저 로그인 없이 자동화에 ChatGPT 워크스페이스 액세스, ChatGPT에서 관리하는 Codex 사용 권한 또는 엔터프라이즈 워크스페이스 제어가 필요한 경우 액세스 토큰을 사용하세요.
액세스 토큰은 신뢰할 수 있는 스크립트, 스케줄러 및 비공개 CI 러너를 위한 것입니다. 일반적인 OpenAI API 호출에는 계속 Platform API key를 사용하세요.
설정 단계, 권한, 교체 및 취소에 관한 지침은 액세스 토큰을 참조하세요.
환경에서 이미 Codex 액세스 토큰을 제공하는 경우 파이프로 CLI에 전달하세요.
printenv CODEX_ACCESS_TOKEN | codex login --with-access-tokenCodex cloud 계정 보호
Codex cloud는 코드베이스와 직접 상호 작용하므로 다른 여러 ChatGPT 기능보다 더 강력한 보안이 필요합니다. 다단계 인증(MFA)을 활성화하세요.
소셜 로그인 제공업체(Google, Microsoft, Apple)를 사용하는 경우 ChatGPT 계정에서 MFA를 활성화할 필요는 없지만, 소셜 로그인 제공업체에서 설정할 수 있습니다.
설정 지침은 다음을 참조하세요.
통합 인증(SSO)을 통해 ChatGPT에 액세스하는 경우 조직의 SSO 관리자가 모든 사용자에게 MFA를 적용해야 합니다.
이메일과 비밀번호를 사용하여 로그인하는 경우 Codex cloud에 액세스하기 전에 계정에 MFA를 설정해야 합니다.
계정이 두 가지 이상의 로그인 방법을 지원하고 그중 하나가 이메일과 비밀번호인 경우, 다른 방법으로 로그인하더라도 Codex에 액세스하기 전에 MFA를 설정해야 합니다.
로그인 캐싱
ChatGPT 또는 API key를 사용하여 ChatGPT 데스크톱 앱, Codex CLI 또는 IDE 확장 프로그램에 로그인하면 로그인 정보가 캐시되어 재사용됩니다. CLI와 확장 프로그램은 동일한 캐시 로그인 정보를 공유합니다. 둘 중 하나에서 로그아웃하면 다음에 CLI 또는 확장 프로그램을 시작할 때 다시 로그인해야 합니다.
Codex는 로그인 정보를 ~/.codex/auth.json의 일반 텍스트 파일 또는 운영체제별 자격 증명 저장소에 로컬로 캐시합니다.
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는 사용자를 로그아웃하고 종료합니다.
이 설정은 레거시 관리형 구성을 통해서도 제공할 수 있습니다. 관리자가 강제 적용하는 로그인 제한은 로컬에서 인증 관리를 참조하세요.
로그인 진단
codex login을 직접 실행하면 전용 codex-login.log 파일이
설정된 로그 디렉터리에 기록됩니다. 브라우저 로그인 또는
기기 코드 오류를 디버깅해야 하거나 지원팀에서 로그인 전용 로그를 요청할 때 이 파일을 사용하세요.
사용자 지정 CA 번들
네트워크에서 기업용 TLS 프록시나 사설 루트 CA를 사용하는 경우, 로그인하기 전에
CODEX_CA_CERTIFICATE을 PEM 번들로 설정하세요.
CODEX_CA_CERTIFICATE이 설정되지 않으면 Codex는 SSL_CERT_FILE을 대신 사용합니다. 동일한
사용자 지정 CA 설정이 로그인, 일반 HTTPS 요청, 보안 WebSocket
연결에 적용됩니다.
export CODEX_CA_CERTIFICATE=/path/to/corporate-root-ca.pem
codex login헤드리스 기기에서 로그인
Codex CLI로 ChatGPT에 로그인할 때 다음과 같은 상황에서는 브라우저 기반 로그인 UI가 작동하지 않을 수 있습니다:
- 원격 또는 헤드리스 환경에서 CLI를 실행하고 있습니다.
- 로그인 후 Codex가 OAuth 토큰을 CLI에 반환하는 데 사용하는 localhost 콜백을 로컬 네트워크 설정이 차단합니다.
이러한 상황에서는 기기 코드 인증(베타)을 우선 사용하세요. 대화형 로그인 UI에서 기기 코드로 로그인 을 선택하거나 codex login --device-auth을 직접 실행하세요. 사용 중인 환경에서 기기 코드 인증이 작동하지 않으면 대체 방법 중 하나를 사용하세요.
권장: 기기 코드 인증(베타)
- ChatGPT 보안 설정(개인 계정) 또는 ChatGPT 워크스페이스 권한(워크스페이스 관리자)에서 기기 코드 로그인을 활성화하세요.
- Codex를 실행 중인 터미널에서 다음 중 하나를 선택하세요:
- 대화형 로그인 UI에서 기기 코드로 로그인 을 선택하세요.
codex login --device-auth을 실행하세요.
- 브라우저에서 링크를 열고 로그인한 다음 일회용 코드를 입력하세요.
사용 중인 환경에서 기기 코드 로그인을 사용할 수 없으면 아래의 대체 방법 중 하나를 사용하세요.
대체 방법: 로컬에서 인증한 후 인증 캐시 복사
브라우저가 있는 컴퓨터에서 로그인 절차를 완료할 수 있다면 캐시된 자격 증명을 헤드리스 컴퓨터로 복사할 수 있습니다.
- 브라우저 기반 로그인 절차를 사용할 수 있는 컴퓨터에서
codex login을 실행하세요. ~/.codex/auth.json에 로그인 캐시가 있는지 확인하세요.~/.codex/auth.json을 헤드리스 컴퓨터의~/.codex/auth.json으로 복사하세요.
~/.codex/auth.json에는 액세스 토큰이 포함되어 있으므로 비밀번호처럼 취급하세요. 커밋하거나 지원 티켓에 붙여 넣거나 채팅으로 공유하지 마세요.
OS가 ~/.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.jsonDocker 컨테이너로 복사하세요:
# 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 실행기에서 이 패턴을 더 고급 방식으로 활용하려면
CI/CD에서 Codex 계정 인증 유지(고급)를 참조하세요.
이 가이드에서는 정상 실행 중에 Codex가 auth.json을 갱신하도록 하고
업데이트된 파일을 다음 작업에 사용할 수 있도록 보관하는 방법을 설명합니다. 자동화에는 여전히 API key 사용이
기본 권장 방식입니다.
대체 방법: SSH를 통해 localhost 콜백 전달
로컬 컴퓨터와 원격 호스트 사이에서 포트를 전달할 수 있다면 Codex의 로컬 콜백 서버(기본값: localhost:1455)를 터널링하여 표준 브라우저 기반 절차를 사용할 수 있습니다.
- 로컬 컴퓨터에서 포트 전달을 시작하세요:
ssh -L 1455:localhost:1455 user@remote- 해당 SSH 세션에서
codex login을 실행하고 출력된 주소를 로컬 컴퓨터에서 여세요.
대체 모델 제공업체
구성 파일에서 사용자 지정 모델 제공업체를 정의할 때 다음 인증 방법 중 하나를 선택할 수 있습니다.
- OpenAI 인증:
requires_openai_auth = true을 설정하여 OpenAI 인증을 사용합니다. 그러면 ChatGPT 또는 API key로 로그인할 수 있습니다. 이 방식은 LLM 프록시 서버를 통해 OpenAI 모델에 접근할 때 유용합니다.requires_openai_auth = true인 경우 Codex는env_key을 무시합니다. - 환경 변수 인증:
env_key = "<ENV_VARIABLE_NAME>"을 설정하여<ENV_VARIABLE_NAME>이라는 로컬 환경 변수에서 공급자별 API key를 가져와 사용합니다. - 네이티브 게이트웨이 OAuth:
[model_providers.<id>.gateway_oauth]을 구성하여 조직의 ID 공급자를 통해 브라우저에서 로그인합니다. ChatGPT 로그인 여부와 관계없이 작동합니다. 게이트웨이 요구 사항과 구성은 네이티브 게이트웨이 OAuth를 참고하세요. - 명령 기반 인증:
[model_providers.<id>.auth]을 구성하여 설치된 자격 증명 헬퍼에서 토큰을 가져옵니다. - 인증 없음: 자격 증명이 필요하지 않은 로컬 모델의 경우
requires_openai_auth을 설정하지 않거나false로 설정하고,env_key,experimental_bearer_token,auth,gateway_oauth을 포함한 자격 증명 설정을 생략합니다.