昨日に引き続き、Googleログインの話。今日はログイン後の権限申請フォームを実装。
まず、実際にGoogleログインの流れの説明から始める。GoogleログインのボタンをクリックするとどのGoogleアカウントでログインするか問われる。私の場合は、いくつものアカウントを持っていて、このBlogを書く時は会社(ulslab.com)のアカウントを利用しているが、個人の無料アカウントも持っているので、今回はそのアカウントで新規登録してみる。
アカウントを選択すると、もういきなりユーザー登録は完了。プロファイル画面に誘導される。
この画面の下の方に情報収集のWebformを準備してあるので、これに入力して送信。内容は、当ブログサイトの管理者のメールに届く。
ちなみに、名前と写真は、Googleアカウントの情報から自動的に持ってきている。Chromeブラウザ上で、ログインしているとブラウザの右上に写真またはただの丸などが現れるが、Windowsの場合、その丸にマウスを持っていくと一般には表示名とメールアドレスがでる。
さらにクリックして詳細を見ると自分で登録した情報が出てくる。
私の場合は写真、生年月日や性別、電話番号なども正しい情報を入力しているので、結構機微な情報と言えるが、DrupalのSocial APIで持ってこれるのは、表示名「萩原高行」と電子メールだけである。それ以外の情報は取らないから、まあ安全と言って良いだろう。
管理者には以下のようにメールが届く。
この内容を確認して、当該ユーザーに確認済みユーザーの権限を付与すれば、コメント投稿が許されている記事にコメントが書けるようになる。
ちなみに、一般ユーザーがユーザー名を編集できないようにするためにユーザー編集フォームで「ユーザー名とパスワード」を無効にした。管理者だけは、これを使えるようにできないと困るので、Form mode managerモジュールを導入して、管理者用フォームを設定した。
コメント
コメントを書いてみた
権限が付与されたので、コメントを入れてみた。
コメントを承認した
このコメントを書いている時点では、コメントは承認制になっているので、管理者権限で公開しました。
Form mode managerがD9に非対応で落としていたが、再設定した
form_mode_manager 8.x-2.0-rc4がrcながら問題なく動いていることを確認した。