【问题标题】:Authentication and Authorization through a Web API Service Layer accessed by an ASP.NET web application and an iOS mobile app通过 ASP.NET Web 应用程序和 iOS 移动应用程序访问的 Web API 服务层进行身份验证和授权
【发布时间】:2013-02-16 17:23:49
【问题描述】:

我即将开始开发一个新的 ASP.NET MVC Web 应用程序,我还打算构建一个 iOS 移动版本。

我计划将 MVC 4 Web API 用作服务层,该服务层位于业务层之前,可供 Web 应用程序和移动应用程序访问。

但是,我对如何在此架构中实现身份验证和授权感到有些困惑。

通常在 MVC 应用程序中,一旦用户提交了正确的凭据,我会调用

FormsAuthentication.SetAuthCookie(username, false);

这将创建一个 cookie,然后从一个请求到另一个请求来回传递,以维护用户在应用程序中的会话。

当从 Web 应用程序访问时,我对这将如何通过服务层运行感到困惑。或者从移动应用程序调用服务时它将如何工作。

【问题讨论】:

标签: c# asp.net asp.net-mvc-4 asp.net-web-api


【解决方案1】:

您可以设计您的 Web API,使其要求在每个请求上都发送表单身份验证 cookie。然后,您将使用此 cookie 从中提取当前经过身份验证的用户的用户名。

但是在设计 API 时,通常最好使用一些其他的身份验证方式而不是 cookie。例如,您可以使用Authorization HTTP 标头,要求客户端发送表单身份验证票证的加密值。

您还可以查看following article 关于基于令牌的安全性。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-05
  • 1970-01-01
  • 1970-01-01
  • 2014-02-25
  • 1970-01-01
  • 2012-11-01
相关资源
最近更新 更多