【发布时间】:2009-07-31 17:50:52
【问题描述】:
假设我正在尝试实现 OpenId 以依赖于我的使用 Web 服务的 n 层网站。如果有些步骤看起来很奇怪,请告诉我。
1) 我希望用户在文本框中输入他们的 OpenId 网址。例如:http://vidalsasoon.myopenid.com
2) 用户然后单击提交,输入的 Url 使用 OpenId api 发送到我的 Web 服务。使用服务器上的 OpenId API,我可以构建正确的 OpenId 请求。
3) 用户收到他应该进行身份验证的 URL。
4) 用户被重定向到他们的提供商,登录,被重定向回我的网站。
这里的混乱:现在步骤 2 - 4 发生在用户和提供者之间。这些步骤不涉及我的网络服务。
我希望用户此时将他们想要的用户名和 OpenId 发送回 Web 服务。问题是我怎么知道用户/客户端没有篡改它们?
【问题讨论】:
-
好奇您是否指的是“网络服务”。 Web 服务建议了一个不针对浏览器使用的 Web URL 的编程 API。 OpenID 在这种情况下不起作用,尽管 OpenID+OAuth 混合当然可以。
标签: openid dotnetopenauth