ASP.NET Core не реализует олицетворение.Приложения запускаются с идентификатором приложения для всех запросов, используя пул приложений или идентификатор процесса.Если вам нужно явно выполнить действие от имени пользователя, используйте WindowsIdentity.RunImpersonated.
WindowsIdentity.RunImpersonated(user.AccessToken, () =>
{
var impersonatedUser = WindowsIdentity.GetCurrent();
var message =
$"User: {impersonatedUser.Name}\tState: {impersonatedUser.ImpersonationLevel}";
var bytes = Encoding.UTF8.GetBytes(message);
context.Response.Body.Write(bytes, 0, bytes.Length);
});
Подробнее можно прочитать @ Настройка проверки подлинности Windows в ASP.NET Core