Skip to main content

이 버전의 GitHub Enterprise는 다음 날짜에 중단되었습니다. 2024-03-26. 중요한 보안 문제에 대해서도 패치 릴리스가 이루어지지 않습니다. 더 뛰어난 성능, 향상된 보안, 새로운 기능을 위해 최신 버전의 GitHub Enterprise Server로 업그레이드합니다. 업그레이드에 대한 도움말은 GitHub Enterprise 지원에 문의하세요.

엔터프라이즈에 대한 SAML Single Sign-On 구성

IdP(ID 공급자)를 통해 SAML SSO(Single Sign-On)을 구성하여 GitHub Enterprise Server 인스턴스에 대한 액세스를 제어 및 보호할 수 있습니다.

누가 이 기능을 사용할 수 있는 있나요?

Site administrators can configure SAML SSO for a GitHub Enterprise Server instance.

SAML SSO 정보

SAML SSO를 사용하면 SAML IdP에서 GitHub Enterprise Server 인스턴스에 대한 액세스를 중앙에서 제어하고 보호할 수 있습니다. 인증되지 않은 사용자가 브라우저에서 GitHub Enterprise Server 인스턴스에 방문하면 GitHub Enterprise Server가 사용자를 SAML IdP로 리디렉션하여 인증을 받습니다. IdP에서 계정으로 성공적으로 인증을 받은 후 IdP에서 사용자는 GitHub Enterprise Server 인스턴스(으)로 다시 리디렉션됩니다. GitHub Enterprise Server는 IdP에서 응답의 유효성을 검사한 다음, 사용자에게 액세스 권한을 부여합니다.

사용자가 IdP에서 성공적으로 인증을 받으면 GitHub Enterprise Server 인스턴스에 대한 사용자의 SAML 세션이 브라우저에서 24시간 동안 활성화됩니다. 24시간이 지나면 사용자는 IdP에서 다시 인증을 받아야 합니다.

JIT 프로비저닝을 사용하면서 IdP에서 사용자를 제거하는 경우 GitHub Enterprise Server 인스턴스에서 사용자 계정을 수동으로 일시 중단해야 합니다. 그러지 않으면 계정의 소유자는 액세스 토큰 또는 SSH 키를 사용하여 계속 인증할 수 있습니다. 자세한 내용은 "사용자 일시 중단 및 일시 중단 취소"을 참조하세요.

지원되는 ID 공급자

GitHub Enterprise Server는 SAML 2.0 표준을 구현하는 IdP가 있는 SAML SSO를 지원합니다. 자세한 내용은 OASIS 웹 사이트의 SAML Wiki를 참조하세요.

GitHub는 다음 IdP를 공식적으로 지원하고 내부적으로 테스트합니다.

  • Microsoft AD FS(Active Directory Federation Services)
  • Microsoft Entra ID(이전의 Azure AD)
  • Okta
  • OneLogin
  • PingOne
  • Shibboleth

Entra ID를 엔터프라이즈에 연결하는 방법에 대한 자세한 내용은 Microsoft Docs의 자습서: GitHub Enterprise 서버와 Microsoft Entra SSO 통합을 참조하세요.

SAML을 사용하는 사용자 이름 고려 사항

GitHub Enterprise Server에서는 외부 인증 공급자 값을 정규화하여 GitHub Enterprise Server 인스턴스에서 각 새 개인 계정의 사용자 이름을 확인합니다. 자세한 내용은 "외부 인증에 대한 사용자 이름 고려 사항"을(를) 참조하세요.

SAML SSO 구성

GitHub Enterprise Server 인스턴스에 SAML 인증을 사용을 설정 또는 중지하거나 기존 구성을 편집할 수 있습니다. 관리 콘솔에서 GitHub Enterprise Server에 대한 인증 설정을 보고 편집할 수 있습니다. 자세한 내용은 "관리 웹 UI에서 인스턴스 등록"을(를) 참조하세요.

