【问题标题】:mvc authentication against web api middle tier针对 web api 中间层的 mvc 身份验证
【发布时间】:2015-03-30 05:52:42
【问题描述】:

我目前有一个 web api 2 项目作为我的应用程序中间层。我需要保护这个项目,并为我的 MVC 项目以及可能的 iOS 和 Android 应用程序提供身份验证服务。

web api 业务逻辑需要检查用户权限/角色以确保安全,mvc 项目在功能上需要相同的功能以确保对控制器的请求有效。如何使用 Asp.net Identity 或其他方式执行此操作?有没有这类事情的参考项目?

【问题讨论】:

  • 这也是我真正想要弄清楚的事情。我的 web 层连接到我的 api 以检索数据等,但我需要确保我可以在两个层中正确授权。

标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-identity


【解决方案1】:

这里有一些很好的信息: http://www.asp.net/web-api/overview/security/authentication-filters

我看到的另一种方法是使用单独的 API 为“事务”生成访问令牌,使用您想要使用的任何凭据......但通常通过 https 完成!然后,此令牌由客户端作为参数传递给业务层 API。可以对令牌进行各种检查,例如请求令牌的同一客户端?令牌过期了?令牌已使用?等等

让我知道你是怎么过的。

谢谢。

更新

本地帐户的 Web API 安全性: http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api

【讨论】:

  • 不幸的是,链接不是我所追求的。它描述了使用基本访问身份验证机制。这并不是我真正想要的,因为我必须将密码哈希存储在存储机制中,以便随每个请求一起发送。令牌是我一直在考虑的事情,但我认为通过 Asp.net Identity 会有更集成的方式
  • 这就是你想要的吗? asp.net/web-api/overview/security/…
  • 这对于 Web API 来说很好,例如 iOS 应用程序可能会如何工作,但我需要将 IPrincipal 用户传递回 MVC 应用程序,除非我遗漏了什么?
猜你喜欢
  • 2016-07-03
  • 2020-07-29
  • 1970-01-01
  • 2015-09-17
  • 2016-07-16
  • 2014-06-02
  • 2015-09-07
  • 2015-04-05
  • 1970-01-01
相关资源
最近更新 更多