是否可以将Google身份验证限制为特定的用户组?

时间:2017-10-08 10:32:28

标签: ruby-on-rails-5.1 omniauth-google-oauth2

我最近在我的一个rails 5应用程序中使用了omniauth-google-oauth2 gem来验证用户,它运行正常。该应用程序适用于特定的用户组,在我看来是大学的学生。所有用户都有一个Google帐户,其电子邮件地址以@ait.asia@ait.ac.th结尾。

是否可以将身份验证仅限于上述用户。即只有电子邮件地址以@ait.asia@ait.ac.th结尾的用户?

1 个答案:

答案 0 :(得分:1)

将OmniAuth中间件添加到应用程序时,您可以将Google Apps托管域列表传递到hd选项。

所以,在你的情况下,你可以像这样制作一个初始化器:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :google_oauth2,
    ENV["GOOGLE_CLIENT_ID"],
    ENV["GOOGLE_CLIENT_SECRET"],
    hd: %w(ait.asia ait.ac.th)

您可以看到配置选项enter image description here

的完整列表