ClaimedIdentifier问题myOpenID:http或https?

时间:2010-06-18 15:02:39

标签: openid dotnetopenauth

当用户单击OpenIdButton以登录myOpenID时,他们会导航到myOpenID登录页面并提示输入用户名和密码。

返回的ClaimedIdentifier以https开头(注意's')

当用户在OpenIdLogin控件中输入用户名时,返回的ClaimedIdentifier以http(no's')开头。

为什么会这样?更重要的是,如果返回值可以根据登录技术发生变化,我如何依赖数据库中的一致用户名?

这是一个错误还是我做错了什么?

1 个答案:

答案 0 :(得分:2)

一种(虽然不推荐)方法是剥离URL的协议路径。

此外,它不是库中的错误,它只是为不同的身份验证方法返回不同标识符的同一提供商 - Google也是这样做的(帐户与配置文件)。

当用户输入“x.myopenid.com”时,它会(根据规范)翻译为“http://x.myopenid.com”,因此服务器会使用http://返回标识。

如果用户输入https://x.myopenid.com,服务器将使用https://返回身份。

另一件事是MyOpenID应该从http重定向到https,但不会这样做。