Google Apps SSO+在Google Apps域中获取用户


Google Apps SSO + Get Users in Google Apps Domain

我最近为我们正在开发的Google Apps Marketplace应用程序实现了SSO功能。简单地说:它提供了一种检索谷歌应用程序用户电子邮件并将其登录到您的网站的方法,而无需授权。您只需要在您的域上安装时由谷歌提供给应用程序的消费者密钥和消费者机密(安装用户还授权(一次性操作)您在Manifest文件中请求的任何其他权限)。

现在,我已经设法使用JanRain的OpenID PHP库让SSO用户登录,并使用Google Apps OpenID Discovery的PHP扩展添加Google Apps作为提供商。

然而,登录后,我需要实现一个功能,检索给定谷歌应用程序域中的所有用户。我已经使用oAuth2身份验证和以下目录API完成了这项工作。然而,这需要存在消费者密钥、消费者秘密和重定向URL(必须在Google API控制台中注册)。

有没有办法消除这种便利性,让我们的用户在登录时使用我们在后台进行的现有SSO身份验证,直接获得他们的谷歌应用程序域的用户?否则,用户在Google API控制台注册应用程序,输入正确的重定向URL并在我们的网站中设置它,然后他将能够获得其域的用户,这将是非常麻烦的。

常规用户不能使用Directory API,您需要以管理员用户身份进行身份验证才能调用Directory API。

根据您访问所有用户的需要,您可以请求访问用户的联系人范围,并获取完整的全局地址列表的副本,其中包含所有非隐藏域用户以及非隐藏组和共享联系人的信息。