참고: GitHub는 스테이징 환경에서 인증을 위한 새 구성을 확인하는 것을 강력하게 권장합니다. 구성이 잘못되면 GitHub Enterprise Server 인스턴스에 가동 중지 시간이 발생할 수 있습니다. 자세한 내용은 "스테이징 인스턴스 설정"을 참조하세요.

  1. 페이지의 오른쪽 상단에 있는 GitHub Enterprise Server의 관리 계정에서 을 클릭합니다.

  2. “Site admin”(사이트 관리자) 페이지에 아직 없는 경우 왼쪽 상단에서 Site admin(사이트 관리자)을 클릭합니다.

  3. " 사이트 관리자" 사이드바에서 관리 콘솔 을 클릭합니다.

  4. "설정" 사이드바에서 인증을 클릭합니다.

  5. “인증”에서 SAML을 선택합니다.

  6. 필요에 따라 외부 인증 시스템에 계정이 없는 사용자가 기본 제공 인증으로 로그인할 수 있도록 하려면 기본 제공 인증 허용을 선택합니다. 자세한 내용은 "공급자 외부 사용자에게 기본 제공 인증 허용"을 참조하세요.

  7. 필요에 따라 요청되지 않은 응답 SSO를 사용하도록 설정하려면 IdP 시작 SSO를 선택합니다. 기본적으로 GitHub Enterprise Server는 원치 않는 IdP(ID 공급자) 시작 요청에 대해 IdP에 AuthnRequest로 회신합니다.

    참고: 이 값을 선택되지 않음 상태로 유지하는 것이 좋습니다. 드물게 SAML 구현에서 서비스 공급자가 시작한 SSO를 지원하지 않는 경우와 GitHub Enterprise 지원에서 권고하는 경우에 이 기능을 사용하도록 설정해야 합니다.

  8. 필요에 따라 SAML 공급자가 GitHub Enterprise Server 인스턴스에서 사용자에 대한 관리자 권한을 결정하지 않게 하려면 관리자 강등/승격 사용 안 함을 선택합니다.

  9. 필요에 따라 GitHub Enterprise Server 인스턴스가 SAML IdP에서 암호화된 어설션을 받도록 허용하려면 암호화된 어설션 필요를 선택합니다.

    IdP가 암호화된 어설션을 지원하고 관리 콘솔의 암호화 및 키 전송 메서드가 IdP에 구성된 값과 일치하는지 확인해야 합니다. 또한 IdP에 GitHub Enterprise Server 인스턴스의 퍼블릭 인증서를 제시해야 합니다. 자세한 내용은 "암호화된 어설션 사용"을(를) 참조하세요.

  10. “Single Sign-On URL” 필드에서 Single sign-On 요청에 대한 IdP에 HTTP 또는 HTTPS 엔드포인트를 입력합니다. 이 값은 IdP 구성에서 제공됩니다. 내부 네트워크에서만 호스트를 사용할 수 있는 경우 내부 이름 서버를 사용할 수 있도록 GitHub Enterprise Server 인스턴스를 구성해야 할 수 있습니다.

  11. 필요에 따라 발급자 필드에 SAML 발급자의 이름을 입력합니다. 이렇게 하면 GitHub Enterprise Server 인스턴스에 전송된 메시지의 신뢰성이 확인됩니다.

  12. 서명 메서드다이제스트 메서드 드롭다운 메뉴를 선택한 다음 SAML 발급자가 사용하는 해시 알고리즘을 클릭하여 GitHub Enterprise Server 인스턴스에서 요청의 무결성을 확인합니다.

  13. 이름 식별자 형식 드롭다운 메뉴를 선택한 다음 형식을 클릭합니다.

  14. “확인 인증서”에서 파일 선택을 클릭한 다음 인증서를 선택하여 IdP에서 SAML 응답의 유효성을 검사합니다.

  15. 필요한 경우 “사용자 특성”에서 IdP와 일치하도록 SAML 특성 이름을 수정하거나 기본 이름을 적용합니다.

추가 참고 자료