我对ASP还是个新手。. NET Web API。我目前正在开发一个基于Web API的新应用程序的身份验证部分,该应用程序是使用公司的一些库/框架开发的。
已经有一些MVC应用程序-他们使用基于表单的身份验证,他们不使用IPrincipal来存储关于用户的信息,而是使用基于统一的方法,将数据保存在自定义IUser对象中(基本上保存在会话中)。Web API应用程序将是无状态的(没有会话),只是我将在身份验证cookie中添加一些与用户相关的信息(在Application_PostAuthenticateRequest中检索每个请求)。
我有点不确定是将这个用户相关的数据保存在IPrincipal的自定义实现中(正如我注意到的那样),还是使用公司中使用Unity提供的IUser的其他应用程序的当前方法,使用每个请求生命周期管理器。
你认为哪个是更好的方法?
如果您要跟踪每个会话的用户,请尝试使用Singleton类,如果您要记录进入会话的用户的日志,请将其写在像白名单一样的文本文件中