У меня есть код, который использует Identity SignInManager
_signInManager.PasswordSignInAsync
Приведенный выше код работает отлично, я могу войти и выйти из системы.
, но когда я изменяю код входа на использование
var claims = new List<Claim>
{
new Claim(ClaimTypes.NameIdentifier, json.Id.ToString()),
new Claim(ClaimTypes.Name, json.Username),
new Claim(ClaimTypes.Email, json.Email)
};
foreach (var role in json.Role)
claims.Add(new Claim(ClaimTypes.Role, role));
var identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
var principal = new ClaimsPrincipal(identity);
var authProperties = new AuthenticationProperties
{
AllowRefresh = true,
ExpiresUtc = DateTimeOffset.Now.AddDays(7),
IsPersistent = true,
};
await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal, authProperties);
Когда я пытаюсь выполнить запрос, «Пользователь» всегда равен нулю.
Кто-нибудь знает, где я пропускаю