У меня есть приложение в. net core 3.1 мои ConfigureServices выглядят так:
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
//options.Cookie = new CookieBuilder() { Name = "EcomAuth" };
options.LoginPath = "/Account/Login/";
options.AccessDeniedPath = "/Account/AccessDenied";
options.LogoutPath = "/Account/Logout";
options.ExpireTimeSpan = TimeSpan.FromMinutes(120);
});
для какой-то ошибки, когда я устанавливаю имя повара ie, код перестает работать, поэтому эта строка закомментирован. Это мое действие для входа в систему
List<Claim> claims = new List<Claim>
{
new Claim(ClaimTypes.Name, user.Name, ClaimValueTypes.String),
new Claim(ClaimTypes.Role, userType.Name, ClaimValueTypes.String),
new Claim("Idusuario",user.IdUser.ToString(), ClaimValueTypes.String),
};
ClaimsIdentity identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
var authProperties = new AuthenticationProperties
{
AllowRefresh = true,
ExpiresUtc = DateTime.UtcNow.AddMinutes(120),
IsPersistent = true,
RedirectUri = "https://localhost:44318/Account/Logout"
};
await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(identity), authProperties);
для меня все работает нормально.