【发布时间】:2017-08-25 16:46:07
【问题描述】:
作为ClaimsPrincipal 的HttpContext.User 具有Claims 的集合,但HttpContext.User 也具有ClaimsIdentity 的集合,它具有声明的集合,甚至具有与IsAuthenticated 相同的属性和Name。
在为管理员模拟用户的情况下,使用其中一种的目的或时间是什么?还是委托?似乎他们能够根据角色和声明跟踪相同的信息。如果我想让一个用户模拟另一个用户,似乎我可以用模拟用户覆盖 HttpContext.User 并存储一个值以指示它是模拟和原始用户,或者我可以将模拟用户添加到 ClaimsIdentities ?或者是其他东西?
我只是不太了解这种结构,无法确定优缺点或是否有更好的方法。
【问题讨论】:
标签: .net authentication asp.net-core-mvc asp.net-identity claims-based-identity