2023년 3월부터 GitHub은 GitHub.com에 코드를 기여하는 모든 사용자에게 2단계 인증(2FA) 방식을 하나 이상 사용하도록 요구하고 있습니다. 자격이 있는 그룹에 속했다면 해당 그룹이 등록 대상으로 선택되었을 때 45일 간의 2FA 등록 기간이 시작되었음을 알리는 알림 이메일을 받았을 것이며, GitHub.com에 2FA 등록을 요청하는 배너가 표시되었을 것입니다. 알림을 받지 못했다면 2FA를 사용해야 하는 그룹은 아니지만, 사용하는 것을 적극 권장합니다.
필수 2FA 자격 정보
GitHub Enterprise Cloud에서 기여자임을 보여 주는 작업을 수행한 경우 계정이 필수 2FA로 선택됩니다. 적격 작업은 다음과 같습니다.
- 다른 사용자를 위한 앱 또는 작업 게시
- 리포지토리에 대한 릴리스 만들기
- 오픈 소스 보안 재단에서 추적하는 프로젝트와 같이 중요도가 높은 특정 리포지토리에 기여
- 중요도가 높은 리포지토리의 관리자 또는 기여자
- 리포지토리 또는 다른 사용자를 포함하는 조직의 조직 소유자
- 하나 이상의 패키지를 게시한 리포지토리의 관리자 또는 기여자
- 엔터프라이즈 관리자
GitHub는 계정 보안 기능 및 2FA 요구 사항에 대한 개선 사항을 지속적으로 평가하고 있으므로 이러한 기준은 시간이 지남에 따라 변경될 수 있습니다.
Note
계정에 교육 쿠폰이 활성화되어 있으면 필수 2FA에서 제외됩니다.
조직 및 엔터프라이즈용 필수 2FA 정보
개인 개발자와 광범위한 소프트웨어 개발 에코시스템의 보안을 개선하기 위해 GitHub 자체적으로 필수 2FA를 요구합니다. 관리자는 조직이나 엔터프라이즈에 가입하기 위한 요구 사항으로 2FA 사용을 요구할 수도 있지만 이러한 요구 사항은 이 프로그램과는 별개입니다. 2FA를 사용하도록 설정했거나 필요한 사용자를 찾으려면 "Enterprise에서 사용자 보기" 또는 "조직의 사용자가 2FA를 사용하도록 설정하였는지 여부 보기"을 참조하세요.
계정의 필수 2FA 자격은 다른 개인의 자격에 영향을 미치지 않습니다. 예를 들어 조직 소유자인 경우 계정이 필수 2FA 자격을 갖추어도 조직 내 다른 계정의 자격에는 영향을 미치지 않습니다.
Note
GitHub Enterprise Managed Users 및 온-프레미스 GitHub Enterprise Server 사용자는 2FA를 사용하도록 설정할 필요가 없습니다. 필수 2FA 사용은 GitHub.com에서 암호를 사용하는 사용자에게만 적용됩니다.
필수 2FA 사용 설정 실패 정보
45일 설정 기간 내에 2FA를 사용하도록 설정하지 않고 7일 유예 기간이 만료되도록 허용하면 2FA를 사용할 때까지 GitHub.com에 액세스할 수 없습니다. GitHub.com에 액세스하려고 하면 2FA를 사용하도록 설정하라는 메시지가 표시됩니다.
필수 2FA를 사용하도록 설정하지 못한 경우 계정에 속한 토큰은 중요한 자동화에서 사용되므로 계속 작동합니다. 이러한 토큰에는 personal access tokens 및 사용자를 대신하여 작동하도록 응용 프로그램에 발급된 OAuth 토큰이 포함됩니다. 2FA를 사용하도록 설정해도 계정에 발급된 토큰의 동작이 취소되거나 변경되지는 않습니다. 그러나 잠긴 계정은 2FA를 사용하도록 설정할 때까지 새 앱에 권한을 부여하거나 새 PAT를 만들 수 없습니다.
필수 2FA 메서드 정보
TOTP(시간 제약이 있는 일회성 암호) 앱을 기본 2FA 방법으로 설정하고 암호 또는 보안 키를 백업으로 추가하는 것이 좋습니다. 암호 또는 보안 키가 없으면 GitHub Mobile 앱도 좋은 백업 옵션입니다. SMS는 대부분의 국가에서 신뢰할 수 있지만 일부 위협 모델이 작동하지 않을 수 있는 보안 위험이 있습니다.
현재 암호 또는 보안 키는 분실하기 쉽고 충분히 다양한 디바이스에서 동기화를 지원하지 않으므로 기본 2FA 메서드로 지원되지 않습니다. 암호가 더 널리 채택되고 동기화 지원이 더 널리 사용되면 기본 방법으로 지원할 예정입니다.
Note
GitHub.com에서 쿠키를 유지하는 것이 좋습니다. 브라우저가 매일 쿠키를 초기화하도록 설정하면 이전에 해당 디바이스를 사용했음을 안전하게 증명하는 데 _device_id
쿠키가 사용되므로 계정 복구 용도로 확인된 장치를 보유할 수 없습니다. 자세한 내용은 "2FA 자격 증명이 손실된 경우 계정 복구"을(를) 참조하세요.
TOTP 앱 및 필수 2FA 정보
TOTP 앱은 GitHub에 권장되는 2FA 요소입니다. TOTP 앱 구성에 대한 자세한 내용은 "2단계 인증 구성"을 참조하세요.
모바일 장치에 앱을 다운로드하고 싶지 않으면 여러 플랫폼에서 실행되는 독립 실행형 TOTP 앱에 대한 여러 옵션이 있습니다. 데스크톱 응용 프로그램의 경우 KeePassXC를 사용하는 것이 좋으며 브라우저 기반 플러그 인의 경우 1Password를 사용하는 것이 좋습니다.
RFC 6238과 호환되는 코드를 생성하는 앱을 수동으로 설정할 수도 있습니다. TOTP 앱을 수동으로 설정하는 방법에 대한 자세한 내용은 "2단계 인증 구성"을 참조하세요. RFC 6238에 대한 자세한 내용은 IETF 설명서의 TOTP: 시간 제약이 있는 일회성 암호 알고리즘을 참조하세요.
Note
2FA에 FreeOTP를 사용하는 경우 약한 암호화 매개 변수에 대한 경고가 표시될 수 있습니다. GitHub는 80비트 비밀을 사용하여 이전 버전의 Google Authenticator와의 호환성을 보장합니다. 80비트는 HOTP RFC에서 권장하는 128비트보다 낮지만, 현재는 이를 변경할 계획이 없으며 이 메시지를 무시하는 것이 좋습니다. 자세한 내용은 IETF 설명서의 HOTP: HMAC 기반 일회성 암호 알고리즘을 참조하세요.
SAML SSO 및 필수 2FA 정보
필수 2FA로 선택된 경우 회사에서 이미 2FA를 사용하는 SSO(Single Sign-On)를 요구하는 경우에도 GitHub.com에서 2FA에 등록해야 합니다. 2FA를 사용하는 SSO는 조직 또는 엔터프라이즈 소유 리소스를 보호하는 강력한 방법이지만 조직 또는 엔터프라이즈와 관련이 없는 GitHub.com의 사용자 소유 콘텐츠를 보호하지 않으며 사용자의 프로필 및 설정을 보호하지도 않습니다.
GitHub에서는 초기 인증 및 중요한 작업에 대해서만 2FA를 수행할 것을 요구하므로 GitHub에 액세스하기 위해 매일 회사 2FA를 수행해야 하는 경우에도 GitHub을 통해 두 번째로 2FA를 수행할 필요가 거의 없습니다. 중요한 작업에 대한 자세한 내용은 "sudo 모드"를 참조하세요.
이메일 인증 및 필수 2FA 정보
GitHub.com에 로그인하면 이메일 인증은 2FA로 간주되지 않습니다. 계정의 이메일 주소는 계정 복구의 한 형태인 암호 재설정에 사용됩니다. 공격자가 이메일 받은 편지함에 액세스할 수 있으면 계정의 암호를 재설정하고 이메일 장치 인증 확인을 통과하여 계정 보호를 단일 요소로 줄일 수 있습니다. 이 시나리오를 방지하려면 두 번째 요소가 필요하므로 두 번째 요소는 이메일 받은 편지함과 구별되어야 합니다. 2FA를 사용하도록 설정하면 로그인 시 이메일 인증을 더 이상 수행하지 않습니다.
서비스 계정 및 필수 2FA 정보
필수 2단계 인증을 위해 선택된 봇 및 서비스 계정과 같은 조직의 무인 또는 공유 액세스 계정은 2FA에 등록해야 합니다. 2FA를 사용하도록 설정해도 서비스 계정에 발급된 토큰의 동작이 취소되거나 변경되지는 않습니다. GitHub에서는 서비스 계정의 TOTP 비밀을 공유 자격 증명 스토리지에 안전하게 저장할 것을 권장합니다. 자세한 내용은 "2단계 인증을 사용한 봇 및 서비스 계정 관리"을(를) 참조하세요.
필수 2FA를 통한 개인 정보
필수 2FA로 선택되었다고 해서 전화번호로 GitHub에 제공해야 하는 것은 아닙니다 . 2FA에 SMS를 사용하는 경우에만 전화번호를 제공해야 합니다. 대신 TOTP 앱을 기본 2FA 메서드로 구성하는 것이 좋습니다. 자세한 내용은 "2단계 인증 구성"을(를) 참조하세요.
Note
사용 가능한 SMS 옵션에 해당 지역이 나열되지 않을 수 있습니다. 지역별로 SMS 배달 성공률을 모니터링하고 배달율이 낮은 지역에 대한 설정을 허용하지 않습니다. 목록에 지역이 표시되지 않으면 TOTP 앱을 대신 설정해야 합니다. SMS 지원 지역에 대한 자세한 내용은 “SMS 인증이 지원되는 국가”를 참조하세요.