
Drupalでは、Open ID Connectモジュールを用いることで、GoogleやFacebookなどのアカウントから管理画面へログインすることができます。今回はGoogleアカウントでのログイン方法を紹介します。
Open ID Connectモジュールを入れる
まずはDrupalにOpen ID Connecctモジュールを入れましょう。
モジュールのURLは https://www.drupal.org/project/openid_connectです。Drupal8の場合、Downloadsから「8.x~」と書かれている方の.tar.gzファイルのURLをコピーしましょう。
[機能拡張>新しいモジュールをインストール]から、先ほどコピーしたURLを入力してインストールしましょう。
インストールに成功すると、[機能拡張]の[その他]に[OpenID Connect]が表示されます。これを有効化すれば準備OKです。
Google側でOpen ID Connectの準備をする
続いてGoogleのアカウント情報をDrupalで使うための設定をしましょう。
必要なライブラリを有効化する
まずはGoogle API Consoleへ移動します。
https://console.cloud.google.com/apis/library?hl=ja
検索フォームから、[Google+ API]を検索しましょう。
表示されたライブラリを有効にしましょう。同様の手順で[Identity Toolkit API]についても有効化します。
認証情報を取得する
Google API Consoleに戻り、左上にある、[APIライブラリ]をクリックしましょう。
https://console.cloud.google.com/apis/library?hl=ja
左メニューから[認証情報]をクリックします。
その後[認証情報を作成]をクリックすると、認証方法の確認画面がでます。
[OAuthクライアントID]を選びましょう。
同意画面を設定していない場合は作成します。
同意画面の設定ができていれば、OAuthクライアントIDの作成画面がでます。
アプリケーションの種類を[ウェブアプリケーション]に設定し、名前を入れましょう。
[承認済みのリダイレクトURI]には、Drupal管理画面の[ホーム>管理>環境設定>ウェブサービス>OpenID Connect]から取得できます。
入力すると、クライアントID / シークレットが入ってきます。
DrupalでGoogleログインフォームを表示する
先ほど取得したクライアントIDとクライアント シークレットをDrupal側に設定すれば準備OKです。[ホーム>管理>環境設定>ウェブサービス>OpenID Connect]から、[Cliend ID]に[クライアントID]を、[Client secret]に[クライアント シークレット]を入力して保存しましょう。
あとは[OpenID Connect Login]というブロックが追加されていますので、それを`/user/login`で表示するように配置すればOKです。
[Log in with Google]という項目が追加されました。
アカウントがない状態でGoogleログインすると、「管理者からの承認待ちです」というメッセージが表示されます。
ユーザーの状態が[ブロック]となっておりますので、これを[アクティブ]にすることで有効化できます。
おわりに
OAuthやOpenID Connectに触れる機会がないとすこし設定に戸惑うかもしれません。しかし一度設定してしまえば、GoogleやFacebook、またはOpenID Connectに対応しているサービスのユーザー情報を使ってログインすることができます。
おすすめ記事
関連コンテンツ
- Drupalレシピ徹底解剖:レシピ機能で実現する次世代モジュラーサイト構築術
- Drupalの使い方ガイド - インストールから実践活用まで
- Drupal 10とは?長所・短所とDrupal 11の進化ポイントを徹底解説!
- DrupalとWordPressの違い─どちらのCMSを採用すべきか
- Drupal CMS 1.0がリリースされました
- Drupalテーマ開発における革新的な機能: Single Directory Components (SDC)
- DrupalにおけるAI:驚くべき機能の最新デモが示す未来
- Drupal CMSの今後の展望
- DDEVを用いてDrupal CMS(Drupal Starshot)をインストールする
- Dries Buytaert氏の基調講演が明らかにしたDrupalの未来
Drupal 初心者講座バックナンバー
-
Drupal 9/10 初心者講座
-
第 1 回 歴史に見る Drupal の DNA
-
第 2 回 Drupal はフレームワークか?CMS か?他の CMS との比較
-
第 3 回 Drupal の特徴
-
第 4 回 Drupal 9 / 10 のインストール (1)
-
第 5 回 Drupal 9 / 10 のインストール (2)
-
第 6 回 Drupal にコンテンツを投稿してみる
-
第 7 回 Drupal のボキャブラリとタクソノミーの使い方
-
第 8 回 コンテンツ管理における Drupal と他の CMS との比較
-
第 9 回 Drupal のブロックシステム
-
第 10 回 Drupal の標準クエリビルダー Views の使い方
-
第 11 回 Drupal と他の CMS のクエリビルダー機能を比較
-
第 12 回 Drupal の多言語機能と他の CMS やサービスとの比較
-
第 13 回 Drupal の権限設定と WordPress や Movable Type との比較
-
第 14 回 Drupal のテーマシステムについて
-
第 15 回 Drupal の拡張モジュールの選定と使い方
-
第 16 回 Drupal をもっと知りたい方に向けた各種情報