GitLab Single Sign-On
Mattermost에서 팀 생성, 계정 생성 및 사용자 로그인을 위한 SSO(Single Sign-on) 서비스로 GitLab을 사용하도록 구성하려면 다음 단계를 따르세요. 기본 GitLab SSO만 공식적으로 지원됩니다.
GitLab을 Single Sign-On(SSO) 서비스로 구성하기#
Mattermost에서 팀 생성, 계정 생성 및 사용자 로그인을 위한 SSO(Single Sign-on) 서비스로 GitLab을 사용하도록 구성하려면 다음 단계를 따르세요.
- 기본 GitLab SSO만 공식적으로 지원됩니다.
1단계: GitLab 계정에 Mattermost 애플리케이션 추가#
- GitLab 계정에 로그인한 후
https://{gitlab-site-name}/profile/applications로 이동합니다. {gitlab-site-name} 에는 GitLab 인스턴스 이름을 사용하세요. GitLab을 직접 서비스 제공자로 사용하는 경우gitlab.com을 사용하세요. - 새 애플리케이션을 추가합니다:
- Save application 을 선택합니다.
- GitLab 창을 열어 두세요. Mattermost를 구성할 때 Application Id 와 Application Secret Key 가 필요합니다.
a. Name 필드에 Mattermost 를 입력합니다.
https://{mattermost-site-name}/login/gitlab/complete
https://{mattermost-site-name}/signup/gitlab/complete
GitLab 인스턴스가 SSL을 사용하도록 설정되어 있지 않은 경우 URI는 ``https://`` 대신 ``http://`` 로 시작해야 합니다.
c. 범위를 선택합니다.
- Mattermost Team Edition의 경우 ``read_user`` 를 선택합니다.
- Mattermost Enterprise의 경우 ``read_user``, ``openid``, ``profile``, ``email`` 을 선택합니다.
2단계: GitLab SSO를 위한 Mattermost 구성#
- Mattermost에 로그인한 후 System Console > Authentication > OpenID Connect 로 이동합니다.
- 서비스 제공자로 GitLab 을 선택합니다.
- GitLab 인스턴스의 GitLab Site URL 을 입력합니다. GitLab 인스턴스가 SSL을 사용하도록 설정되어 있지 않은 경우 URL을
https://대신http://로 시작하세요. GitLab을 직접 제공자로 사용하는 경우gitlab.com을 사용하세요. - GitLab을 사용한 OpenID Connect의 Discovery Endpoint 는
https://gitlab.com/.well-known/openid-configuration으로 미리 채워져 있습니다. - GitLab의 Application ID 를 Mattermost의 Client ID 로 붙여넣습니다.
- GitLab의 Application Secret Key 를 Mattermost의 Client Secret 으로 붙여넣습니다.
config.json파일을 업데이트하고GitLabSettings속성에서 GitLab에서 선택한 범위를 지정합니다. 최소한openid는 Mattermost Enterprise 및 Professional에서 필수 범위이며read_user는 Mattermost Team Edition에서 필수 범위입니다. Mattermost Team Edition은read_user이외의 범위와 함께 작동하지 않습니다. 이 설정을 변경하려면 적용 전 서버 재시작이 필요합니다.- Save 를 선택합니다.
- Mattermost가 사용자 인증을 위해 OpenID Connect 또는 OAuth 2.0을 사용하도록 구성된 경우 Mattermost API를 통해 다음 사용자 속성을 변경할 수 없습니다: 이름, 성 또는 사용자 이름. OpenID Connect 또는 OAuth 2.0이 이러한 사용자 속성의 권한 있는 소스여야 합니다.
- SSL이 구성된 로드 밸런서 뒤에서 Mattermost를 사용하는 경우 로드 밸런서에서 `X-Forwarded-Proto` 헤더를 https로 설정해야 할 수 있습니다.
(선택 사항) 3단계: 사용자가 SSO로만 가입하도록 강제#
모든 사용자가 SSO로만 가입하도록 강제하려면 System Console > Authentication > Email > Enable sign-in with email 을 false 로 설정합니다.
사용자는 GitLab으로 Mattermost에 로그인하기 전에 로그인 방법을 변경해야 합니다.
자주 묻는 질문#
OpenID에서 LDAP 속성이나 그룹을 사용하는 방법은?#
현재 LDAP 데이터는 OpenID와 호환되지 않습니다. 현재 LDAP를 사용하여 사용자의 팀, 채널, 그룹 또는 속성을 관리하는 경우 OpenID로 로그인한 사용자에게는 자동으로 이를 적용할 수 없습니다. 각 사용자에게 LDAP를 동기화해야 하는 경우 로그인 제공자로 SAML 또는 LDAP를 사용하는 것을 권장합니다. Keycloak과 같은 일부 OpenID 제공자는 대신 SAML을 사용할 수 있습니다.
