相关疑难解决方法(0)

DotNetOpenAuth 4.3和Google - OpenID 2.0 + OAuth 1.0已弃用

如果你想切入追逐,问题是:在asp.net mvc 5中使用DotNetOpenAuth与Google的最佳/官方方式是什么?

大约一年前,我使用了OAuth(DotNetOpenAuth oAuth和OpenID),因为它开箱即用于asp.net MVC 4(就像在示例项目中一样).从那时起,我成功地将它用于谷歌,脸谱,雅虎和微软.但是,最近我一直在用户登录谷歌时出现间歇性问题.我已经尝试升级到MVC 5和DotNetOpenAuth 4.3,但我得到了同样的结果.

当我查看谷歌文档时,我发现了这个:

重要提示:Google已弃用其对OAuth 1.0的支持.如果您使用的是OpenID 2.0 + OAuth 1.0,我们建议您切换到Google+登录.Google+登录为OAuth 2.0身份验证机制提供了丰富的社交功能,并可访问其他Google桌面和移动功能.它支持所有Google用户和透明迁移.有关详细信息,请参阅迁移Google身份验证.

我完全错了,因为我认为开箱即用的asp.net mvc 4 DotNetOpenAuth使用OpenID 2.0(我使用minimumRequiredOpenIdVersion ="V20")+ OAuth 1.0.我可以在DotNetOpenAuth源中看到'product'下有一个OAuth 2.0库,但我不知道如何使用它.另外,我对Auth 2.0有点紧张,因为我读过的内容并不是非常互补,而且似乎更容易在脚下拍摄(可能没有根据,但它似乎是一个反复出现的主题).

对于Google+,我发现这些说明看起来非常简单,但差不多一年前,所以我想知道这是否仍然是最佳方式.我还发现这个git存储库实现了Google oauth2.不过,我想知道这是否仍然具有相关性,因为它是从前一段时间开始的.

所以,问题是 - 在asp.net mvc5中使用DotNetOpenAuth与Google的最佳/官方方式是什么?希望我没有错过任何明显的东西,在这种情况下只需指向某些链接即可.

更新 我发现这个问题和这个相关的问题.我想我会用git google auth2除非我被告知否则.

解析度

我做了以下事情: -

  • 按照接受的答案提供的链接中的步骤操作.这是这个链接.

重要的是在登录后继续使用SSL而不是回退到HTTP,您的登录cookie就像您的用户名和密码一样秘密...在您登录后重定向回HTTP不会使当前请求或将来的请求更快.

  • 在Nuget上获得最新的DotNetOpenAuth.GoogleOAuth2.

  • 我查看了这个msdn博客(由同一作者)关于如何最好地保护网站的建议.基本上,建议添加以下强制所有页面为HTTPS的内容:

    filters.Add( new System.Web.Mvc.RequireHttpsAttribute() );

最终这意味着整个网站都是HTTPS.自从进行这些更改后,该网站运行良好.

dotnetopenauth asp.net-mvc-4 asp.net-mvc-5

11
推荐指数
2
解决办法
5461
查看次数