gitlab과 azure-ad 연동

3973 단어 AzureADGitLab
gitlab과 AzureAD 제휴 할 수 있었으므로 그 비망록입니다.

・AzurePortal측의 설정



AzureAD 화면에서 앱 등록 수행

이름: Gitlab
유형: WebAPI
URL : https://your-gitlab-url/
애플리케이션 ID를 삼가해 둡니다.

설정에서 응답 URL 추가https://your-gitlab-url/users/auth/azure_oauth2/callback
권한 부여 버튼을 누른

키에서 키 추가

키를 등록한 내용을 둔다(입력한 패스워드가 변환되어 나온 토큰)

앱 등록 화면에서 엔드포인트 확인

· gitlab 측 설정



다음과 같이 설정.
# cd /etc/gitlab
# cp -p gitlab.rb{,.`date +%Y%m%d`}
# ls
gitlab.rb           gitlab.rb.20180508  gitlab.rb.20180614   trusted-certs
gitlab.rb.20180501  gitlab.rb.20180518  gitlab-secrets.json
# vi gitlab.rb
# diff gitlab.rb{,.`date +%Y%m%d`}
171,172c171,172
< gitlab_rails['omniauth_enabled'] = true
< gitlab_rails['omniauth_allow_single_sign_on'] = ['azure_oauth2']
---
> # gitlab_rails['omniauth_enabled'] = false
> # gitlab_rails['omniauth_allow_single_sign_on'] = ['saml']
174,175c174,175
< gitlab_rails['omniauth_block_auto_created_users'] = true
< gitlab_rails['omniauth_auto_link_ldap_user'] = true
---
> # gitlab_rails['omniauth_block_auto_created_users'] = true
> # gitlab_rails['omniauth_auto_link_ldap_user'] = false
177,189c177,185
< gitlab_rails['omniauth_external_providers'] = ['azure_oauth2']
< gitlab_rails['sync_profile_from_provider'] = ['azure_oauth2']
< gitlab_rails['sync_profile_attributes'] = ['name', 'email']
< gitlab_rails['omniauth_providers'] = [
<   {
<     "name" => "azure_oauth2",
<     "args" => {
<        "client_id" => "****アプリケーションID****",
<        "client_secret" => "****アプリで登録したキー*****",
<        "tenant_id" => "****AADのディレクトリのID****",
<     }
<   }
< ]
---
> # gitlab_rails['omniauth_external_providers'] = ['twitter', 'google_oauth2']
> # gitlab_rails['omniauth_providers'] = [
> #   {
> #     "name" => "google_oauth2",
> #     "app_id" => "YOUR APP ID",
> #     "app_secret" => "YOUR APP SECRET",
> #     "args" => { "access_type" => "offline", "approval_prompt" => "" }
> #   }
> # ]

# gitlab-ctl reconfigure
# gitlab-ctl status

※omniauth_block_auto_created_users를 true로 하고 있으므로 디포라고 블록되어 관리자가 해제할 필요가 있는 사양.

사용자 로그인



그래서, 자신의 계정 설정 화면에서 azure 같은 창 마크 (connect)라고 쓰는 것을 포치


로그아웃하면
창 마크가 나와 있으므로 뽀뽀하면 로그인할 수 있게 되었습니다.
(2단계 인증 설정하고 있다면 넣을 필요 있음)
인증 수단이 한 개 늘어난 만큼 느낌이군요. AzureAD측에서 인증하고 있다면 ID/PW 입력이 불필요한 사촌이 편리하게.
기존 사용 계속 문제가 없다면 아무것도하지 않아도 괜찮습니다.

참고



htps : // / cs. 기 t b. 코 m/세/이니 g라치온/아즈레. HTML
htps : // / cs. 기 t b. 코 m/세/인테 g라치온/오 m에 맞는 th. html # 니치아 l - 오 m에 맞는 th
htps : // / cs. mic로소 ft. 코 m / 자 jp / 아즈레 / 아 c ゔ ぇ ぢ 레 c와 ry / ゔ ぇ ぉ p / 아 c ゔ ぇ ぢ 레 c와 ryp 여과 ls
htps://세 rょぇr ふぁるlt. 코 m / 쿠에 s 치온 s / 874484 / 갓 t ぁ

좋은 웹페이지 즐겨찾기