Esempio n. 1
0
        public async Task <string> GenerateTokenString(QueryForExistingUserRAO queryRAO)
        {
            var user = await _context.UserTableAccess.FirstOrDefaultAsync(x => x.UserName == queryRAO.UserName);

            if (user == null)
            {
                return(null);
            }

            //TODO: Roles Stuff
            var tokenHandler    = new JwtSecurityTokenHandler();
            var key             = Encoding.ASCII.GetBytes(_config.GetSection("AppSettings:Token").Value);
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()),
                    new Claim(ClaimTypes.Name, user.UserName),
                    new Claim(ClaimTypes.Role, user.Role)
                }),
                Expires            = DateTime.Now.AddDays(1),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha512Signature)
            };

            var token = tokenHandler.CreateToken(tokenDescriptor);

            return(tokenHandler.WriteToken(token));
        }
Esempio n. 2
0
        public async Task <ExistingUserDTO> UserLogin(QueryForExistingUserRAO userRAO)
        {
            var entity = await _context.UserTableAccess.FirstOrDefaultAsync(x => x.UserName == userRAO.UserName);

            var login = _mapper.Map <ExistingUserDTO>(entity);

            return(login);
        }
Esempio n. 3
0
        public async Task <ReceivedExistingUserRAO> GetExistingUser(QueryForExistingUserRAO userRAO)
        {
            var userEntity =
                await
                _context
                .UserTableAccess
                .FirstOrDefaultAsync(x => x.UserName == userRAO.Username);

            var loginRAO = _mapper.Map <ReceivedExistingUserRAO>(userEntity);

            return(loginRAO);
        }
Esempio n. 4
0
        public async Task <ReceivedExistingUserRAO> Login(QueryForExistingUserRAO queryRao)
        {
            var user = await _context.UserTableAccess.FirstOrDefaultAsync(x => x.UserName == queryRao.UserName);

            if (user == null)
            {
                return(null);
            }

            if (!VerifyPasswordHash(queryRao.Password, user.PasswordHash, user.PasswordSalt))
            {
                return(null);
            }

            return(_mapper.Map <ReceivedExistingUserRAO>(user));
        }
        public async Task <ReceivedExistingUserRAO> Login(QueryForExistingUserRAO queryRao)
        {
            var user = await _userManager.FindByNameAsync(queryRao.UserName);

            var result = await _signInManager
                         .CheckPasswordSignInAsync(user, queryRao.Password, false);

            if (result.Succeeded)
            {
                var appUser = await _userManager.Users
                              .FirstOrDefaultAsync(u => u.NormalizedUserName == queryRao.UserName.ToUpper());

                return(_mapper.Map <ReceivedExistingUserRAO>(appUser));
            }

            throw new NotImplementedException();
        }
Esempio n. 6
0
 public async Task <ExistingUserDTO> InvokeLoginUserCommand(QueryForExistingUserRAO userRAO)
 {
     return(await _command.Execute(userRAO));
 }
Esempio n. 7
0
 public async Task <ReceivedUserRAO> InvokeExistingUserCommand(QueryForExistingUserRAO userRAO)
 {
     return(await _command.Execute(userRAO));
 }
Esempio n. 8
0
 public async Task <ExistingUserDTO> Execute(QueryForExistingUserRAO userRAO)
 {
     return(await _userLoginReceiver.UserLogin(userRAO));
 }
Esempio n. 9
0
        public async Task <ReceivedUserRAO> GetUserByUsername(QueryForExistingUserRAO existingUserRAO)
        {
            UserEntity userEntity = await _context.UserTableAccess.FirstOrDefaultAsync(x => x.Username == existingUserRAO.Username);

            return(_mapper.Map <ReceivedUserRAO>(userEntity));
        }
Esempio n. 10
0
 public async Task <ReceivedUserRAO> Execute(QueryForExistingUserRAO userRAO)
 {
     return(await _receiver.GetUserByUsername(userRAO));
 }