Azure网站上"找不到OpenID端点"

CMi*_*cea 6 azure dotnetopenauth azure-web-sites

对于作为Azure网站运行的MVC 3应用程序,我有一个奇怪的问题.我过去曾遇到Azure问题,但新的网站概念几乎完美无缺,除此之外:

DotNetOpenAuth.Messaging.ProtocolException: No OpenID endpoint found.
Run Code Online (Sandbox Code Playgroud)

这仅适用于Google,仅适用于Azure.在本地运行它工作正常,在AppHarbor上运行它工作正常,但在Azure上,每次尝试使用Google进行OpenID登录都会因为该异常而导致服务器错误(使用Airbrake进行跟踪).

亲自看看,尝试在我的网站上登录谷歌,如果你立即得到一个服务器错误页面,这意味着DNOA正在呕吐.所有其他登录方法都可以正常工作,包括Yahoo和AOL,它们也是OpenID.

PS:不要尝试太多次,AirBrake很乐意将我的电子邮件地址垃圾邮件:<

And*_*ott 3

调用之前尝试将此代码添加到您的网站OpenIdRelyingParty.CreateRequest

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
Run Code Online (Sandbox Code Playgroud)

在某些 Azure 配置中,这已被证明可以解决该问题。

  • 似乎新的 Azure 预览 Web 托管服务正在新的环境/沙箱中运行其网站,其中默认的 SSL 设置是非标准的。当向 Google 发送 HTTP 请求时,(显然)使用了 SSL v3,并且默认配置(无论它是什么)在没有一点帮助的情况下都无法调整。Azure 人员正在解决这个问题,以便将来它可以默认工作。 (2认同)