【发布时间】:2013-09-11 08:32:13
【问题描述】:
我正在开发一个由几个组件组成的系统:
- RESTful 服务 - 必须可从以下位置访问的公共 API 移动设备。 (ASP.NET Web API)
- ASP.NET MVC 4 网站,也使用这些服务。
- 移动应用。
Site\app 用户应该能够使用他们的 Facebook 帐户登录那里。我目前对流程的理解如下:
站点\应用程序向 Facebook 发出请求以获取访问令牌。一旦用户确认将他\她的详细信息传递给我的应用程序,我的站点\应用程序就会收到身份验证令牌。
站点\应用程序将令牌传递给我的 RESTful API
API 通过向 facebook 发送带有密钥的请求来验证令牌。然后用户可以被创建\认证,api为用户生成访问令牌。每次用户尝试访问 API 时,我都认为没有任何理由发出请求。
我正在考虑实现这一点的最佳方法。 ASP.NET MVC 4 具有开箱即用的 OAuth 支持,但它仅在您在 MVC 应用程序中执行所有操作时才有效。 DotNetOpenAuth 已内置 FacebookClient 类,但它假设相同的想法。出于安全原因,我不想在 API 之外公开秘密。
作为最后的选择,我们可以通过直接向 facebook 发出请求来实现这一点,但我想知道是否有更好的选择? DotNetOpenAuth 可以用于这两个步骤的过程吗?
【问题讨论】:
-
你找到方法了吗?
标签: .net asp.net-web-api facebook-authentication