omniauth-google-oauth2でログインをGoogle Appsのアカウントに制限する

井原(@ihara2525)です。

omniauth-google-oauth2を使ってログイン機能を実装する際に、Google Appsの特定のドメインのユーザのみにログインを制限するので、アカウントを選ぶ画面を出して欲しくない、みたいな場合、以下のようにhdにドメインを指定してあげると良いようです。

config/initializers/omniauth.rb

Rails.application.config.middleware.use OmniAuth::Builder do
  options = { prompt: 'consent', hd: 'example.com }
  provider Rails.application.config.auth, ENV['GOOGLE_CLIENT_ID'], ENV['GOOGLE_CLIENT_SECRET'], options
end

ドキュメントがしっかり書かれているのですが、hdに関する記載がなくPRを探して見つけました。