===========================
Installation
- Contacts API
- Google+ API
を有効にする。
API & auth -> Credentialsより「Create new Client ID」 -> Web Applicationを選び必要項目を入力。
REDIRECT URISは
http://gitlab.example.com/users/auth/google_oauth2/callback
のように入力。
Gitlabのconfig/gitlab.yml
にて
#
signup_enabled: false
omniauth:
enabled: true
allow_single_sign_on: true
block_auto_created_users: false
providers:
- {"name":"google_oauth2","app_id":"32183193207-piqbogilllsi7u21ujjqk7bpuh325fnk.apps.googleusercontent.com","app_secret":"N92-4QlPgKu2X9akEnUwpteE","args":{"access_type":"offline","approval_prompt":"force","hd":"example.com"}}
ログインを許可するドメインを制限したい場合はパラメータにhd
をドメイン名として渡す。
allow_single_sign_on: true
でGitlabデータベース内にユーザが存在しない場合でもユーザを作成、 block_auto_created_users: false
で管理者の許可を得なくてもユーザを作成出来るようにする。
また既にGitlabに登録済みのアカウントをGoogle Appsアカウントと紐付けたい場合、omniauthを有効にすると「Profile」->「Account」ページ下部にGoogle Appsアイコンが出現するのでクリックし認証することで紐付け出来る。
Trouble Shooting
- マルチバイト文字のユーザ名がDBエラーになる
usersテーブル等のcharacter-setをutf8に修正する
参照: Encoding error in Gitlab 5.2 · Issue #4120 · gitlabhq/gitlabhq
ALTER TABLE broadcast_messages CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE deploy_keys_projects CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE emails CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE events CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE forked_project_links CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE issues CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE keys CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE merge_request_diffs CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE merge_requests CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE milestones CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE namespaces CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE notes CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE projects CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE protected_branches CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE schema_migrations CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE services CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE snippets CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE taggings CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE tags CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE users CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE users_groups CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE users_projects CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE web_hooks CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;