GitHub EMU 서비스 셀프 스타트 + 사용 서비스 전환 가이드
- GitHub Enterprise Cloud 서비스는 30일, 최대 50명이 사용가능한 무료 트라이얼이 주어지며, 트라이얼 기간중 언제든지 정식 Enterprise Cloud로 전환이 가능합니다.
- Enterprise Cloud로의 전환을 위해서는, Azure 구독ID를 등록합니다.
- 아래 가이드는 GitHub Enterprise Cloud의 EMU서비스 트라이얼을 셋업하고, 이 트라이얼 환경을 정식 Enterprise Cloud로 전환하기 위한 가이드입니다.
-
EMU 서비스 신청을 위해서는 우측에 ‘Enterprise with Managed Users’를 선택합니다.
-
이어지는 페이지에서 필요한 정보를 입력한 뒤, 하단에 ‘Create your enterprise’ 버튼을 클릭합니다.
- Enterprise name : EMU 서비스에서 사용할 기업 이름을 입력합니다.
- Enterprise URL slug : EMU 관리페이지의 ULR에 사용될 이름입니다. 관리페이지 URL은
http://github.com/enterprises/<your enterprise name>
입니다. -
Short code : EMU 서비스에서 사용할 기업 코드를 입력합니다. (3~8글자의 Alphanumeric 코드)
- EMU를 신청해 주실 때, 정해 주신 Short code는, GitHub.com상의 EMU서비스에서 각 엔터프라이즈 기업을 구분해 주는 ‘기업 코드’이자, 각 기업을 구별해 주는 구별자 입니다.
- 3~8글자의 Alphanumeric 코드 입니다.
- 기업 내부에서만 사용되는 것이므로 특별한 의미가 있는 것은 아닙니다.
- 한번 설정되면 변경이 불가능 합니다.
- EMU최초 설정시, ‘최초 EMU관리자’의 username은 다음과 같이 설정됩니다.
Short code_admin
- (예) short code가
fabrikam
이라면 : fabrikam_admin
!!주의!! GitHub 상의 관리페이지는 https://github.com/enterprises/ <your enterprise name> 입니다. 이 URL은 최초 패스워드 설정하고 로그인되었던 화면의 페이지 URL입니다. 관리 페이지 주소를 분실하지 않도록 잘 관리 되어야 합니다.
!!주의!! 관리페이지 URL의 <your enterprise name> : 이 부분은, 아래 2번 SSO 설정과 Auto-provisioning (SCIM) 설정에서 사용됩니다.
- 신청청 후, 관리자 이메일로 초대 메일이 시스템에서 발송됩니다. (이후 설정은 아래 순서로 진행합니다다)
EMU설정 순서
EMU의 설정은 아래와 같은 순서로 진행됩니다.
- GitHub으로 부터 받은 관리자 초대 이메일의 버튼 클릭하여 ‘관리자 패스워드’ 설정
- Configure SAML SSO / SCIM for GitHub Enterprise
- 사용자의 EMU 로그인
1. 관리자 초대 메일을 통해 ‘관리자 패스워드’ 설정
-
Create your enterprise 버튼 클릭 후, 브라우저에 아래와 같은 화면이 나타납니다. 여기에 로그인은 무시하시고, 아래 설명된 이메일 수신된 패스워드 리셋 과정을 통해 패스워드를 설정합니다.
-
** 주의 : GitHub으로 부터 메일이 2개가 수신되는데, 이중 첫번째로 수신된 패스워드 리셋 링크의 버튼을 클릭하여 패스워드를 설정 해 주시기 바랍니다.
- 메일 제목: [GitHub] You’ve been added as an owner of the — enterprise
- 반드시 Set your password 버튼의 링크를 ‘복사’ 혹은 ‘시크릿 브라우저’로 오픈하셔서 패스워드를 설정합니다. 이것은 혹시 기존의 오픈된 브라우저에 로그인된 GitHub.com 세션의 로그인된 계정과 충돌로 문제가 발생할 수 있기 때문입니다.
- 시크릿 브라우저에서 패스워드 설정
-
패스워드 설정 후, 아래와 같은 화면에서 Username은 그대로 두고, 설정된 패스워드를 입력합니다.
- GitHub Enterprise 관리 페이지로 로그인 됩니다.
2. SCIM을 위한 Personal Access Token 생성
- ‘Generate SCIM token’ 버튼 클릭
- SCIM을 위한 Personal Access Token을 생성화면으로 이동됩니다.
- 이미 필요한 권한이 체크되어 있으므로, 가장 하단에 있는 ‘Generate token’ 버튼을 클릭합니다.
- 생성된 Personal Access Token을 복사하여, 별도로 잘 저장해 둡니다.
3. SAML SSO 설정
** 이 작업을 위해서는 Azure EntraID의 관리자 계정이 필요합니다.
- 우측 상단에 동그라미 아이콘을 클릭하여, ‘Your enterprise’ 메뉴로 이동합니다.
-
관리페이지 메인에서 상단에 푸른색 박스의 ‘See suggested tasks’ 버튼을 클릭합니다. (혹은 메뉴바에 ‘Getting started’ 메뉴 클릭)
-
‘Enable single sign-on’ 버튼 클릭
-
오른른편의 ‘Add SAML configuration’ 버튼 클릭
-
GitHub상의 SAML설정 화면이 나타납니다. 이 화면 설정에서 필요한 값들은 아래 Entra ID에서 설정한 후에, Entra ID에서 설정한 값을 복사하여 붙여 넣기 하시면 됩니다.
(아래는 Microsoft Entra ID SSO - GitHub Enterprise Managed User 설정 가이드의 내용을 요약한 것입니다.)
3-1. Entra ID에서 설정 : (Microsoft Entra ID SSO - GitHub Enterprise Managed User 설정 가이드)
- Entra ID내에 ‘GitHub Enterprise Managed User’ 어플리케이션을 설치합니다.
- 위 설치된 GitHub Enterprise Managed User 어플리케이션에 대한 SAML SSO를 설정합니다. 설정시 필요한 값들은 아래와 같이 설정됩니다. - 아래
<your enterprise name>
값은 1번과정 URL의<your enterprise name>
의 값입니다.- Identifier :
https://github.com/enterprises/<your enterprise name>
- Reply URL :
https://github.com/enterprises/<your enterprise name >/saml/consume
- Sign-on URL :
https://github.com/enterprises/<your enterprise name >/sso
- Identifier :
- Certificate을 PEM 포맷으로 다운로드 합니다.
-
Login URL, Entra ID Identifier 값을 Copy하여 놓습니다. (이 값들은 이후, GitHub상의 SSO 설정에 추가되는 값들입니다)
-
관리자를 추가 합니다. 이때 추가되는 관리자는 GitHub 관리자의 계정(최초 관리자 패스워드 설정을 하신 관리자분)의 계정을 Entra ID에서 찾아 추가합니다. 이 관리자 계정은 아래 3-2 과정의 5)에서 Test SAML Configuration시에 로그인을 위해 필요합니다.
-
‘사용자 및 그룹’ 메뉴에서 ‘+사용자/그룹 추가’ 선택
-
왼편의 ‘할당추가’에서 ‘사용자 및 그룹’ 선택
-
사용자 및 그룹에서 추가할 사용자 검색
-
검색된 사용자 선택
-
왼편의 ‘할당추가’에서 ‘역할 선택’
-
역할 선택 메뉴에서 ‘Enterprise Owner’ 선택 하고, 하단에 ‘선택’ 클릭
- 먼저 GitHub 관리자를 추가하고, ‘Enterprise owner’ 로 설정
-
왼편의 ‘할당 추가’ 하단의 ‘할당’ 클릭
-
할당된 사용자 확인 (우측에 ‘할당된 역할’: ‘Enterprise Owner’)
-
3-2. GitHub 관리페이지에서 설정 (GitHub SAML SSO 설정 가이드)
- GitHub 관리 페이지로 이동합니다.
- 왼편의
Settings > Authentication security
메뉴로 이동합니다. Require SAML authentication
체크박스 설정- 위 EntraID에서 저장된 값들을 설정합니다.
Entra ID Login URL
→Sign on URL
Entra ID Identifier
→Issuer
- Certificate PEM 파일의 내용을 복사하여 ‘
Pubic certificate
’에 붙여 넣기
- ‘
Test SAML configuration
’ : 위에 5) 과정에서 추가된 관리자 계정으로 Entra ID에 로그인 합니다. - Test가 완료되면 반드시 ‘
Save
’ 버튼을 클릭하여 설정을 저장 합니다.- 이 단계에서는 아래 3-3의 SCIM 설정이 아직 되지 않아, SCIM설정이 필요하다라는 메세지가 나타납니다. 그대로 두고, 아래 2-3 SCIM설정으로 진행하시면 됩니다.
- 이 단계에서는 아래 3-3의 SCIM 설정이 아직 되지 않아, SCIM설정이 필요하다라는 메세지가 나타납니다. 그대로 두고, 아래 2-3 SCIM설정으로 진행하시면 됩니다.
3-3. SCIM 설정 (설정가이드)
-
GitHub 관리자 계정의 Personal access token은 이미 위 2번 과정에서 생성되어 있습니다. 아래 절차에서 이 Token을 사용합니다.
-
ID>애플리케이션>엔터프라이즈 애플리케이션으로 이동합니다.
-
애플리케이션 목록에서 GitHub Enterprise Managed User(SAML)를 선택합니다.
-
프로비전 탭을 선택합니다.
-
프로비전 모드를 자동으로 설정합니다.
-
관리자 자격 증명 섹션 아래에서 GitHub Enterprise Managed User(SAML) 테넌트 URL 및 비밀 토큰을 입력합니다.
- Tenant URL 값 :
https://api.github.com/scim/v2/enterprises/<your enterprise name>
- Secret Token은 위에서 설정한 GitHub 관리자의 Personal Access Token 값을 입력합니다.
Test Connection
실행
- Tenant URL 값 :
-
저장을 선택합니다.
- 매핑 섹션에서
- Microsoft Entra ID 사용자 프로비전을 선택합니다.
- Microsoft Entra ID 그룹 프로비전을 선택합니다.
-
설정 섹션에서 프로비전 상태를 켜기로 변경합니다.
-
설정 섹션의 범위에서 원하는 값을 선택하여 GitHub Enterprise Managed User(SAML)에 프로비전하려는 사용자 및/또는 그룹을 정의합니다.
-
저장을 클릭합니다.
- GitHub 관리 페이지의 ‘People’ 메뉴에서 사용자들이 Provisioning 되는 것을 확인합니다. (Entra ID의 경우 Sync까지 시간이 소요됩니다. (수동으로 바로 provisioning하는 버튼을 통해 사용자를 GitHub으로 provisioning합니다).
4. EMU 트라이얼에서 정식 서비스로 전환하기
- EMU 트라이얼 종료 전에, 언제든 정식 상용서비스로 전환할 수 있습니다.
- 상용 서비스로 전환하기 위해서는, 상단에 하늘색 배너에 ‘
Activate Enterprise
’ 를 클릭하여 Azure 구독ID를 등록합니다. - 오른편의 ‘Add Azure Subscription’ 클릭
- Azure 구독 관리자 계정으로 로그인
-
Azure 구독 관리자 계정으로 로그인 후, 아래 화면에서 ‘조직 대신 동의’ 클릭 후, ‘동의함’ 버튼 클릭
-
알맞은 Azure 구독 ID를 선택 후, ‘Connect’ 클릭
- Azure 구독 ID가 등록된 것을 확인합니다.
5. 사용자의 EMU 로그인
주의 : 브라우저에서 기존에 다른 계정으로 GitHub.com에 로그인되어 있다면, 해당 계정에서 로그아웃하고, EMU 로 등록된 회사 Entra ID계정으로 로그인 하여야 합니다.
** 주의 : 사용자들이 브라우저에서 로그인 시, username 부분에 사용자 이메일이 아닌, 아래 화면 캡쳐와 같이 ‘_short code
‘를 입력하고, ‘Sign in with your identity provider’ 버튼을 눌러, 회사의 Entra ID로 로그인 해야 합니다.
예) short code가 ‘fabrikam
’ 이라면 앞에 ‘_
’를 덧붙여 ‘_fabrikam
’을 입력