Example #1
0
      public async Task <IActionResult> login(UserloginDto dto)
      {
          var Existingrepo = await _Repository.Login(dto.username.ToLower(), dto.password);

          if (Existingrepo == null)
          {
              return(Unauthorized());
          }

          var claims = new[] {
              new Claim(ClaimTypes.NameIdentifier, Existingrepo.Id.ToString()),
              new Claim(ClaimTypes.Name, Existingrepo.Username.ToString())
          };

          var key   = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_config.GetSection("AppSettings:Token").Value));
          var Creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha512Signature);

          var TokenDesc = new SecurityTokenDescriptor {
              Subject            = new ClaimsIdentity(claims),
              Expires            = DateTime.Now.AddDays(1),
              SigningCredentials = Creds
          };

          var tokenhandler = new JwtSecurityTokenHandler();

          var GeneratedToken = tokenhandler.CreateToken(TokenDesc);

          return(Ok(new {
                token = tokenhandler.WriteToken(GeneratedToken)
            }));
      }
Example #2
0
        public async Task <IActionResult> Login(UserloginDto request)
        {
            var response = await _authRepo.Login(request.Username, request.Password);

            if (!response.IsSuccess)
            {
                return(BadRequest(response.Message));
            }
            return(Ok(response));
        }