我正在编写一个 aspnet core 1 应用程序。
使用不记名 token 身份验证,我在 Controller 内拥有具有正确身份的 User 属性。但是,我似乎无法像使用 ClaimPrincipal.Current
之前那样找到一种方法来获取身份。静止的。
在不传递 ClaimPrincipal 对象的情况下,在 BL 层中获取这些数据的当前最佳实践是什么?
最佳答案
进一步调查这个问题我发现可以使用 native DI 容器注入(inject) ClaimsPrincipal
在需要这样的地方:
services.AddTransient<ClaimsPrincipal>(s =>
s.GetService<IHttpContextAccessor>().HttpContext.User);
注入(inject)它感觉有点奇怪,但是它比将它存储在
CallContext
中要好。 .
关于asp.net - 在 aspnet core 1 应用程序的逻辑层中获取 ClaimsPrincipal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38291374/