OAuth 2.0認証プロバイダーとしてFacebookを使用します。
Facebook OmniAuthプロバイダを有効にするには、Facebookにアプリケーションを登録する必要があります。FacebookがアプリIDとシークレットキーを生成します。
-
Facebook Developer Platformにサインインします。
-
マイアプリ”>”新しいアプリを追加 “を選択します。
-
“ウェブサイト “を選択
-
アプリの名前を入力します。何でもかまいません。
's GitLab" や " 's GitLab" など、わかりやすい名前にしましょう。 -
Create New Facebook App ID” を選びます。
-
カテゴリを選択します。例えば “Productivity”
-
アプリIDの作成」を選択します。
-
パッケージの下部にGitLabのインストールアドレスを入力します。
-
Next” を選択してください。
-
右上の「クイックスタートをスキップ」を選択します。
-
左のメニューから「設定」を選択します。
-
アプリの連絡先メールアドレスを入力してください。
-
変更を保存」を選択します。
-
左のメニューから「ステータスとレビュー」を選択します。
-
右側のスイッチを「いいえ」から「はい」に変更します。
-
アプリ公開のプロンプトが表示されたら「Confirm」を選択します。
-
左のメニューから “ダッシュボード “を選択します。
-
非表示の “アプリシークレット “の横にある “表示 “を選択します。
-
アプリキーとアプリシークレットが表示されます(スクリーンショット参照)。このページを開いたまま設定を続けてください。
-
GitLab サーバーで設定ファイルを開きます。
Linuxパッケージ・インストールの場合:
sudo editor /etc/gitlab/gitlab.rb
セルフコンパイルによるインストールの場合:
cd /home/git/gitlab sudo -u git -H editor config/gitlab.yml
-
共通設定を構成して、シングルサインオンプロバイダとして
facebook
。これにより、既存のGitLabアカウントを持っていないユーザーのためのJust-In-Timeアカウントプロビジョニングが可能になります。 -
プロバイダー設定を追加します。
Linuxパッケージ・インストールの場合:
gitlab_rails['omniauth_providers'] = [ { name: "facebook", # label: "Provider name", # optional label for login button, defaults to "Facebook" app_id: "YOUR_APP_ID", app_secret: "YOUR_APP_SECRET" } ]
セルフコンパイルによるインストールの場合:
- { name: 'facebook', # label: 'Provider name', # optional label for login button, defaults to "Facebook" app_id: 'YOUR_APP_ID', app_secret: 'YOUR_APP_SECRET' }
-
YOUR_APP_ID’をステップ10のFacebookページのAPIキーに変更してください。
-
YOUR_APP_SECRET’をステップ10のFacebookページのAPIシークレットに変更します。
-
設定ファイルを保存します。
-
変更を有効にするには
- Linux パッケージを使ってインストールした場合は、GitLab を再設定してください。
- インストールをセルフコンパイルした場合は、GitLabを再起動してください。
サインインページの通常のサインインフォームの下に Facebook のアイコンが表示されているはずです。アイコンを選択して認証プロセスを開始します。FacebookはユーザーにサインインとGitLabアプリケーションの作成を求めます。問題がなければ、ユーザーはGitLabに戻り、サインインします。