private IEnumerable <Claim> GetUserRoleClaims(ExpensasAbbinatura.Models.Person user) { List <Claim> claims = new List <Claim>(); claims.Add(new Claim(ClaimTypes.NameIdentifier, user.PersonId.ToString())); claims.Add(new Claim(ClaimTypes.Role, user.RoleCode)); return(claims); }
public async Task <bool> SignIn(HttpContext httpContext, ExpensasAbbinatura.Models.Person user, bool isPersistent = false) { var dbUserData = _context.Persons.FirstOrDefault(x => x.Email == user.Email); if (dbUserData == null) { return(false); } ClaimsIdentity identity = new ClaimsIdentity(this.GetUserClaims(dbUserData), CookieAuthenticationDefaults.AuthenticationScheme); ClaimsPrincipal principal = new ClaimsPrincipal(identity); await httpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal); return(true); }