0

我正在使用 Django 包django_openid_auth和这段代码通过他的 OpenID 对 Django 中的用户进行身份验证。

这完美地工作。用户被重定向到 Google Accounts 页面以获取权限,然后被重定向回来。

但是,这只是服务器获取用户的电子邮件/姓名/姓氏。如果我想获取用户的联系人列表,甚至是出生日期或头像等敏感信息,它是如何工作的?

我假设,因为我通过 OpenID AX 扩展获取电子邮件/姓名,我可以类似地使用 Ext2 扩展获取 OAuth 信息?

我知道 Google Contacts API 需要 OAuth 身份验证。由于我使用 OpenID 登录,是否包含此 OAuth 身份验证,还是必须在新的单独流程中进行?简而言之,这个 OpenID 身份验证是否包括获取联系人/帐户信息的身份验证过程,还是我必须进行身份验证并使用单独的过程?

使用的 OpenID 机制的内部机制在django_openid_auth模块中。

有人可以指出我正确的方向吗?谢谢你。

4

1 回答 1

1

我认为您应该考虑使用 OAuth2 而不是 OpenID2 和 OAuth 1 的混合。可以使用后者,但使用 OAuth2 更容易。我不了解 Django 的特定 OAuth2 库,但 Google 编写的 Python OAuth2 库是“最先进的”。它甚至有关于在 Django 中使用它的信息

https://developers.google.com/api-client-library/python/guide/aaa_oauth

该库将允许您询问联系人范围以及您感兴趣的 userinfo.profile 范围。

希望这可以帮助。

达韦普

于 2012-11-02T22:36:26.807 回答