【问题标题】:What is the best OAuth2 C# library? [closed]什么是最好的 OAuth2 C# 库? [关闭]
【发布时间】:2011-04-07 13:36:00
【问题描述】:

似乎许多应用程序提供商都在使用 OAuth2 来允许 API 访问,例如 Twitter 和 Facebook。有没有人使用一个好的库来进行足以在所有应用程序中使用的通用 OAuth2 处理?

【问题讨论】:

  • 我对关闭投票感到困惑。要求图书馆推荐以完成特定任务现在是“主观的和争论的”?
  • 有些人出于某种原因认为“最好”和“最差”的任何想法都是完全不客观的。我不知道为什么,但他们认为“绿色是最好的颜色!!!!”与“在这些条件下什么是最好的库是一样的:...”
  • 还有基于 Katana 的 Microsoft 实现,nuget.org/packages/Microsoft.Owin.Security.OAuth
  • 我认为所有 SO 版主都有一项内部政策来关闭“推荐”问题,因为他们害怕因“稀少内容”而受到谷歌惩罚

标签: c# .net asp.net .net-3.5 oauth


【解决方案1】:

你应该看看OAuth2。它是大多数流行提供商的 OAuth 1.0 和 OAuth 2.0 协议的 .NET 实现:

  • 谷歌
  • 脸书
  • 推特
  • 四方
  • instagram
  • 已链接
  • Windows 直播
  • vkontakte
  • odnoklassniki
  • yandex
  • mail.ru
  • github

Nuget 包是there

【讨论】:

  • 我们有这个库的详细工作示例吗?我可以看到一些使用示例,但我不明白什么是AuthroizationRoot
【解决方案2】:

我没有研究它的内部结构(源代码链接已损坏),但总的来说DotNetOpenAuth 似乎很专业。

更新:现在也支持 OAuth 2 和 OpenID。

【讨论】:

  • 上次我检查了 DotNetOpenAuth 不支持 OAuth 2.0。
  • @Micah 你是对的。我相信当我回答时没有注意到某些事情(可能他们的设计不同,或者他们错误地声称支持 OAUth2)。我现在会更新答案。
  • 现在(2013 年 2 月)DotNetOpenAuth 支持 OAuth2 和 OpenID。
  • @GrzegorzGierlik 感谢您的更新。由于人们很少阅读 cmets,所以我放了更新而不是您的修改。
  • 我强烈不推荐使用 DNOA。几乎没有关于如何使用该库的文档,因此当您遇到任何问题时,您肯定会靠自己。如果您尝试访问的 Web 服务有一个包含 OAuth 实现的 .NET SDK,那么就去做吧。我为此付出了高昂代价的个人建议,不要去 DNOA 否则准备好独自阅读代码的不安之夜!
【解决方案3】:

我还没有看到任何好的 OAuth2 框架。我决定尝试为一个项目推出自己的项目。

到目前为止,我的框架支持不记名令牌和所有 oauth 2 流(挑战/响应、隐式、客户端凭据、资源所有者密码和刷新令牌)。

这有点笨拙,我正在开发我的第一个基于此框架构建的 REST 服务。

检查一下,任何反馈或贡献将不胜感激。

https://github.com/ghorsey/SharpOAuth2

【讨论】:

    【解决方案4】:

    我会查看Hammock REST 客户端库。它是通用的 REST 客户端,但它也提供 OAuth 支持。

    【讨论】:

    • Hammock REST 不支持 oAuth2。仅 oAuth 1.0a
    猜你喜欢
    • 2010-09-15
    • 2010-10-02
    • 2010-10-05
    • 1970-01-01
    • 2010-09-20
    • 2011-03-22
    • 2010-10-04
    • 2010-09-10
    • 1970-01-01
    相关资源
    最近更新 更多