为智能手机应用创建自己的OAuth 2.0服务器 - DotNertOpenAuth示例问题

时间:2016-01-05 09:01:23

标签: c# oauth oauth-2.0 server smartphone

我知道这是一个广泛的问题,但我发现只有旧的东西。我需要创建自己的OAuth 2.0服务器。我有一个特殊的需求:我必须让它适用于智能手机应用程序。我在C#工作,我希望我的服务器能用这种语言完成。

我已阅读规范" OAuth 2.0授权框架" " OAuth 2.0授权框架:bearer token usage" 即可。理论很清楚,但我对开始工作没有任何想法。

例如,有很多lib,哪一个最适合使用智能手机应用程序?我认为我发现的这些图书馆缺乏文档和样本。

您知道在哪里可以找到stepByStep教程或工作样本吗?我看到这个论点有很多迷雾。

这个领域的新手哪里可以开始?读完规格后,我该怎么办?

我被困在这里,我正在寻求你的帮助! :)

更新:

我正在查看DotNetOpenOauth lib中的OAuthAuthorizationServer示例。我首先尝试使用它,因为我已经使用 sampleconsumer ID下载了它。但是,我收到一个错误:"找不到OpenID端点。 - 序列不包含匹配元素"

在此代码中:

[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl) {
    if (ModelState.IsValid) {
        var rp = new OpenIdRelyingParty();
        var u = new Uri(Request.Url, Url.Action("Authenticate"));
        var request = rp.CreateRequest(model.UserSuppliedIdentifier, Realm.AutoDetect, u);
        if (request != null) {
            if (returnUrl != null) {
                request.AddCallbackArguments("returnUrl", returnUrl);
            }

            return request.RedirectingResponse.AsActionResult();
        } else {
            ModelState.AddModelError(string.Empty, "The identifier you supplied is not recognized as a valid OpenID Identifier.");
        }
    }

    // If we got this far, something failed, redisplay form
    return View(model);
}

错误是var request = rp.CreateRequest ...代码行。为什么呢?

0 个答案:

没有答案