- 오류:
HTTP Basic: Access denied. If a password was provided for Git authentication ...
- 오류: “invalid pin code”
- 오류: “Permission denied (publickey)” 복구 코드를 재생성할 때
- 복구 옵션 및 2FA 재설정
이중 인증 문제 해결
오류: HTTP Basic: Access denied. If a password was provided for Git authentication ...
요청을 할 때 다음과 같은 오류가 발생할 수 있습니다:
HTTP Basic: Access denied. If a password was provided for Git authentication, the password was incorrect or you're required to use a token instead of a password. If a token was provided, it was either incorrect, expired, or improperly scoped.
이 오류는 다음과 같은 상황에서 발생합니다:
- 2FA가 활성화되어 있고 사용자 이름과 비밀번호로 인증을 시도한 경우.
- 2FA가 활성화되어 있지 않고 요청과 함께 잘못된 사용자 이름 또는 비밀번호를 보낸 경우.
- 2FA가 활성화되어 있지 않지만 관리자가 모든 사용자에 대한 2FA 강제 설정을 활성화한 경우.
- 2FA가 활성화되어 있지 않지만 관리자가 HTTP(S)에서 Git에 대한 비밀번호 인증을 활성화한 설정을 비활성화한 경우.
대신 인증할 수 있는 방법은:
-
개인 접근 토큰 (PAT) 사용:
- HTTP(S)에서 Git 요청을 위해서는
read_repository
또는write_repository
범위의 PAT가 필요합니다. -
GitLab 컨테이너 레지스트리 요청을 위해서는
read_registry
또는write_registry
범위의 PAT가 필요합니다. -
의존성 프록시 요청을 위해서는
read_registry
및write_registry
범위의 PAT가 필요합니다.
- HTTP(S)에서 Git 요청을 위해서는
- LDAP을 구성한 경우, LDAP 비밀번호 사용
- OAuth 자격 증명 도우미 사용.
오류: “invalid pin code”
invalid pin code
오류가 발생하면 이는 인증 애플리케이션과 GitLab 인스턴스 간의 시간 동기화 문제를 나타낼 수 있습니다.
시간 동기화 문제를 피하려면, 코드를 생성하는 장치에서 시간 동기화를 활성화하세요. 예를 들어:
- Android (Google Authenticator):
- Google Authenticator에서 기본 메뉴로 이동합니다.
- 설정을 선택합니다.
- 코드의 시간 보정을 선택합니다.
- 지금 동기화를 선택합니다.
- iOS:
- 설정으로 이동합니다.
- 일반을 선택합니다.
- 날짜 및 시간을 선택합니다.
- 자동 설정을 활성화합니다. 이미 활성화되어 있다면, 비활성화한 후 몇 초 기다렸다가 다시 활성화합니다.
오류: “Permission denied (publickey)” 복구 코드를 재생성할 때
SSH 키를 사용하여 새로운 복구 코드를 생성하려고 시 할 때 Permission denied (publickey)
오류가 발생하면, 기본이 아닌 SSH 키 쌍 파일 경로를 사용하고 있을 수 있습니다. 이 경우, ssh-agent
를 사용하여 개인 SSH 키를 수동으로 등록해야 할 수 있습니다.
복구 옵션 및 2FA 재설정
코드 생성 장치에 액세스할 수 없고 계정에 로그인할 수 없는 경우, 다음의 복구 옵션이 제공됩니다:
- 2FA를 활성화할 때 복구 코드를 저장한 경우, 저장된 복구 코드를 사용하세요.
- 복구 코드는 없지만 SSH 키가 있는 경우, SSH를 사용하여 새로운 복구 코드 생성하세요.
- 복구 코드나 SSH 키가 없으면, 계정의 2FA를 비활성화하고 재설정하세요.
저장된 복구 코드 사용하기
복구 코드를 사용하려면:
-
GitLab 로그인 페이지에서 사용자 이름 또는 이메일과 비밀번호를 입력합니다.
-
2단계 인증 코드 입력을 요구받았을 때, 복구 코드를 입력합니다.
복구 코드를 사용한 후에는 다시 사용할 수 없습니다. 저장된 다른 복구 코드는 여전히 사용할 수 있습니다.
SSH를 사용하여 새로운 복구 코드 생성하기
2FA를 활성화할 때 복구 코드를 저장하는 것을 잊어버리고 SSH 키를 GitLab 계정에 추가한 경우, SSH로 새로운 복구 코드 집합을 생성할 수 있습니다:
-
터미널에서 다음 명령어를 실행하세요:
ssh git@gitlab.com 2fa_recovery_codes
셀프 관리 인스턴스에서는 위 명령어의
gitlab.com
을 GitLab 서버 호스트 이름(gitlab.example.com
)으로 바꾸세요. -
새 코드를 생성할 것인지 확인하라는 메시지가 나타납니다. 이 프로세스는 이전에 저장된 코드를 무효화합니다. 예를 들어:
Are you sure you want to generate new two-factor recovery codes? Any existing recovery codes you saved will be invalidated. (yes/no) yes Your two-factor authentication recovery codes are: 119135e5a3ebce8e 11f6v2a498810dcd 3924c7ab2089c902 e79a3398bfe4f224 34bd7b74adbc8861 f061691d5107df1a 169bf32a18e63e7f b510e7422e81c947 20dbed24c5e74663 df9d3b9403b9c9f0 During sign in, use one of the codes above when prompted for your two-factor code. Then, visit your Profile Settings and add a new device so you do not lose access to your account again.
-
GitLab 로그인 페이지로 가서 사용자 이름 또는 이메일과 비밀번호를 입력합니다. 2단계 인증 코드 입력 요청이 나타나면 명령줄 출력에서 얻은 복구 코드 중 하나를 입력합니다.
로그인 후 즉시 새로운 장치를 사용하여 2FA를 설정하세요.
귀하의 계정에서 2FA 비활성화 및 재설정하기
다른 방법이 불가능한 경우, GitLab 글로벌 관리자에게 귀하의 계정에 대한 2FA 비활성화를 요청하는 지원 티켓을 생성하세요.
이 서비스는 GitLab.com 구독 계정에만 제공됩니다. 자세한 내용은 블로그 게시물을 참조하세요.
-
GitLab 지원으로 이동합니다.
-
티켓 제출을 선택합니다.
-
가능한 경우 귀하의 계정에 로그인합니다.
-
문제 드롭다운 목록에서 GitLab.com 사용자 계정 및 로그인 문제를 선택합니다.
-
지원 양식의 필드를 작성합니다.
-
제출을 선택합니다.
이 설정을 비활성화하면 귀하의 계정이 덜 안전한 상태가 됩니다.
가능한 한 빨리 로그인하고 2FA를 다시 활성화해야 합니다.
유료 요금제의 네임스페이스의 최상위 소유자인 경우, 엔터프라이즈 사용자의 2FA를 비활성화할 수 있습니다. 자세한 내용은 2단계 인증 비활성화를 참조하세요.