Altassian Crowd와 연동
1. omniauth_provider 설정
$ vi /etc/gitlab/gitlab.rb
### OmniAuth Settings
###! Docs: https://docs.gitlab.com/ce/integration/omniauth.html
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['crowd']
# gitlab_rails['omniauth_sync_email_from_provider'] = 'saml'
# gitlab_rails['omniauth_sync_profile_from_provider'] = ['saml']
# gitlab_rails['omniauth_sync_profile_attributes'] = ['email']
# gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'saml'
gitlab_rails['omniauth_block_auto_created_users'] = true
# gitlab_rails['omniauth_auto_link_ldap_user'] = false
# gitlab_rails['omniauth_auto_link_saml_user'] = false
# 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_rails['omniauth_providers'] = [
{
"name" => "crowd",
"args" => {
"crowd_server_url" => "http://crowd.twoseed.co.kr/crowd",
"application_name" => "<CROWD-APP-NAME>",
"application_password" => "<CROWD-APP-PASSWORD>"
}
}
]
2. Gitlab 재구성
$ sudo gitlab-ctl reconfigure
3. Crowd 로그인 화면 확인
4. Troubleshooting
Crowd 로그인 시 아래 에러 발생
Crowd Application의 Remote Addresses에 Gitlab의 IP 또는 Crowd 로그파일에서 접속중인 IP 확인하여 등록
Crowd 로그인 시 500 에러 발생
Admin > Settings > General > Sign-up restrictions > Allowed domains for sign-ups에 메일 도메인 추가