public async Task <Person> CreatePerson(Person person) { PersonPasswordHasher pph = new PersonPasswordHasher(); person.Password = pph.HashPassword(person, person.Password); person.RoleId = 2; try { StartCondition().Add(person); var result = await _context.SaveChangesAsync(); return(person); } catch {} return(null); }
private ClaimsIdentity GetIdentity(string username, string password) { PersonRepository pr = new PersonRepository(_context); Person person = pr.GetPersonByLogin(username); if (person != null) { PersonPasswordHasher pph = new PersonPasswordHasher(); var result = pph.VerifyHashedPassword(person, person.Password, password); if (result == Microsoft.AspNetCore.Identity.PasswordVerificationResult.Failed) { return(null); } var claims = new List <Claim> { new Claim(ClaimsIdentity.DefaultNameClaimType, person.Login), new Claim(ClaimsIdentity.DefaultRoleClaimType, person.Role.Name) }; ClaimsIdentity claimsIdentity = new ClaimsIdentity(claims, "Token", ClaimsIdentity.DefaultNameClaimType, ClaimsIdentity.DefaultRoleClaimType); return(claimsIdentity); } return(null); }