如何使用Google Apps用户名和密码登录Drupal?


8

我们正在寻找一种用户可以使用其Google Apps帐户用户名和密码登录Drupal网站的方法。我们使用“ Google Apps for Education”,并且我们不想为Drupal网站维护单独的用户名和密码。

我们还希望将访问权限限制为某些拥有Google Apps帐户的用户。诸如过滤或预先批准的帐户列表之类的内容。并且,用户的帐户应在首次登录时自动创建,并且他们无需在Drupal中填写任何其他帐户信息,应直接从Google Apps帐户中提取该帐户。

Drupal 7是否有提供此功能的模块?我已经尝试过OAuth,Loginza.ru,OpenID等方法,而这些并不是我们想要的。

如果没有这样的模块,我该如何为该模块编写自定义模块?

Answers:


4

要将您的Drupal 7网站与Google Apps集成,您需要:

  1. 在您的drupal网站上启用OpenID模块
  2. 使用位于http://www.google.com/a/cpanel/yourdomain.com/SetupIdp的 Google Apps控制面板启用联合登录服务
  3. 在yourdomain.com/openid中添加X-XRDS-Location标头例如,如果yourdomain.com是PHP网站,则将其上传为/openid/index.php

    <?php
    header('X-XRDS-Location: https://www.google.com/accounts/o8/site-xrds?ns=2&hd=yourdomain.com');
    ?>
  4. 转到您的drupal网站的登录页面。您会看到一个新的“使用开放ID登录”链接。点击它。输入:https : //google.com/accounts/o8/site-xrds?hd=yourdomain.com,然后单击提交
  5. 第一次执行此操作时,系统会询问您是否要允许您的网站进行身份验证。单击是。
  6. 随后,如果您尝试使用上述URL登录并登录到Google Apps,则将直接登录。

3

您不需要从头开始编写自定义模块,这里有很多代码可以帮助您入门。


1
可悲的是,直接支持进入了Drupal 7 ...,然后在后来被删除:drupal.org/node/727650-您可能会在这里找到有用的工作。
rfay 2011年


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.