OAuth 2.0 인증 공급자로 Atlassian 사용
Offering: GitLab Self-Managed
비밀번호 없는 인증을 위해 Atlassian OmniAuth 공급자를 활성화하려면 Atlassian에 애플리케이션을 등록해야 합니다. GitLab 서버에서 구성 파일을 엽니다: atlassian_oauth2를 싱글 사인온 공급자로 추가하도록 공통 설정을 구성합니다.
비밀번호 없는 인증을 위해 Atlassian OmniAuth 공급자를 활성화하려면 Atlassian에 애플리케이션을 등록해야 합니다.
Atlassian 애플리케이션 등록#
- Atlassian 개발자 콘솔로 이동하여 애플리케이션을 관리할 Atlassian 계정으로 로그인합니다.
- Create a new app을 선택합니다.
- 'GitLab'과 같은 앱 이름을 선택하고 Create를 선택합니다.
- GitLab 구성 단계를 위해
Client ID와Secret을 기록해 둡니다. - 왼쪽 사이드바에서 APIS AND FEATURES 아래에서 **OAuth 2.0 (3LO)**를 선택합니다.
https://gitlab.example.com/users/auth/atlassian_oauth2/callback형식을 사용하여 GitLab 콜백 URL을 입력하고 Save changes를 선택합니다.- APIS AND FEATURES 아래 왼쪽 사이드바에서 + Add를 선택합니다.
- Jira platform REST API에 대해 Add를 선택한 후 Configure를 선택합니다.
- 다음 범위 옆의 Add를 선택합니다:
- View Jira issue data
- View user profiles
- Create and manage issues
GitLab 구성#
-
GitLab 서버에서 구성 파일을 엽니다:
Linux 패키지 설치의 경우:
sudo editor /etc/gitlab/gitlab.rb직접 컴파일 설치의 경우:
sudo -u git -H editor /home/git/gitlab/config/gitlab.yml -
atlassian_oauth2를 싱글 사인온 공급자로 추가하도록 공통 설정을 구성합니다. 이렇게 하면 기존 GitLab 계정이 없는 사용자를 위한 Just-In-Time 계정 프로비저닝이 활성화됩니다. -
Atlassian에 대한 공급자 구성을 추가합니다:
Linux 패키지 설치의 경우:
gitlab_rails['omniauth_providers'] = [ { name: "atlassian_oauth2", # label: "Provider name", # optional label for login button, defaults to "Atlassian" app_id: "<your_client_id>", app_secret: "<your_client_secret>", args: { scope: "offline_access read:jira-user read:jira-work", prompt: "consent" } } ]직접 컴파일 설치의 경우:
- { name: "atlassian_oauth2", # label: "Provider name", # optional label for login button, defaults to "Atlassian" app_id: "<your_client_id>", app_secret: "<your_client_secret>", args: { scope: "offline_access read:jira-user read:jira-work", prompt: "consent" } } -
<your_client_id>와<your_client_secret>을 애플리케이션 등록 중에 받은 Client 자격 증명으로 변경합니다. -
구성 파일을 저장합니다.
-
변경 사항이 적용되도록:
- Linux 패키지를 사용하여 설치한 경우 GitLab을 재구성합니다.
- 직접 컴파일한 경우 GitLab을 재시작합니다.
이제 로그인 페이지의 일반 로그인 양식 아래에 Atlassian 아이콘이 표시됩니다. 인증 프로세스를 시작하려면 아이콘을 선택합니다.
모든 것이 올바르게 진행되면 사용자는 Atlassian 자격 증명을 사용하여 GitLab에 로그인됩니다.
