【发布时间】:2013-06-21 09:14:16
【问题描述】:
我对 ASP.NET Web API 还是很陌生。我目前正在开发基于 Web API 的新应用程序的身份验证部分,该应用程序是使用公司的一些库/某种框架开发的。
已经有一些 MVC 应用程序 - 他们使用基于表单的身份验证,他们没有使用 IPrincipal 来存储有关用户的信息,而是基于统一的方法,将数据保存在自定义 IUser 对象中(基本上保存在会话中) . Web API 应用程序将是无状态的(无会话),只是我将在身份验证 cookie 中添加一些用户相关信息(在 Application_PostAuthenticateRequest 中按请求检索)。
我有点犹豫是将这些与用户相关的数据保存在 IPrincipal 的自定义实现中(我注意到这是一种做法),或者使用公司中其他应用程序的当前方法使用 IUser - 由 Unity 提供服务,使用每个请求生命周期管理器。
您认为哪种方法更好?
【问题讨论】:
标签: authentication asp.net-web-api unity-container iprincipal