Atlassian을 OAuth 2.0 인증 공급자로 사용하기
Tier: Free, Premium, Ultimate
Offering: Self-Managed
Offering: Self-Managed
Atlassian OmniAuth 공급자를 사용하여 무암호 인증을 위해 Atlassian 애플리케이션을 등록해야 합니다.
Atlassian 애플리케이션 등록
- Atlassian 개발자 콘솔로 이동하고 Atlassian 계정으로 로그인하여 애플리케이션을 관리합니다.
- 새 앱 만들기를 선택합니다.
- ‘GitLab’과 같은 앱 이름을 선택하고 생성을 선택합니다.
-
GitLab 구성 단계에서
Client ID
및Secret
를 메모합니다. - APIS AND FEATURES 아래의 왼쪽 사이드바에서 OAuth 2.0 (3LO)를 선택합니다.
- GitLab 콜백 URL을
https://gitlab.example.com/users/auth/atlassian_oauth2/callback
형식으로 입력하고 변경 사항 저장을 선택합니다. - APIS AND FEATURES 왼쪽 사이드바에서 + 추가를 선택합니다.
- Jira platform REST API에 대해 추가를 선택한 다음 구성을 선택합니다.
- 다음 스코프 옆의 추가를 선택합니다:
- Jira 이슈 데이터 보기
- 사용자 프로필 보기
- 이슈 생성 및 관리
GitLab 구성
-
GitLab 서버에서 구성 파일을 엽니다:
Linux 패키지 설치의 경우:
sudo editor /etc/gitlab/gitlab.rb
직접 컴파일한 경우:
sudo -u git -H editor /home/git/gitlab/config/gitlab.yml
-
공통 설정을 구성하여
atlassian_oauth2
를 단일 서인 공급자로 추가합니다. 이렇게 하면 기존 GitLab 계정이없는 사용자에 대해 즉시 계정 프로비저닝이 활성화됩니다. -
Atlassian의 제공자 구성을 추가합니다:
Linux 패키지 설치의 경우:
gitlab_rails['omniauth_providers'] = [ { name: "atlassian_oauth2", # label: "Provider name", # 로그인 버튼에 대한 선택적 레이블, 기본값은 "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", # 로그인 버튼에 대한 선택적 레이블, 기본값은 "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>
를 애플리케이션 등록 중에 받은 클라이언트 자격 증명으로 변경합니다. -
구성 파일을 저장합니다.
- 변경사항을 적용하려면:
- Linux 패키지를 사용하여 설치한 경우, GitLab 재구성을 실행합니다.
- 직접 컴파일 한 경우, GitLab 다시 시작합니다.
로그인 페이지에는 이제 일반 로그인 양식 아래에 Atlassian 아이콘이 표시됩니다. 아이콘을 선택하여 인증 프로세스를 시작합니다.
모든 것이 잘되면 사용자는 Atlassian 자격 증명을 사용하여 GitLab에 로그인됩니다.