public IActionResult Login([FromBody] LoginModel user) // public IActionResult Login(string username) { if (user == null) { return(BadRequest("Invalid client request")); } try { if (ValidateUser(user)) { var model = TokenBuilder.CreateJsonWebToken(user.UserName, null, null, user.Issuer, user.ApplicationID, DateTime.UtcNow.AddDays(1)); return(Ok(model)); } else { return(Unauthorized()); } } catch (Exception ex) { _logger.LogError($"Something went wrong inside the LocationTracking action: {ex}"); return(StatusCode(500, "Internal server error")); } }
public async Task <IActionResult> Token(StringModel <LoginDto> StringModel) { try { LoginDto model = AESEncryptDecrypt <LoginDto> .DecryptStringAES(StringModel.Model); byte[] ecodedString = Convert.FromBase64String(model.Password); string password = Encoding.UTF8.GetString(ecodedString); Microsoft.AspNetCore.Identity.SignInResult result = await _signInManager.PasswordSignInAsync(model.Username, password, false, false); if (result.Succeeded) { AppIdentityUser appUser = _userManager.Users.SingleOrDefault(r => r.UserName == model.Username); if (appUser == null) { return(Ok(new APIResult <Guid> { Message = Messages.NoRecord, IsSuccess = false })); } IList <string> appUserRoles; appUserRoles = await _userManager.GetRolesAsync(appUser); Service.DTOs.UserCardDto user = await _userService.GetUserByIdentityID(Guid.Parse(appUser.Id)); string token = TokenBuilder.CreateJsonWebToken(appUser.UserName, appUserRoles, "https://www.tulparyazilim.com.tr", "https://www.tulparyazilim.com.tr", Guid.NewGuid(), DateTime.UtcNow.AddDays(30)); var data = new TokenDto { ValidTo = DateTime.UtcNow.AddDays(30), Value = token, Roles = string.Join(',', appUserRoles), Username = appUser.UserName, Email = appUser.Email }; string str = Newtonsoft.Json.JsonConvert.SerializeObject(data); string base64Data = Convert.ToBase64String(Encoding.Default.GetBytes(str)); string encryptredData = AESEncryptDecrypt <string> .EncryptStringAES(base64Data); return(Ok(new APIResult <string> { Message = Messages.Ok, Data = encryptredData, IsSuccess = true })); } return(Ok(new APIResult <Guid> { Message = Messages.NoRecord, IsSuccess = false })); } catch (Exception ex) { return(Ok(new APIResult <Guid> { Message = ex.ToString(), IsSuccess = false })); } }
public IActionResult Post() { var model = TokenBuilder.CreateJsonWebToken("gerp.prod", new List <string>() { "Administrator" }, "http://audience.com", "http://issuer.com", Guid.NewGuid(), DateTime.UtcNow.AddMinutes(20)); return(Ok(model)); }
public IActionResult Post() { // public static string CreateJsonWebToken(string username, IEnumerable<string> roles, string audienceUri, string issuerUri //, Guid applicationId, DateTime expires, string deviceId = null, bool isReAuthToken = false) var model = TokenBuilder.CreateJsonWebToken("ukrit.s", new List <string>() { "Administrator" }, "http://localhost:5000", "http://localhost:5000", "3995132E-22B0-493E-A4BF-2FF52509FAF9", DateTime.UtcNow.AddMinutes(30)); return(Ok(model)); }
public async Task <ActionResult <AuthenticateUserOutputDto> > AuthenticateUser(LoginDto model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var intialInfo = await GetTenantDbInfo(model.HostName); if (intialInfo == null || string.IsNullOrEmpty(intialInfo.TenantDBServer)) { ModelState.AddModelError("", "Invalid Host Name."); return(BadRequest(ModelState)); } var result = await _loginService.AuthenticateUser(intialInfo.GetConnectionString(), model.UserNameOrEmail, model.Password, _jwtConfiguration.RefreshTokenExpiryTime); if (!result.IsAuthenticated) { return(StatusCode(StatusCodes.Status401Unauthorized, "Invalid UserName and Password.")); } List <ClaimModel> claims = SetClaims(intialInfo, result); var token = TokenBuilder.CreateJsonWebToken( model.UserNameOrEmail, claims, _jwtConfiguration.Audience, _jwtConfiguration.Issuer, Guid.NewGuid(), DateTime.UtcNow.AddMinutes(Convert.ToInt32(_jwtConfiguration.ExpireTime))); return(new AuthenticateUserOutputDto(result.UserId, !result.IsPasswordChange, token, _jwtConfiguration.ExpireTime, result.RefreshToken, result.FullName, result.UserName, result.Email, result.IsSuperAdmin, result.DepartmentId, result.RoleRightsId)); } catch (Exception ex) { _logger.LogError(ex.StackTrace); return(StatusCode(StatusCodes.Status500InternalServerError, "Something went wrong!")); } }
private string BuildToken(NovoUsuarioModel user) { var model = TokenBuilder.CreateJsonWebToken( "gerp.project", new List <string>() { user.PermissaoId.ToString(), user.Nome, user.Email, user.DataNacimento.ToString("yyyy-MM-dd"), user.PermissaoId.ToString() }, "http://audience.com", "http://issuer.com", Guid.NewGuid(), DateTime.UtcNow.AddDays(1) ); return(model); }