LDAP에서 SAML 및 SCIM으로 마이그레이션 정보
GitHub Enterprise Server 인스턴스에서 현재 LDAP 인증을 사용하는 경우 향상된 사용자 수명 주기 관리 기능을 위해 SCIM 프로비저닝을 사용하여 SAML SSO(Single Sign-On)로 마이그레이션할 수 있습니다. 이 마이그레이션을 통해 IdP(ID 공급자)에서 사용자 계정을 자동으로 프로비전, 업데이트 및 프로비전 해제할 수 있습니다.
참고
SAML 또는 LDAP를 사용할 수 있지만, 둘 다 사용할 수는 없습니다.
**사전 요구 사항:**
- GitHub Enterprise Server의 사이트 관리자 권한이 필요합니다.
- SAML ID 공급자에 대한 관리 액세스 권한이 있어야 합니다.
- IdP는 SAML 2.0 및 SCIM 2.0 프로토콜을 지원해야 합니다.
- 마이그레이션을 시작하기 전에 인스턴스의 백업을 완료해야 합니다.
SCIM 프로비전에는 필수 구성 요소로 SAML 인증이 필요하므로 이 마이그레이션에는 다음과 같은 네 가지 개별 단계가 포함됩니다.
-
**SAML 인증으로 마이그레이션**: LDAP를 SAML SSO로 대체합니다. -
**SAML 테스트 및 확인**: 인증이 작동하고 사용자가 올바르게 연결되는지 확인합니다. -
**SCIM 프로비저닝 사용**: 자동화된 사용자 관리 기능을 추가합니다. -
**SCIM 테스트 및 확인**: 기존 계정에 대한 프로비저닝 링크 ID를 확인합니다.
이 문서에서는 SAML 인증 및 SCIM 프로비저닝에 대해 잘 알고 있다고 가정합니다. 이러한 항목에 대한 자세한 내용은 엔터프라이즈에 대한 SAML Single Sign-On 구성 및 GitHub Enterprise Server에서 SCIM을 사용하여 사용자 프로비저닝 정보을 참조하세요.
1. LDAP 및 SCIM 사용자 만들기 패턴 이해
마이그레이션을 시작하기 전에 GitHub Enterprise Server에서 LDAP와 SCIM이 사용자 관리를 처리하는 방법의 주요 차이점을 이해하는 것이 중요합니다.
| 특성 | LDAP | SCIM |
|---|
**어플라이언스 구성** | 관리 콘솔에서 사용자 ID 특성(기본값 `uid`) 및 기타 LDAP 설정을 구성합니다. 이 구성은 LDAP 사용자와 GitHub 사용자 간에 매핑하는 방법을 결정합니다. LDAP 구성에 대한 자세한 내용은 [AUTOTITLE](/admin/managing-iam/using-ldap-for-enterprise-iam/using-ldap#ldap-attributes)을 참조하세요. | SAML 인증을 먼저 사용하도록 설정한 다음 인증 토큰을 사용하여 SCIM 프로비저닝을 구성합니다. |
|
사용자 만들기 타이밍 | Just-In-Time: LDAP 인증에 성공한 후 첫 번째 로그인 시 사용자가 만들어집니다. | 사전 인증: 인증하려면 먼저 SCIM을 통해 사용자를 프로비전해야 합니다. |
|
초기 사용자 이름 원본 | GitHub 사용자 이름은 설치 중에 구성된 정규화된 LDAP 식별자를 기반으로 합니다. | GitHub 사용자 이름은 IdP의 정규화된 SCIM userName 값을 기반으로 합니다. |
|
사용자 이름 관리 | 유연성: 관리자는 LDAP와 독립적으로 GitHub 사용자 이름을 변경할 수 있습니다. 사용자 이름은 LDAP 매핑을 통해 인증을 유지하면서 시간이 지남에 따라 LDAP 식별자에서 드리프트할 수 있습니다.
사용자 이름 참조을(를) 참조하세요. | 엄격하게: GitHub 사용자 이름은 항상 IdP에서 정규화된 SCIM userName와 일치합니다. GitHub 쪽의 사용자 이름 변경은 허용되지 않습니다. |
|
사용자 특성 컨트롤 | 하이브리드: 일부 특성은 LDAP에서 관리되고 다른 특성은 어플라이언스에서 관리할 수 있습니다. | 전체 IdP 제어: 모든 사용자 특성은 IdP의 SCIM 업데이트를 통해 관리됩니다. |
|
인증 흐름 | GitHub Enterprise Server LDAP 서버로 인증하고 기존 LDAP 매핑을 조회하여 사용자를 찾습니다. | SAML SSO 중에 외부 ID 조회를 수행하여 인증을 위해 프로비전된 사용자를 찾습니다. |
|
주요 특징 | GitHub 사용자 데이터(특히 사용자 이름)를 LDAP 서버와 독립적으로 어플라이언스에서 부분적으로 관리할 수 있는 하이브리드 시스템입니다. | 전체 ID 공급자 제어: GitHub 사용자의 상태는 전적으로 IDP가 SCIM을 통해 보내는 내용에 따라 달라지며 사용자 이름은 원본 시스템에서 드리프트할 수 없습니다. |
사용자 이름 정규화 및 호환성
GitHub Enterprise Server은(는) LDAP, SAML 및 SCIM에 일관되게 적용되는 특정 규칙에 따라 사용자 이름을 정규화합니다. 이러한 규칙을 이해하는 것은 성공적인 마이그레이션에 중요합니다.
사용자 이름 정규화에 대한 자세한 내용은 외부 인증에 대한 사용자 이름 고려 사항을 참조하세요.
2. 마이그레이션 계획
마이그레이션을 시작하기 전에 현재 설정을 이해하고, ID 공급자를 준비하고, 백업 액세스 방법을 설정해야 합니다. 계획 단계는 원활한 전환을 보장하는 데 중요합니다.
LDAP에서 SCIM으로 매핑 준비
중요한 마이그레이션 과제는 LDAP와 SCIM 사용자 관리 방법 간의 브리징입니다.
**LDAP 사용자(기존 상태)** :
-
초기 생성 이후 변경되었을 수 있는 GitHub 사용자 이름 있음
-
사용자 이름 변경에 관계없이 LDAP 매핑을 통해 인증 기능 유지
**SCIM 사용자(대상 상태)** : -
인증 전에 프로비전해야 합니다.
-
정규화된 SCIM
userName값과 일치하는 GitHub 사용자 이름이 있어야 합니다. -
SCIM 사용자 프로비저닝 중에 기존 GitHub 계정으로 외부 ID에 연결할 수 있지만 정규화된 SCIM
userName기존 GitHub 사용자 이름과 일치하는 경우에만 연결할 수 있습니다.
마이그레이션 매핑 요구 사항
SCIM ID를 기존 LDAP 사용자에게 성공적으로 연결하려면 인스턴스에서 사용자의 현재 상태를 캡처해야 합니다.
-
** 기존 GitHub 사용자 이름**: 사이트 관리자 인터페이스, API 또는 CLI를 사용하여 인스턴스에서 현재 GitHub 사용자 이름의 전체 목록을 가져옵니다. 사용자 API에 대한 자세한 내용은 [AUTOTITLE](/rest/users/users?apiVersion=2022-11-28#list-users)을 참조하세요. 사용자를 내보내는 명령줄 유틸리티에 대한 자세한 내용은 [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities#ghe-user-csv)을 참조하세요. -
**IdP에서 GitHub 사용자 이름을 실제 사용자와 매핑하십시오**: 엔터프라이즈의 각 GitHub 사용자 이름과 연결된 신원을 결정합니다. -
** SCIM `userName` 특성 구성**: IdP가 연결하려는 기존 GitHub 사용자 이름과 일치하는 `userName` 값으로 SCIM 사용자를 프로비전하는지 확인합니다. **중요**: 매핑 목표 대상은 원래 LDAP 사용자 ID나 다른 식별자가 아닌 인스턴스의 **현재 GitHub 사용자 이름**입니다.
주요 계획 고려 사항
**중요한 고려 사항:**
* 가동 중지 시간 필요: 인증 설정을 변경하려면 유지 관리 기간 동안 가동 중지 시간이 필요합니다. * 사용자 영향: 마이그레이션 후 사용자는 LDAP 자격 증명 대신 SAML IdP를 통해 인증해야 합니다. * 팀 멤버 자격: IdP에서 지원하는 경우 LDAP 팀 동기화가 SCIM 그룹 프로비저닝으로 대체됩니다. LDAP 매핑된 팀은 해당하는 경우 적절한 SCIM 그룹으로 업데이트해야 합니다.
LDAP 구성의 상태 캡처
현재 LDAP 설정을 기록하여 동등한 SAML/SCIM 매핑을 계획합니다.
데이터 재사용_가능.기업_사이트_관리자_설정.접속_설정 %} 데이터 재사용_가능.기업_사이트_관리자_설정.관리_콘솔 %} 데이터 재사용_가능.기업_관리_콘솔.인증 %}
- 다음 LDAP 설정을 문서화합니다. * 도메인 기반 및 제한된 사용자 그룹 * User ID 특성(GitHub 사용자 이름을 만드는 데 사용됨) * 프로필 이름, 전자 메일 및 기타 특성 매핑 * 관리자 그룹 구성 * 팀 동기화 설정
- SCIM ID에 연결할 기존 사용자 목록을 인스턴스에 저장해야 합니다.
3. SAML 및 SCIM으로 마이그레이션
계획을 완료하면 LDAP에서 SAML 인증으로 마이그레이션을 시작할 수 있습니다. 이 과정은 ID 공급자와 GitHub Enterprise Server에서 SAML을 설정한 뒤, SCIM 단계로 넘어가기 전에 구성을 철저히 검증하는 단계로 구성됩니다.
**중요**: SAML을 구성할 때 "기본 제공 인증을 사용하여 계정 만들기 허용"을 사용하도록 설정하여 SCIM을 사용하도록 설정할 때 필요한 단계 수를 줄입니다.
SAML 인증 활성화
자세한 SAML 구성 단계는 엔터프라이즈에 대한 SAML Single Sign-On 구성을 참조하세요.
SAML을 사용하도록 설정한 후 SCIM으로 진행하기 전에 인증 시스템을 테스트합니다. 인스턴스에 대해 구성된 SAML 애플리케이션에 할당된 IdP 계정을 사용하여 SSO 로그인을 성공적으로 수행할 수 있는지 확인합니다.
**SAML 인증이 제대로 작동할 때까지 SCIM으로 진행하지 마세요.**
SCIM 프로비저닝을 활성화합니다
SAML 인증이 올바르게 작동하는지 확인한 후 자동화된 사용자 관리에 SCIM을 사용하도록 설정할 수 있습니다. SCIM은 GitHub Enterprise Server와 ID 공급자 양쪽에서 모두 설정되어야 합니다.
SCIM을 사용하도록 설정하는 자세한 단계는 SCIM 프로비저닝을 구성하여 사용자 관리을 참조하세요.
SCIM 프로비저닝 테스트
SCIM 프로비저닝을 테스트하여 SCIM 프로비전된 사용자가 기존 사용자 계정에 올바르게 연결되었는지 확인합니다.
LDAP/SAML 마이그레이션에서 계정이 이미 있는 사용자의 경우:
- IdP에서 SCIM 애플리케이션에 사용자를 할당합니다.
-
**자동 연결 확인**: SCIM이 기존 계정에 자동으로 연결되는지 확인합니다.- 사용자는 동일한 사용자 이름 및 계정 데이터를 유지합니다.
- 중복 계정이 만들어지지 않음
- SCIM ID는 엔터프라이즈 설정 및 사이트 관리자 인터페이스에 연결된 것으로 표시됩니다. 자세한 내용은 엔터프라이즈에 대한 사용자의 SAML 액세스 보기 및 관리을(를) 참조하세요.
-
**감사 로그 검토**: 기존 사용자와의 성공적인 연결을 보여 주는 `external_identity.scim_api_success``external_identity.provision` 이벤트를 찾습니다.
인스턴스에 이전에 없는 새 사용자의 경우:
-
**사용자 만들기 확인**: 사용자가 올바른 특성을 사용하여 GitHub Enterprise Server에 표시되는지 확인합니다. -
**테스트 인증**: 새 사용자가 SAML을 통해 인증할 수 있는지 확인합니다. -
**테스트 특성 업데이트**: IdP에서 사용자 정보를 업데이트하고 변경 내용 동기화를 확인합니다. -
**프로비전 해제 테스트**: 사용자 액세스를 제거하고 일시 중단되었는지 확인합니다.
모든 사용자에게 SCIM 배포
SCIM을 통해 아직 프로비전되지 않은 나머지 모든 사용자의 경우:
- IdP의 GitHub Enterprise Server 애플리케이션에 사용자를 점진적으로 할당합니다.
-
**연결 프로세스 모니터링**: 사용자 이름 일치를 기반으로 성공적인 자동 연결을 확인합니다. -
**진행률 추적**: 감사 로그를 사용하여 연결 진행률에 대한 이벤트를 모니터링 `external_identity` 합니다. -
**충돌 해결**: 발생하는 사용자 이름 충돌 또는 매핑 문제를 해결합니다.
4. 팀 및 조직 구성원 자격 업데이트
마이그레이션 후 이전에 LDAP 그룹 동기화를 사용하여 팀 멤버 자격을 제어한 경우 해당 팀 매핑을 SCIM 그룹으로 바꿀 수 있습니다. 기존 팀을 다시 사용하는 경우 IdP 그룹을 연결하기 전에 모든 팀 구성원을 제거해야 합니다.
자세한 내용은 ID 공급자 그룹을 사용하여 팀 멤버 자격 관리을(를) 참조하세요.