Example #1
0
        public async Task <IActionResult> Login([FromBody] AuthLoginModel auth)
        {
            var res = await this._AuthMan.Login(auth);

            if (res.Status == false)
            {
                return(BadRequest(res));
            }
            return(Ok(res));
        }
Example #2
0
        public async Task <DataResponse <AuthModel> > Login(AuthLoginModel auth)
        {
            var res = new DataResponse <AuthModel>();

            res.Data = new AuthModel();
            res.SetSuccessStatsus();

            var user = await this._DbMan.Users
                       .Where(Q => Q.UserName == auth.UserName)
                       .FirstOrDefaultAsync();

            if (user == null)
            {
                res.SetFailedtatsus();
                res.SetMessage(AuthMessage.AuthError, (int)MessageTypeEnum.Error);
                res.Data = null;
                return(res);
            }

            var IsPasswordValid = BCrypt.Net.BCrypt.EnhancedVerify(auth.UserPassword, user.UserPassword, BCrypt.Net.HashType.SHA256);

            if (IsPasswordValid == false)
            {
                res.SetFailedtatsus();
                res.SetMessage(AuthMessage.AuthError, (int)MessageTypeEnum.Error);
                res.Data = null;
                return(res);
            }

            try
            {
                res.Data.Token    = GenerateJwtToken(user);
                res.Data.UserId   = user.UserId;
                res.Data.UserRole = user.UserRole;
            }
            catch (Exception ex)
            {
                var msg = ex.Message; //TODO: Insert Log
                res.SetFailedtatsus();
                res.SetMessage(CommonMessage.CommonErrorMessage, (int)MessageTypeEnum.Exception);
            }

            res.SetMessage(AuthMessage.AuthSuccess, (int)MessageTypeEnum.Success);
            return(res);
        }
Example #3
0
 public JsonResult Post([FromBody] AuthLoginModel data)
 {
     if (ModelState.IsValid)
     {
         bool   status;
         User   user;
         string access_token = AppRepo.IsValidLogin(data, out user, out status);
         if (status)
         {
             CookieOptions options = new CookieOptions()
             {
                 Expires = DateTime.Now.AddYears(1)
             };
             Response.Cookies.Append("access_token", access_token, options);
             return(Json(new { UserId = user.UserId, Role = user.Role }));
         }
     }
     Response.StatusCode = 401;
     return(Json(new { error = "Unauthorized Error" }));
 }
Example #4
0
        public string IsValidLogin(AuthLoginModel model, out User outUser, out bool status)
        {
            var user = (from u in Context.Users
                        where u.Email == model.Email
                        select u).First();

            outUser = user;

            if (CheckPassowrd(model.Password, user))
            {
                status = true;
                return(EncodeToken(new Dictionary <string, object>
                {
                    { "userId", user.UserId },
                    { "username", user.Username },
                    { "role", user.Role }
                }));
            }

            status = false;
            return("");
        }
Example #5
0
 public async Task <AuthResponseDto> Login([FromBody] AuthLoginModel loginModel, CancellationToken cancellationToken = default)
 {
     return(await authService.Authenticate(loginModel.Username, loginModel.Password, cancellationToken).ConfigureAwait(false));
 }