InfoGrab DocsInfoGrab Docs

SAML 그룹 동기화

권한 할당 및 동기화된 액세스 제어로 그룹 멤버십을 자동화합니다.

SAML 그룹 동기화를 사용하면 SAML ID 공급자(IdP)의 사용자 그룹 배정을 기준으로 특정 권한을 가진 사용자를 기존 GitLab 그룹에 배정할 수 있습니다. SAML 그룹 동기화로 SAML IdP 그룹과 GitLab 그룹 사이에 다대다 매핑을 만들 수 있습니다. 예를 들어 사용자 @amelia 가 SAML IdP의 security 그룹에 배정돼 있다면, SAML 그룹 동기화로 @amelia 를 Maintainer 권한으로 security-gitlab 그룹에 배정하고, Reporter 권한으로 vulnerability 그룹에 배정할 수 있습니다. SAML 그룹 동기화는 그룹을 만들지 않습니다. 먼저 그룹을 생성 한 다음 매핑을 만들어야 합니다. GitLab.com에서는 SAML 그룹 동기화가 기본적으로 구성돼 있습니다. GitLab Self-Managed에서는 직접 구성해야 합니다. 권한 우선순위 # 그룹 동기화는 매핑된 그룹에서 사용자의 권한과 멤버십 유형을 결정합니다. 다중 SAML IdP # 사용자가 로그인하면 GitLab은 다음을 수행합니다. 구성된 모든 SAML 그룹 링크를 확인합니다. 여러 IdP에 걸쳐 사용자가 속한 SAML 그룹을 기준으로 해당 사용자를 대응하는 GitLab 그룹에 추가합니다. GitLab의 그룹 링크 매핑은 특정 IdP에 묶여 있지 않으므로, 모든 SAML IdP가 SAML 응답에 그룹 속성을 포함하도록 구성해야 합니다. 즉 GitLab은 로그인에 사용된 IdP와 관계없이 SAML 응답의 그룹을 일치시킬 수 있습니다. 예를 들어 SAML1 과 SAML2 라는 IdP 2 개가 있습니다. GitLab의 특정 그룹에 그룹 링크 두 개를 구성했습니다. gtlb-owner => Owner role . gtlb-dev => Developer role . SAML1 에서 사용자는 gtlb-owner 의 멤버이지만 gtlb-dev 의 멤버는 아닙니다. SAML2 에서 사용자는 gtlb-dev 의 멤버이지만 gtlb-owner 의 멤버는 아닙니다. 사용자가 SAML1 로 그룹에 로그인하면 SAML 응답은 그 사용자가 gtlb-owner 의 멤버임을 나타내므로, GitLab은 그 그룹에서 사용자의 권한을 Owner 로 설정합니다. 이어서 사용자가 로그아웃하고 SAML2 로 그룹에 다시 로그인합니다. SAML 응답은 그 사용자가 gtlb-dev 의 멤버임을 나타내므로, GitLab은 그 그룹에서 사용자의 권한을 Developer 로 설정합니다. 이제 앞의 예시를 바꿔서, SAML2 에서는 사용자가 gtlb-owner 와 gtlb-dev 중 어느 쪽의 멤버도 아니라고 가정합니다. 사용자가 SAML1 로 그룹에 로그인하면 그 그룹에서 Owner 권한을 받습니다. 사용자가 SAML2 로 로그인하면 구성된 그룹 링크 중 어느 쪽의 멤버도 아니므로 그룹에서 제거됩니다. 다중 SAML 그룹 # 사용자가 같은 GitLab 그룹에 매핑된 여러 SAML 그룹의 멤버라면, 그 SAML 그룹 중 가장 높은 권한을 배정받습니다. 예를 들어