Note
GitHub Enterprise Server에 대한 SCIM은 현재 베타 버전이며 변경될 수 있습니다. GitHub은(는) 스테이징 인스턴스로 먼저 테스트하는 것이 좋습니다. "스테이징 인스턴스 설정" 항목을 참조하세요.
GitHub Enterprise Server에 대한 사용자 프로비저닝 정보
GitHub Enterprise Server 인스턴스에 대해 SSO(SAML Single Sign-On)를 사용하는 경우 IDP에서 애플리케이션을 할당하거나 할당 해제할 때 사용자 계정을 자동으로 생성하거나 일시 중단하고 인스턴스에 대한 액세스를 허용하도록 SCIM을 구성할 수 있습니다. SCIM에 관한 자세한 내용은 IETF 웹 사이트에서 SCIM(System for Cross-domain Identity Management): 프로토콜(RFC 7644)을 참조하세요.
SCIM을 사용하여 사용자 프로비저닝을 구성하지 않으면 사용자에게 애플리케이션을 할당하거나 할당 취소할 때 IdP가 GitHub Enterprise Server와 자동으로 통신하지 않습니다. SCIM을 사용하지 않으면 GitHub Enterprise Server는 누군가가 처음으로 GitHub Enterprise Server로 이동하고 IdP를 통해 인증하여 로그인할 때 SAML JIT(Just-In-Time) 프로비저닝을 사용하여 사용자 계정을 만듭니다.
엔터프라이즈에 대한 프로비저닝을 구성하려면 GitHub Enterprise Server에서 프로비저닝을 사용하도록 설정해야 합니다. 은(는) IdP에 프로비전 애플리케이션을 설치하고 구성하거나 SCIM에 대한 GitHub의 REST API 엔드포인트를 사용하여 수동으로 SCIM 프로비저닝을 구성합니다.
지원되는 ID 공급자
GitHub은(는) 일부 ID 관리 시스템 개발자와 협력하여 GitHub Enterprise Server(과)와의 "포장된 경로" 통합을 제공합니다. 구성을 간소화하고 완전한 지원을 보장하기 위해, 인증 및 프로비전 모두에 단일 파트너 IdP를 사용합니다.
파트너 ID 공급자
다음 IDP는 파트너 IDP입니다. SAML 인증 및 SCIM 프로비저닝을 모두 구성하는 데 사용할 수 있는 애플리케이션을 제공합니다.
- Microsoft Entra ID
- Okta
- PingFederate(베타)
인증 및 프로비전 모두에 단일 파트너 IdP를 사용하는 경우 GitHub은(는) 파트너 IdP의 애플리케이션과 의 IdP 통합을 지원합니다. PingFederate 지원은 베타 버전입니다.
다른 ID 관리 시스템
인증 및 프로비전 모두에 단일 파트너 IdP를 사용할 수 없는 경우, 다른 ID 관리 시스템 또는 여러 시스템을 조합하여 사용할 수 있습니다. 시스템은 다음을 수행해야 합니다.
- GitHub의 통합 지침 준수
- SAML 2.0 사양을 준수하는 SAML을 사용한 인증 제공
- SCIM 2.0 사양을 준수하고 GitHub의 REST API와 통신하는 SCIM을 사용한 사용자 수명 주기 관리를 제공합니다(REST API를 사용하여 SCIM으로 사용자 및 그룹 프로비전 참조).
SCIM을 사용하여 사용자 수명 주기를 어떻게 관리합니까?
SCIM을 사용하면 IdP에서 사용자 계정의 수명 주기를 관리할 수 있습니다.
- 새 사용자를 프로비전하면 IdP는 GitHub Enterprise Server 인스턴스에서 계정을 만들고 사용자에게 온보딩 이메일을 보내라는 메시지를 표시합니다. IdP에서 애플리케이션에 그룹을 할당하는 경우 IdP는 그룹의 모든 구성원에 대한 계정을 프로비저닝합니다.
- IdP에서 사용자 ID와 관련된 정보를 업데이트하면 IdP가 GitHub의 사용자 계정을 업데이트합니다.
- IdP 애플리케이션에서 사용자를 할당 해제하거나 IdP에서 사용자 계정을 비활성화하면 IdP는 GitHub과(와) 통신하여 모든 세션을 무효화하고 구성원의 계정을 비활성화합니다. 사용하지 않도록 설정된 계정의 정보는 유지되며 사용자 이름은 원래 사용자 이름의 해시로 변경됩니다.
- 사용자를 IdP 애플리케이션에 다시 할당하거나 IdP에서 계정을 다시 활성화하면 사용자 계정이 다시 활성화되고 사용자 이름이 복원됩니다.
팀 및 조직 멤버십, 리포지토리 액세스 및 GitHub Enterprise Server에 대한 권한을 구성하려면 IdP에서 그룹을 사용할 수 있습니다. 자세한 내용은 "ID 공급자 그룹을 사용하여 팀 멤버 자격 관리"을(를) 참조하세요.
SCIM을 사용하도록 설정하면 GitHub Enterprise Server에서 SCIM 프로비저닝된 사용자를 직접 삭제, 일시 중단 또는 승격할 수 없습니다. IdP에서 이러한 프로세스를 관리해야 합니다.
내 인스턴스의 기존 사용자는 어떻게 됩니까?
현재 SAML SSO를 사용하고 SCIM을 사용하도록 설정하는 경우 SCIM 프로비저닝 중에 기존 사용자에게 어떤 일이 발생하는지 알고 있어야 합니다.
- SCIM을 사용하도록 설정하면 SAML 연결 ID를 가진 사용자는 SCIM에서 ID를 프로비전할 때까지 로그인할 수 없습니다.
- 인스턴스가 SCIM 요청을 받으면
userName
SCIM 필드를 GitHub 사용자 이름과 비교하여 기존 사용자와 SCIM ID가 일치시킵니다. 일치하는 사용자 이름을 가진 사용자가 없으면 GitHub에서 새 사용자를 만듭니다. - GitHub이(가) IDP에서 사용자를 성공적으로 식별했지만 전자 메일 주소, 이름 또는 성과 같은 계정 세부 정보가 일치하지 않으면 인스턴스는 IDP의 값으로 세부 정보를 덮어씁니다. SCIM에서 프로비전된 기본 이메일 이외의 이메일 주소도 사용자 계정에서 삭제됩니다.
SAML 인증 중에는 어떤 일이 일어나나요?
IdP 관리자가 사용자에게 GitHub Enterprise Server 인스턴스에 대한 액세스 권한을 부여하면 사용자가 IdP를 통해 인증하여 SAML SSO를 사용하여 GitHub Enterprise Server에 액세스할 수 있습니다.
- 사용자가 SAML을 통해 인증하는 경우 사용자를 SAML ID와 연결하기 위해 GitHub은(는) IdP(또는 구성한 다른 값)의 정규화된
NameID
선언을 계정의 사용자 이름과 비교합니다. 정규화에 대한 자세한 내용은 외부 인증에 대한 사용자 이름 고려 사항을(를) 참조하세요. - 인스턴스에 일치하는 사용자 이름을 가진 계정이 없으면 사용자가 로그인하지 못합니다.
- GitHub Enterprise Server은(는) IDP의 SAML
NameId
클레임과 인스턴스의 SCIM에서 프로비전된 각 사용자 계정에 대한 SCIMuserName
특성을 비교합니다. - 또한 Entra ID의 경우 GitHub Enterprise Server은(는) SAML 요청의 개체 식별자를 기존 SCIM 외부 ID와 비교합니다.
- GitHub Enterprise Server은(는) IDP의 SAML
- 환경에서 사용자를 고유하게 식별하는 데
NameID
을(를) 이용하지 않는 경우, 사이트 관리자는 인스턴스에 사용자 지정 사용자 특성을 구성할 수 있습니다. GitHub Enterprise Server은(는) SCIM이 구성될 때 이 매핑을 따릅니다. 사용자 특성 매핑에 대한 자세한 내용은 엔터프라이즈에 대한 SAML Single Sign-On 구성을(를) 참조하세요.
SCIM을 사용하지 않도록 설정하면 어떻게 되나요?
다음 중 어떤 일이 발생하는 경우 인스턴스에서 SCIM이 비활성화됩니다.
- 엔터프라이즈 설정의 "인증 보안" 페이지에서 SCIM 구성 사용 확인란의 선택을 취소합니다.
- SAML 라디오 단추는 관리 콘솔의 "인증" 섹션에서 선택되지 않습니다.
- SAML 발급자 또는 Single Sign-On URL 필드는 관리 콘솔의 "인증" 섹션에서 업데이트됩니다.
인스턴스에서 SCIM을 사용하지 않도록 설정한 경우
- 인스턴스의 SCIM API 엔드포인트에 대한 요청은 더 이상 성공하지 않습니다.
- SCIM 프로비전된 사용자는 변경되지 않고 일시 중단되지 않습니다.
- 사이트 관리자는 사이트 관리자 대시보드에서 SCIM 프로비저닝된 사용자의 수명 주기(예: 일시 중단 및 삭제)를 관리할 수 있습니다.
- 사용하도록 설정된 경우 사용자는 여전히 SAML을 통해 로그온할 수 있습니다.
- 사용자는 외부 ID 레코드에서 연결을 끊고 레코드가 삭제됩니다.
시작
SCIM을 시작하려면 다음을 수행합니다.
- SCIM 프로비저닝을 구성하여 사용자 관리에서 사용할 IdP에 관계없이 필요한 초기 설정을 완료합니다.
- IdP에서 설정을 구성합니다.
- 인증 및 프로비저닝에 파트너 IdP를 사용하는 경우 IdP에 대한 가이드를 따릅니다.
- 그렇지 않으면 REST API를 사용하여 SCIM으로 사용자 및 그룹 프로비전에 설명된 대로 REST API와 SCIM 통합을 설정합니다.