나는 종속성 때문에 등 ClaimsIdentity
을 가진 클래스가 있습니다는 ASP.NET 코어 의존성 주입 내부에서 ClaimsPrincipal 또는 ClaimsIdentity 얻기
이 이공공 ClaimsIdentityDecorator이 (ClaimsIdentity 정체성)
가정임을를 현재 사용자의 소유권 주장.
services.AddScoped(x=>
{
var context = x.GetService<IHttpContextAccessor>();
return context.HttpContext.User.Identity as ClaimsIdentity;
});
가 나는 사용자의 주장을 검사해야하고, ClaimsIdentity 또는 ClaimsPrincipal 또는 다른 신원 객체가 자동으로 나를 위해 주입 될 것으로 보인다 : 그래서 같은 IHttpContextAccessor
통해처럼 검색 할 수 있습니다. 그것을 HttpContext에서 가져 와서 직접 추가하는 것이 좋습니다. 그러나 이미 거기에있는 클래임을 가진 다른 객체 나 인터페이스가 있다면, 그 클래스를 종속성을 가지도록 디자인하고 싶습니다.
또한 스코프 수준에서 주입해야합니다.
'IHttpContextAccessor'를 종속 클래스에 삽입하고 필요에 따라 사용자를 컨텍스트에서 추출하지 않는 이유는 무엇입니까? – Nkosi
@ Nkosi 왜냐하면 나는 현재 사용자와 그의 주장을 원하기 때문이다. 전체 http 컨텍스트가 아닙니다. –