3

我正在使用 DotNetOpenAuth 库来管理身份验证。现在谷歌决定不再支持 OpenId2,我已经阅读了文档,但我不太了解如何迁移到 OpenId Connect。

现在我正在向 google 发送以下请求进行身份验证:

        using(OpenIdRelyingParty openid = new OpenIdRelyingParty())
        {
            string googleEndPoint = "https://www.google.com/accounts/o8/id";
            IAuthenticationRequest request = openid.CreateRequest(Identifier.Parse(googleEndPoint));
            ...

所以我想知道我是否只需要修改 openid.CreateRequest(Identifier.Parse(googleEndPoint)) 以包含REALMReturn URI以使其工作。

我正在互联网上寻找有关使用 DotNetOpenAuth lib 进行 Google 身份验证的示例,但我没有找到任何东西

4

1 回答 1

2

我遇到了同样的问题。对于迁移到 OIDC,Google 建议使用“HD”参数,请参阅此处的详细信息: https ://developers.google.com/accounts/docs/OpenID#openid-connect

我最近创建了一个针对 Google OIDC 的轻量级身份验证实现,并将这个库开源。代码非常基本,可以完成工作:

http://www.dominikamon.com/articles/3091/oidc-lightweight-library-for-aspnet.html

如果您想访问名字、姓氏、性别等信息,新 API 的工作方式会有所不同。您需要从 Google+ 获取此信息。因此您需要设置 Google+ API(您每天最多可以免费发送 10000 个请求)

希望这可以帮助。

于 2015-03-15T15:11:07.780 回答