Ejemplo n.º 1
0
 public UserResource(Models.DbModels.Users user, string token)
 {
     Id       = user.Id;
     Username = user.Username;
     Email    = user.Email;
     Facebook = user.Facebook;
     Token    = token;
 }
Ejemplo n.º 2
0
        public int Insert(Models.DbModels.Users u)
        {
            try
            {
                _userRepository.Insert(u);

                return(u.Id);
            }
            catch (Exception ex)
            {
                // Do some logging stuff
                return(-1);
            }
        }
Ejemplo n.º 3
0
        // helper methods

        private string generateJwtToken(Models.DbModels.Users user)
        {
            // generate token that is valid for 7 days
            var tokenHandler    = new JwtSecurityTokenHandler();
            var key             = Encoding.ASCII.GetBytes(_appSettings.Secret);
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject            = new ClaimsIdentity(new[] { new Claim("id", user.Id.ToString()), new Claim("Name", user.Username) }),
                Expires            = DateTime.UtcNow.AddDays(7),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
            };
            var token = tokenHandler.CreateToken(tokenDescriptor);

            return(tokenHandler.WriteToken(token));
        }
Ejemplo n.º 4
0
        public string Authenticate(Models.DbModels.Users model)
        {
            var user = _userRepository.Get(x => (x.Email == model.Username || x.Username == model.Username) && x.Password == model.Password).FirstOrDefault();

            // return null if user not found
            if (user == null)
            {
                return(null);
            }

            // authentication successful so generate jwt token
            var token = generateJwtToken(user);

            return(token);
        }