GitLab Dedicated용 SAML SSO
Offering: GitLab Dedicated
GitLab Dedicated 인스턴스에 대해 최대 10개의 ID 공급자(IdP)에 대해 SAML 단일 로그인(SSO)을 구성할 수 있습니다. 다음과 같은 SAML SSO 옵션을 사용할 수 있습니다: 이는 GitLab Dedicated 인스턴스의 최종 사용자를 위한 SAML SSO를 구성합니다.
GitLab Dedicated 인스턴스에 대해 최대 10개의 ID 공급자(IdP)에 대해 SAML 단일 로그인(SSO)을 구성할 수 있습니다.
다음과 같은 SAML SSO 옵션을 사용할 수 있습니다:
이는 GitLab Dedicated 인스턴스의 최종 사용자를 위한 SAML SSO를 구성합니다. Switchboard 관리자를 위한 SSO를 구성하려면 Switchboard SSO 구성을 참조하십시오.
사전 요건#
- GitLab Dedicated에 대해 SAML을 구성하려면 먼저 ID 공급자를 설정해야 합니다.
- SAML 인증 요청에 서명하도록 GitLab을 구성하려면 GitLab Dedicated 인스턴스에 대한 개인 키 및 공개 인증서 쌍을 만들어야 합니다.
Switchboard로 SAML 공급자 추가#
GitLab Dedicated 인스턴스에 SAML 공급자를 추가하려면:
- Switchboard에 로그인합니다.
- 페이지 상단에서 Configuration을 선택합니다.
- SAML providers를 확장합니다.
- Add SAML provider를 선택합니다.
- SAML label 텍스트 상자에 Switchboard에서 이 공급자를 식별하는 이름을 입력합니다.
- 선택 사항. SAML 그룹 멤버십을 기반으로 사용자를 구성하거나 그룹 동기화를 사용하려면 다음 필드를 완료합니다:
- SAML group attribute
- Admin groups
- Auditor groups
- External groups
- Required groups
- IdP cert fingerprint 텍스트 상자에 IdP 인증서 지문을 입력합니다. 이 값은 IdP의
X.509인증서 지문의 SHA1 체크섬입니다. - IdP SSO target URL 텍스트 상자에 GitLab Dedicated가 이 공급자로 인증하도록 사용자를 리디렉션하는 IdP의 URL 엔드포인트를 입력합니다.
- Name identifier format 드롭다운 목록에서 이 공급자가 GitLab에 보내는 NameID의 형식을 선택합니다.
- 선택 사항. 요청 서명을 구성하려면 다음 필드를 완료합니다:
- Issuer
- Attribute statements
- Security
- 이 공급자 사용을 시작하려면 Enable this provider 체크박스를 선택합니다.
- Save를 선택합니다.
- 다른 SAML 공급자를 추가하려면 Add SAML provider를 다시 선택하고 이전 단계를 따릅니다. 최대 10개의 공급자를 추가할 수 있습니다.
- 페이지 상단으로 스크롤합니다. Initiated changes 배너에 SAML 구성 변경 사항이 다음 유지 관리 창 동안 적용될 것임이 설명됩니다. 변경 사항을 즉시 적용하려면 Apply changes now를 선택합니다.
변경 사항이 적용되면 이 SAML 공급자를 사용하여 GitLab Dedicated 인스턴스에 로그인할 수 있습니다. 그룹 동기화를 사용하려면 SAML 그룹 링크를 구성합니다.
SAML 구성 확인#
SAML 구성이 성공적인지 확인하려면:
- 로그아웃하고 GitLab Dedicated 인스턴스의 로그인 페이지로 이동합니다.
- SAML 공급자의 SSO 버튼이 로그인 페이지에 나타나는지 확인합니다.
- 인스턴스의 메타데이터 URL(
https://INSTANCE-URL/users/auth/saml/metadata)로 이동합니다. 메타데이터 URL에는 ID 공급자 구성을 단순화하고 SAML 설정을 검증하는 데 도움이 되는 정보가 표시됩니다. - SAML 공급자를 통해 로그인을 시도하여 인증 흐름이 올바르게 작동하는지 확인합니다.
문제 해결 정보는 SAML 문제 해결을 참조하십시오.
지원 요청으로 SAML 공급자 추가#
GitLab Dedicated 인스턴스에 SAML을 추가하거나 업데이트하기 위해 Switchboard를 사용할 수 없는 경우 지원 티켓을 열 수 있습니다:
-
필요한 변경 사항을 위해 지원 티켓에 GitLab 애플리케이션에 대해 원하는 SAML 구성 블록을 포함합니다. 최소한 GitLab은 인스턴스에 대해 SAML을 활성화하기 위해 다음 정보가 필요합니다:
- IDP SSO Target URL
- 인증서 지문 또는 인증서
- NameID 형식
- SSO 로그인 버튼 설명
"saml": { "attribute_statements": { //optional }, "enabled": true, "groups_attribute": "", "admin_groups": [ // optional ], "idp_cert_fingerprint": "43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8", "idp_sso_target_url": "https://login.example.com/idp", "label": "IDP Name", "name_identifier_format": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", "security": { // optional }, "auditor_groups": [ // optional ], "external_groups": [ // optional ], "required_groups": [ // optional ], } -
GitLab이 SAML 구성을 인스턴스에 배포하면 지원 티켓으로 알림을 받습니다.
-
SAML 구성이 성공적인지 확인하려면:
- SSO 로그인 버튼 설명이 인스턴스의 로그인 페이지에 표시되는지 확인합니다.
- 지원 티켓에서 GitLab이 제공하는 인스턴스의 메타데이터 URL로 이동합니다. 이 페이지는 ID 공급자 구성을 크게 단순화하고 설정을 수동으로 검증하는 데 사용할 수 있습니다.
요청 서명#
SAML 요청 서명이 필요한 경우 인증서를 얻어야 합니다. 이 인증서는 자체 서명될 수 있으며, 이는 공개 인증 기관(CA)에 임의의 공통 이름(CN)의 소유권을 증명하지 않아도 된다는 장점이 있습니다.
SAML 요청 서명에는 인증서 서명이 필요하기 때문에 이 기능을 활성화한 상태에서 SAML을 사용하려면 이 단계를 완료해야 합니다.
SAML 요청 서명을 활성화하려면:
- 지원 티켓을 열고 요청 서명 활성화를 원한다고 표시합니다.
- GitLab은 인증서 서명 요청(CSR)을 보내 서명할 수 있도록 협력합니다. 또는 CSR에 공개 CA로 서명할 수 있습니다.
- 인증서가 서명된 후 인증서와 관련 개인 키를 사용하여 Switchboard의 SAML 구성의
security섹션을 완료할 수 있습니다.
이제 GitLab에서 ID 공급자로의 인증 요청에 서명할 수 있습니다.
SAML 그룹#
SAML 그룹을 사용하면 SAML 그룹 멤버십을 기반으로 GitLab 사용자를 구성할 수 있습니다.
SAML 그룹을 활성화하려면 Switchboard의 SAML 구성이나 지원 티켓에서 제공하는 SAML 블록에 필수 요소를 추가합니다.
그룹 동기화#
그룹 동기화를 사용하면 ID 공급자 그룹에 걸쳐 사용자를 GitLab의 매핑된 그룹으로 동기화할 수 있습니다.
그룹 동기화를 활성화하려면:
- Switchboard의 SAML 구성이나 지원 티켓에서 제공하는 SAML 구성 블록에 필수 요소를 추가합니다.
- 그룹 링크를 구성합니다.
