Exemplo n.º 1
0
        public ParkdepotUser registerUser(ParkdepotUser newUser)
        {
            dbContext.Add(newUser);
            dbContext.SaveChanges();

            return(getUser(newUser.Email));
        }
Exemplo n.º 2
0
        public ParkdepotUser registerUser(ParkdepotUser newUser)
        {
            ParkdepotUser persistedUser = _authRepository.getUser(newUser.Email);

            if (persistedUser != null)
            {
                return(null);
            }

            newUser.Pass = hash(newUser.Pass);
            return(_authRepository.registerUser(newUser));
        }
Exemplo n.º 3
0
        public ParkdepotUser login(string email, string password)
        {
            ParkdepotUser user          = _authRepository.getUser(email);
            bool          isPassCorrect = false;

            if (user != null)
            {
                isPassCorrect = verify(password, user.Pass);
            }

            return(isPassCorrect ? user : null);
        }
Exemplo n.º 4
0
        public IActionResult registerUser([FromBody] ParkdepotUser newUser)
        {
            ParkdepotUser persistedUser = authService.registerUser(newUser);
            string        userToken     = JwtTokenService.GenerateToken(persistedUser);

            //TODO: Add a DTO layer
            var userDTO = new
            {
                Email      = persistedUser.Email,
                Username   = persistedUser.Username,
                Permission = persistedUser.Permission,
                JwtToken   = userToken
            };

            return(Ok(userDTO));
        }
Exemplo n.º 5
0
        public static string GenerateToken(ParkdepotUser user)
        {
            JwtSecurityTokenHandler tokenHandler = new JwtSecurityTokenHandler();

            byte[] key = Encoding.ASCII.GetBytes(Settings.Secret);
            SecurityTokenDescriptor tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.Email, user.Email.ToString()),
                }),
                Expires            = DateTime.UtcNow.AddHours(2),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
            };

            SecurityToken token = tokenHandler.CreateToken(tokenDescriptor);

            return(tokenHandler.WriteToken(token));
        }
Exemplo n.º 6
0
        public async Task <ActionResult <dynamic> > login([FromBody] ParkdepotUser postedUser)
        {
            ParkdepotUser loggedUser = authService.login(postedUser.Email, postedUser.Pass);

            if (loggedUser == null)
            {
                return(BadRequest());
            }

            string userToken = JwtTokenService.GenerateToken(loggedUser);

            //TODO: Add a DTO layer
            var userDTO = new
            {
                Email       = loggedUser.Email,
                Username    = loggedUser.Username,
                Permission  = loggedUser.Permission,
                LandingPage = loggedUser.LandingPage,
                JwtToken    = userToken
            };

            return(Ok(userDTO));
        }