【问题标题】:Best way to handle authentication on .NET WCF Web API在 .NET WCF Web API 上处理身份验证的最佳方式
【发布时间】:2011-10-12 15:13:28
【问题描述】:

我对 DotNetOpenAuth 和 OAuth 大致熟悉,但就 Web API 开发而言,根据以下标准锁定 Web 服务的最佳方法是:

  • 易于实施
  • 与面向最终用户的平台(iOS、Android、Win Phone、Flex...)的互操作性/兼容性
  • 它是否明确基于标准(例如 OAuth)

谢谢!

【问题讨论】:

    标签: oauth asp.net-web-api dotnetopenauth


    【解决方案1】:

    请看这里:OAuth 2.0 in Web API

    WebApiContrib 项目中也有基本身份验证示例,这些示例很简单,但不应该在没有 SSL 的情况下使用。

    【讨论】:

    • 好的,这很有帮助,但这是我的问题:我如何在提供的示例中充当“Facebook”?本文假设您要使用外部 OAuth 凭据提供程序。我想在这里建立信用提供者和网络服务。
    【解决方案2】:

    DotNetOpenAuth .zip 下载包含一个受 OAuth 保护的示例 WCF 服务。

    【讨论】:

    • 我刚刚下载了您的示例。我很欣赏这么多示例,但我对所有项目名称和术语感到有些困惑。是否有特定示例演示使用 Oauth2 自己提供 oauth 令牌,而不是使用已知的 openid 提供程序(如 google)?
    • OAuthResourceServer 示例演示了使用 OAuth 2 访问令牌进行授权。 OAuthAuthorizationServer 示例演示了这些访问令牌的发布。授权服务器使用 OpenID 登录用户这一事实与 OAuth 流程正交,您可以将其替换为您想要的任何内容。
    【解决方案3】:

    有几个 wcf web api 实现来处理互联网上的身份验证。我也做了一个@http://misaxionsoftware.wordpress.com/2011/07/29/secure-restful-web-service-by-wcf-web-api-no-https-seriously/

    注意:代码基于预览版 3,预览版 5 中某些类名已更改。

    实现的想法是确保没有 SSL 的安全通信。

    很容易构建。该功能对您的服务是透明的,因为所有工作都在消息处理程序中完成。您不必费心在服务方法中调用身份验证函数。

    与支持 RSA 加密的端点兼容。

    基于标准,嗯...标准因情况而异...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-26
      • 2018-06-23
      • 2015-07-14
      • 2020-10-15
      • 1970-01-01
      • 2012-06-17
      相关资源
      最近更新 更多