Personal access tokens
Personal access tokens
개인 액세스 토큰(Pat)은 Docker CLI 인증에서 비밀번호의 안전한 대안을 제공해요. PAT를 사용해 자동화 시스템, CI/CD 파이프라인, 개발 도구를 인증할 수 있으며 Docker Hub 비밀번호를 노출하지 않아요.
출처: 문서
본문
구독: Personal, Pro / 대상: 개인
주요 이점 (Key benefits)
PAT는 비밀번호 인증보다 상당한 보안 이점을 제공해요.
- 향상된 보안: 토큰 사용을 조사하고, 의심스러운 토큰을 비활성화하며, 시스템이 손상된 경우 계정을 위험에 빠뜨릴 관리 작업을 막을 수 있어요.
- 더 나은 자동화: 각 통합에 대해 특정 권한을 가진 여러 토큰을 발급하고, 더 이상 필요 없을 때 각각 독립적으로 폐기할 수 있어요.
- 2단계 인증 호환성: 2단계 인증을 켠 상태에서도 2FA 보호를 우회하지 않고 안전한 CLI 접근을 제공해요.
- 사용 추적: 토큰이 언제 어떻게 사용되는지 모니터링해 잠재적 보안 문제나 사용되지 않는 자동화를 식별할 수 있어요.
개인 액세스 토큰은 누가 사용해야 하나요?
이런 흔한 시나리오에 PAT를 사용해요.
- 개발 워크플로: 로컬 개발 중 Docker CLI 인증
- CI/CD 파이프라인: 지속적 통합 시스템에서 이미지 빌드·배포 자동화
- 자동화 스크립트: 자동 배포·백업 스크립트에서 이미지 push·pull
- 개발 도구: IDE, 컨테이너 관리 도구, 모니터링 시스템과 Docker Hub 접근 통합
- 2단계 인증: 2FA를 켠 상태에서 CLI 접근에 필요
참고: 조직 전체 자동화에는 개별 사용자 계정에 묶이지 않는 조직 액세스 토큰(organization access tokens)을 고려해요.
개인 액세스 토큰 만들기 (Create a personal access token)
중요: 액세스 토큰은 비밀번호처럼 취급하고 안전하게 보관하세요. 토큰을 자격 증명 관리자에 저장하고 소스 코드 저장소에 커밋하지 마세요.
개인 액세스 토큰을 만들려면:
- Docker Home에 로그인해요.
- 오른쪽 위의 아바타를 선택하고 드롭다운 메뉴에서 Account settings를 선택해요.
- Personal access tokens을 선택해요.
- Generate new token을 선택해요.
- 토큰을 구성해요.
- Description: 토큰의 목적을 나타내는 설명적인 이름 사용
- Expiration date: 보안 정책에 따라 만료 날짜 설정
- Access permissions:
Read,Write,Delete
- Generate를 선택해요.
- 화면에 나타나는 토큰을 복사해 저장해요. 화면을 나가면 토큰을 다시 검색할 수 없어요.
개인 액세스 토큰 사용하기 (Use personal access tokens)
개인 액세스 토큰으로 Docker CLI에 로그인해요.
$ docker login --username <YOUR_USERNAME>
Password: [paste your PAT here]
비밀번호를 묻는 메시지가 나오면 Docker Hub 비밀번호 대신 개인 액세스 토큰을 입력해요.
개인 액세스 토큰 수정하기 (Modify personal access tokens)
참고: 기존 개인 액세스 토큰의 만료 날짜는 편집할 수 없어요. 새 만료 날짜를 설정하려면 새 PAT를 만들어야 해요.
필요에 따라 토큰 이름을 바꾸거나, 활성화·비활성화하거나, 삭제할 수 있어요. 계정 설정에서 토큰을 관리해요.
- Docker Home에 로그인해요.
- 오른쪽 위의 아바타를 선택하고 드롭다운 메뉴에서 Account settings를 선택해요.
- Personal access tokens을 선택해요.
이 페이지는 모든 토큰의 개요를 보여주고, 토큰이 수동으로 생성됐는지 자동 생성(auto-generated)됐는지 나열해요. 토큰의 범위, 활성·비활성 토큰, 생성 시각, 마지막 사용 시각, 만료 날짜도 볼 수 있어요.
토큰 행 맨 오른쪽의 actions 메뉴를 선택한 뒤 Deactivate나 Activate, Edit, Delete를 선택해 토큰을 수정해요. 토큰을 편집한 후 Save token을 선택해요.
자동 생성된 토큰 (Auto-generated tokens)
Docker Desktop은 로그인할 때 인증 토큰을 자동으로 만들어요. 특성은 다음과 같아요.
- 자동 생성: Docker Desktop에 로그인할 때 생성
- 전체 권한: Read, Write, Delete 접근 포함
- 세션 기반: Docker Desktop 세션이 만료되면 자동 제거
- 계정 한도: 계정당 최대 5개
- 자동 정리: 새 토큰이 생성되면 이전 토큰 삭제
필요하면 자동 생성 토큰을 수동으로 삭제할 수 있지만, Docker Desktop을 사용하면 다시 생성돼요.
공정 사용 정책 (Fair use policy)
개인 액세스 토큰을 사용할 때, 과도한 토큰 생성은 스로틀링이나 추가 비용으로 이어질 수 있다는 점을 알아야 해요. Docker는 공정한 리소스 할당과 서비스 품질 유지를 위해 과도한 PAT 사용이 있는 계정에 제한을 부과할 권리를 보유해요.
공정 사용을 위한 모범 사례:
- 단일 목적 토큰을 많이 만들기보다 유사한 사용 사례에 토큰을 재사용
- 사용하지 않는 토큰은 정기적으로 삭제
- 조직 전체 자동화에는 조직 액세스 토큰 사용
- 최적화 기회를 찾기 위해 토큰 사용량 모니터링