DotNetOpenAuth Open Id Client

时间:2014-10-29 18:16:03

标签: asp.net-mvc dotnetopenauth

使用OpenId提供程序时,基于我见过的任何示例,客户端应用程序将始终执行此操作

    public ActionResult Login(string returnUrl /* Forms Auth will add this when it meets a page that needs authorization and redirects */)
    {
        IAuthenticationResponse response = _openId.GetResponse();


        if (response == null)
        {
            return HandleNeedOpenIdScenario();
        }
        else
        {
            return HandleOpenIdProviderSendingAssertion(response, returnUrl);
        }

    }

HandleNeedOpenIdScenario会将您退回到身份验证服务器,您将在其中登录并最终发送回http://clientApp/Account/Login,其中_openId.GetResponse()不会为空。

我的问题是:GetResponse()方法中发生了什么?我可以看到在http://openIdServerApp/user/my.account@email.com/向我的OpenId服务器发出请求,并且使用XRDS信息生成了200响应。但究竟发生了什么?这个电话是如何证明我是谁,我是谁?

(我看过来源,但坦率地说,这超出了我的理解。)

谢谢,

0 个答案:

没有答案