public bool AuthenticateUser(ScimLogin loginModel) { return(repository .AuthenticateUser( loginModel.UserName, loginModel.Password)); }
public IActionResult Post([FromBody] ScimLogin loginModel) { try { if (ModelState.IsValid) { var authenticated = userService.AuthenticateUser(loginModel); if (!authenticated) { return(Unauthorized()); } var claims = new[] { new Claim(JwtRegisteredClaimNames.Sub, loginModel.UserName), new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()) }; var token = new JwtSecurityToken ( issuer: configuration.GetValue <string>("Issuer"), audience: configuration.GetValue <string>("Audience"), claims: claims, expires: DateTime.UtcNow.AddDays(60), notBefore: DateTime.UtcNow, signingCredentials: new SigningCredentials( new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration.GetValue <string>("SigningKey"))), SecurityAlgorithms.HmacSha256) ); return(Ok(new { token = new JwtSecurityTokenHandler().WriteToken(token) })); } } catch (Exception ex) { throw ex; } return(BadRequest()); }