Tôi đang cố tạo ứng dụng asp.net core mvc 6 bằng xác thực Cookie Middleware. Mã của tôi biên dịch mà không có lỗi, nhưng ngay cả sau khi đăng nhập thành công tôi không được phép sử dụngAsp.Net MVC 6 Xác thực cookie - Cấp phép không thành công
Dưới đây là startup.cs của tôi cấu hình
app.UseCookieAuthentication(options =>
{
options.AuthenticationScheme = "CookieAuth";
options.LoginPath = new PathString("/Account/Login/");
options.AccessDeniedPath = new PathString("/Account/Login/");
options.AutomaticAuthenticate = true;
options.AutomaticChallenge = true;
});
Cũng đăng nhập hành động trong bộ điều khiển của tôi:
public async Task<IActionResult> Login(LoginViewModel model)
{
User foundUser = _userManager.findUser(model.UserName, model.Password);
if (foundUser != null)
{
List<Claim> userClaims = new List<Claim>
{
new Claim("userId", Convert.ToString(foundUser.UserID)),
new Claim(ClaimTypes.Name, foundUser.UserName),
new Claim(ClaimTypes.Role, Convert.ToString(foundUser.RoleID))
};
ClaimsPrincipal principal = new ClaimsPrincipal(new ClaimsIdentity(userClaims));
await HttpContext.Authentication.SignInAsync("CookieAuth", principal);
return RedirectToAction("Index", "Dashboard");
}
return View();
}
Và cuối cùng là hành động Bảng điều khiển/Chỉ mục
[Authorize]
public IActionResult Index()
{
return View();
}
Tôi đặt một số breakpoi nts trong hành động đăng nhập và mọi thứ dường như hoạt động tốt. Cookie cũng được đặt chính xác.
Và bây giờ tôi không biết cách tôi không thể đi đến bảng điều khiển/index sau khi đăng nhập. Mỗi lần tôi đang chuyển hướng đến/tài khoản/Đăng nhập/do thiết lập cấu hình
Tôi đang làm gì sai rồi ?
Cảm ơn bạn rất nhiều! Beacause của một param tôi bị mất 2h của cuộc sống của tôi: ( – Kuba
Cũng xứng đáng lên bầu, cảm ơn bạn cho câu trả lời! Hơn 2 giờ bị mất, nhưng ít nhất tôi biết lý do tại sao –
Đã dành 4 giờ về điều này. cho tham số 'authenticationType' có phải là" Cookie "," JWT "hoặc lược đồ được sử dụng hay bất cứ điều gì? – Omar