Exemplo n.º 1
0
        public LoginViewModel Validate([FromBody] LoginAuthenticationModel model)
        {
            (bool IsSucceeded, string Error) = _loginAuthenticationModelValidator.IsValid(model);

            if (!IsSucceeded)
            {
                return(new LoginViewModel {
                    Message = Error, Token = null
                });
            }
            var sessionId = Guid.NewGuid().ToString();
            var claims    = new[]
            {
                new Claim(JwtRegisteredClaimNames.UniqueName, model.Username),
                new Claim(ClaimTypes.Role, ("Author")),
                new Claim(JwtRegisteredClaimNames.Jti, sessionId)
            };
            var token = BuildJwtToken(claims, _settings);

            SessionHelper.CreateNewSession(HttpContext, _userLoginService.GetbyUserName(model.Username), _dependencyProvider, token);

            return(new LoginViewModel {
                Message = null, Token = token
            });
        }
Exemplo n.º 2
0
        public (bool IsSucceeded, string Error) IsValid(Model.LoginAuthenticationModel model)
        {
            var userLogin = _userLoginService.GetbyUserName(model.Username);

            if (userLogin == null || !userLogin.Password.Equals(model.Password))
            {
                return(false, "Invalid login credentials.");
            }
            return(true, null);
        }