Ejemplo n.º 1
0
        public ActionResult Login()
        {
            LoginArgs args = RequestArgs <LoginArgs>();

            if (args == null)
            {
                return(RespondResult(false, "参数无效。"));
            }

            UserEntity user = _userManager.Verify(args.Account, args.Password);

            if (user == null)
            {
                return(RespondResult(false, "帐号或密码错误。"));
            }

            UserContext userContext = new UserContext(user);

            SessionContainer.SetUserContext(this.HttpContext, userContext);
            this.UserContext   = userContext;
            this.DomainContext = _domainPool.GetDomainContext(UserContext.User.Domain);

            //操作日志
            _operatedLogManager.Create(new OperatedLogEntity()
            {
                Domain      = DomainContext.Domain.Id,
                AppId       = DomainContext.AppId,
                User        = userContext.User.Id,
                IP          = Request.UserHostAddress,
                Module      = EnumModule.System,
                Description = "用户登陆"
            });

            return(RespondResult());
        }
Ejemplo n.º 2
0
 //登陆成功
 private void LoginSuccess(object source, LoginArgs e)
 {
     Session["userID"]        = e.UserCorrespond.UserID;
     Session["userLoginTime"] = DateTime.Now.ToString();
     _loginInfo.Append(Session["userLoginTime"]);
     Response.Redirect("index.aspx");
 }
        private async Task OnLogin(LoginArgs args)
        {
            try
            {
                var response = await HttpClient.PostAsync($"/api/auth/signIn",
                                                          new StringContent(JsonConvert.SerializeObject(args), Encoding.UTF8, "application/json"));

                if (!response.IsSuccessStatusCode)
                {
                    var responseBody = await response.Content.ReadAsStringAsync();

                    throw new Exception(responseBody);
                }

                response.Headers.TryGetValues("Set-Cookie", out var setCookie);
                var setCookieString = setCookie.OrderByDescending(x => x.Length).FirstOrDefault();
                var firstCookie     = setCookieString.Split(';')[0];
                await JSRuntime.InvokeAsync <string>("addCookie", firstCookie);

                Navigator.NavigateTo("/", true);
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message);
            }
        }
Ejemplo n.º 4
0
 public void BtnLoginClick()
 {
     string mName = name.value;
     string mPwd = pwd.value;
     EventArgs args = new LoginArgs(mName, mPwd);
     if(Login != null) Login(this, args);
 }
Ejemplo n.º 5
0
 public void BtnSignupClick()
 {
     string mName = name.value;
     string mPwd = pwd.value;
     EventArgs args = new LoginArgs(mName, mPwd);
     if (Signup != null) Signup(this, args);
 }
Ejemplo n.º 6
0
            public async Task Login_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken)
            {
                var args = new LoginArgs();
                await args.ReadAsync(iprot, cancellationToken);

                await iprot.ReadMessageEndAsync(cancellationToken);

                var result = new LoginResult();

                try
                {
                    result.Success = await _iAsync.LoginAsync(args.Request, cancellationToken);

                    await oprot.WriteMessageBeginAsync(new TMessage("Login", TMessageType.Reply, seqid), cancellationToken);

                    await result.WriteAsync(oprot, cancellationToken);
                }
                catch (TTransportException)
                {
                    throw;
                }
                catch (Exception ex)
                {
                    Console.Error.WriteLine("Error occurred in processor:");
                    Console.Error.WriteLine(ex.ToString());
                    var x = new TApplicationException(TApplicationException.ExceptionType.InternalError, " Internal error.");
                    await oprot.WriteMessageBeginAsync(new TMessage("Login", TMessageType.Exception, seqid), cancellationToken);

                    await x.WriteAsync(oprot, cancellationToken);
                }
                await oprot.WriteMessageEndAsync(cancellationToken);

                await oprot.Transport.FlushAsync(cancellationToken);
            }
Ejemplo n.º 7
0
        public async Task <IActionResult> Login([FromBody] LoginArgs args)
        {
            if (!ModelState.IsValid)
            {
                return(new BadRequestObjectResult(new ErrorsResponse(ModelState)));
            }


            LdapUser user = new LdapUser();

            try
            {
                user = await Task.Run(() => _ldap.GetUser(args.Username, args.Password));
            }
            catch (LdapConnectionException e)
            {
                _logger.LogError($"exception: {e}");
                return(StatusCode(500, new ErrorResponse("could not connect to LDAP server")));
            }
            catch (LdapUnauthorizedException e)
            {
                _logger.LogWarning($"exception: {e}");
                return(Unauthorized());
            }

            return(Ok(new TokenResponse(new JwtSecurityTokenHandler().WriteToken(_jwt.BuildToken(new[] {
                new Claim(JwtRegisteredClaimNames.Sub, user.Username),
                new Claim("name", user.DisplayName),
                new Claim("role", user.Role)
            })))));
        }
Ejemplo n.º 8
0
    public void LoginButtonClick(GameObject go)
    {
        Debug.Log("Try Login! " + nameInput.text);

        if (string.IsNullOrEmpty(nameInput.text))
        {
            return;
        }
        GameMain.Instance.accountName = nameInput.text;
        mainPanel.SetActive(true);
        loginPanel.SetActive(false);

        //SDKManager.Instance.Login();
        LoginArgs args = new LoginArgs();

        args.sdkId = nameInput.text;
        var lMessage = new Message();

        lMessage.Type   = GameEvent.LOGIN_REQ;
        lMessage.Sender = this;
        lMessage.Data   = args;
        lMessage.Delay  = EnumMessageDelay.IMMEDIATE;
        MessageDispatcher.SendMessage(lMessage);
        NetDataManager.Instance.GetServerDatas();
        // args.account = nameInput.text;
        // NetworkManager.LoginReq(args, LoginAck);
    }
Ejemplo n.º 9
0
    void Signup(object sender, EventArgs e)
    {
        LoginArgs args = (LoginArgs)e;
        string    name = args.Name;
        string    pass = args.Pwd;

        LoginVO user = new LoginVO();

        user.username = name;
        user.password = pass;
        user.email    = "*****@*****.**";

        //GameMain.instance.bmob.Signup<LoginVO>(user, (resp, exception) =>
        //{
        //    if (exception != null)
        //    {
        //        Debug.LogError("注册失败, 失败原因为: " + exception.Message);
        //        return;
        //    }

        //    Debug.Log("注册成功");
        //});

        Facade.NotifyObservers(new Notification(LoginFacade.SUBMIT_SIGNUP, user, null));
    }
Ejemplo n.º 10
0
            public async Task <HttpClient> Handle(GenerateHttpClientCommand request, CancellationToken cancellationToken)
            {
                HttpClient client = new HttpClient();

                client.BaseAddress = httpAddress.Uri;

                // get access
                GetAccessCommand getAccessCommand = new GetAccessCommand()
                {
                    httpClient = client
                };
                IdentityModel identity = await mediator.Send(getAccessCommand);

                client.DefaultRequestHeaders.Add("Authorization", string.Format($@"Bearer {identity.access_token}"));
                // get session
                LoginArgs loginArgs = new LoginArgs()
                {
                    password = httpAddress.password,
                    key      = httpAddress.key,
                    userId   = httpAddress.userId
                };
                SessionTokenQueryCommand sessionTokenQueryCommand = new SessionTokenQueryCommand()
                {
                    HttpClient = client,
                    loginArgs  = loginArgs
                };
                var sessionToken = await mediator.Send(sessionTokenQueryCommand);

                client.DefaultRequestHeaders.Add("SessionToken", sessionToken.results);
                //client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
                return(await Task.FromResult(client));
            }
Ejemplo n.º 11
0
        public async Task <IActionResult> SignIn([FromBody] LoginArgs loginArgs)
        {
            try
            {
                // credential validation ...

                var claims = new List <Claim>
                {
                    new Claim(ClaimTypes.Name, "Alex")
                };
                var claimsIdentity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);
                var authProperties = new AuthenticationProperties
                {
                    IsPersistent = true,
                    RedirectUri  = Request.Host.Value
                };

                await AuthenticationHttpContextExtensions.SignInAsync(
                    HttpContext,
                    CookieAuthenticationDefaults.AuthenticationScheme,
                    new ClaimsPrincipal(claimsIdentity),
                    authProperties);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(new { Error = ex.Message }));
            }
        }
Ejemplo n.º 12
0
 /// <summary>
 /// 登录成功
 /// </summary>
 /// <param name="source"></param>
 /// <param name="e"></param>
 private void LoginSuccess(object source, LoginArgs e)
 {
     Session["userID"] = e.UserCorrespond.UserID;
     // 记录用户的登录时间
     // Session["userLoginTime"] = DateTime.Now.ToString();
     // _loginInfo.Append(Session["userLoginTime"]);
     System.Web.HttpContext.Current.Response.Redirect("Index.aspx");
 }
Ejemplo n.º 13
0
 public async Task <IActionResult> Create([FromBody] LoginArgs args)
 {
     if (args.Username == null || args.EMail == null || args.PWHash == null)
     {
         return(new BadRequestResult());
     }
     return(Json((await UserManager.CreateUser(args.Username, args.EMail, args.PWHash))));
 }
Ejemplo n.º 14
0
 public async Task <IActionResult> Login([FromBody] LoginArgs args)
 {
     if ((args?.Username == null && args?.EMail == null) || args?.PWHash == null)
     {
         return(new BadRequestResult());
     }
     return(Json(await UserManager.Login(args.Username?.Trim()?.ToLower(), args.EMail?.Trim().ToLower(), args.PWHash)));
 }
Ejemplo n.º 15
0
    //登录
    public void LoginReq(IMessage rMessage)
    {
        rMessage.IsHandled = true;
        LoginArgs args = rMessage.Data as LoginArgs;

        GameProtocol.Login_ParamDict["sdkId"] = args.sdkId;
        // GameProtocol.Login_ParamDict["password"] = args.password;
        HttpManager.Instance.Post(GameProtocol.Login_URL, GameProtocol.Login_ParamDict, rMessage, LoginAck);
    }
    void Login(object sender, EventArgs e)
    {
        LoginArgs args     = (LoginArgs)e;
        string    name     = args.Name; // dialog.userName.getText();
        string    pass     = args.Pwd;  // new string(dialog.password.getPassword());
        LoginVO   userInfo = new LoginVO(name, pass);

        Facade.NotifyObservers(new Notification(LoginFacade.SUBMIT_LOGIN, userInfo, null));
    }
Ejemplo n.º 17
0
        public async Task <IActionResult> Login(LoginArgs args)
        {
            var result = await _auth.LoginAsync(args.account, args.pwd, "");

            if (result.Success)
            {
                Response.Cookies.Append(DefineConstant.TOKEN_NAME, result.Token);
            }
            return(Json(result));
        }
Ejemplo n.º 18
0
    public void BtnSignupClick()
    {
        string    mName = name.value;
        string    mPwd  = pwd.value;
        EventArgs args  = new LoginArgs(mName, mPwd);

        if (Signup != null)
        {
            Signup(this, args);
        }
    }
Ejemplo n.º 19
0
        public ServerResult <User> Login(LoginArgs args)
        {
            try
            {
                if (args == null)
                {
                    return new ServerResult <User>
                           {
                               Success = false,
                               Message = "Failed to get argument object"
                           }
                }
                ;

                if (string.IsNullOrWhiteSpace(args.UserName))
                {
                    return new ServerResult <User>
                           {
                               Success = false,
                               Message = "UserName required"
                           }
                }
                ;

                if (string.IsNullOrWhiteSpace(args.PasswordHash))
                {
                    return new ServerResult <User>
                           {
                               Success = false,
                               Message = "PasswordHash required"
                           }
                }
                ;

                var user = _repository.GetUserByLogin(args);

                return(new ServerResult <User>
                {
                    Success = true,
                    Data = user
                });
            }
            catch (Exception exc)
            {
                return(new ServerResult <User>
                {
                    Success = false,
                    Message = exc.Message,
                });
            }
        }
Ejemplo n.º 20
0
    void Login(object sender, EventArgs e)
    {
        LoginArgs args = (LoginArgs)e;
        string    name = args.Name;
        string    pass = args.Pwd;

        LoginVO userInfo = new LoginVO();

        userInfo.username = name;
        userInfo.password = pass;
        userInfo.email    = "*****@*****.**";

        Facade.NotifyObservers(new Notification(LoginFacade.SUBMIT_LOGIN, userInfo, null));
    }
Ejemplo n.º 21
0
 void AccountAccessControl_LogIn(object sender, LoginArgs e)
 {
     try
     {
         IJKEService channel = ServiceManager.GetChannel();
         this.user = channel.GetUserResource(e.Username);
         NameText.Text = string.Format("Welcome, {0}", this.user.FirstName);
         ShowAccountsOverview();
         OnChanged("IsLoggedIn");
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Ejemplo n.º 22
0
        // GET: api/account/login

        public ActionResult Login(LoginArgs arg)
        {
            var app = Facade.Caches.OAuthAppCache.Instance.Find(it => string.Equals(Package.MerchantNo, it.APP_CODE, StringComparison.OrdinalIgnoreCase));

            if (app == null)
            {
                return(FailResult("商户不存在", (int)ApiStatusCode.DATA_NOT_FOUND));
            }
            LoginProvider loginProvider = new LoginProvider(Package.UserCode, arg.Password);

            if (!loginProvider.Login(Package.ClientSource, Package.ClientSystem, Package.Device_Id, Request.UserHostAddress, Session.SessionID, Package.ClientVersion, app.APP_ID))
            {
                return(FailResult(loginProvider.PromptInfo.CustomMessage, (int)loginProvider.PromptInfo.ResultType));
            }
            var data = new
            {
                Token = loginProvider.Token
            };

            return(SuccessResult(data));
        }
Ejemplo n.º 23
0
        private void ExeLoginEvent(ClientEvent eEvent)
        {
            //Log
            Log.Info("thread" + Thread.CurrentThread.ManagedThreadId + " exe login event", eEvent.Client.LogSource);

            //OP
            LoginArgs loginArgs = ClientArgs.AnalysisBody <LoginArgs>(eEvent.Body);

            //DB OP
            var result = DbUserAction.Login(loginArgs.Name, loginArgs.Password, eEvent.Client.Address.ToString(), eEvent.Client.Port);

            if (result.Data.Success)
            {
                lock (eEvent.Client)
                {
                    eEvent.Client.Login = true;
                }

                eEvent.Client.Send(new ServerEvent()
                {
                    Type = Event_Type.Login, RawContent = ClientArgs.ToBody(result.Data), SendTime = DateTime.Now.ToString()
                }.ToString());
            }
            else
            {
                lock (eEvent.Client)
                {
                    eEvent.Client.Login = false;
                }
                eEvent.Client.Send(new ServerEvent()
                {
                    Type = Event_Type.Login, RawContent = ClientArgs.ToBody(new BadRequestArgs()
                    {
                        Code = result.ErrorCode, Message = result.Error
                    }), SendTime = DateTime.Now.ToString()
                }.ToString());
            }
        }
Ejemplo n.º 24
0
        public async Task <LoginResponse> Login([FromBody] LoginArgs args)
        {
            var identifier =
                await _db.Identifiers.FirstAsync(x =>
                                                 x.Medium == args.Identifier.Medium && x.Address == args.Identifier.Address && x.IsValid);

            var credential =
                await _db.Credentials.FindAsync(identifier.UserId);

            var hash = Hash.ToSha256(args.Password);

            if (!string.Equals(hash, credential.Hash))
            {
                throw new Exception("invalid credentials");
            }

            var tokenHandler    = new JwtSecurityTokenHandler();
            var secret          = _configuration.GetValue <string>("Jwt:Secret");
            var key             = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(secret));
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.NameIdentifier, identifier.UserId),
                }),
                Expires            = DateTime.UtcNow.AddDays(365),
                SigningCredentials = new SigningCredentials(key, SecurityAlgorithms.HmacSha256Signature)
            };

            var token = tokenHandler.CreateToken(tokenDescriptor);

            return(new LoginResponse
            {
                Token = tokenHandler.WriteToken(token),
                User = await _db.Users.FindAsync(identifier.UserId)
            });
        }
Ejemplo n.º 25
0
            public async Task <LoginResponse> LoginAsync(LoginRequest request, CancellationToken cancellationToken = default(CancellationToken))
            {
                await OutputProtocol.WriteMessageBeginAsync(new TMessage("Login", TMessageType.Call, SeqId), cancellationToken);

                var args = new LoginArgs();

                args.Request = request;

                await args.WriteAsync(OutputProtocol, cancellationToken);

                await OutputProtocol.WriteMessageEndAsync(cancellationToken);

                await OutputProtocol.Transport.FlushAsync(cancellationToken);

                var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken);

                if (msg.Type == TMessageType.Exception)
                {
                    var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken);

                    await InputProtocol.ReadMessageEndAsync(cancellationToken);

                    throw x;
                }

                var result = new LoginResult();
                await result.ReadAsync(InputProtocol, cancellationToken);

                await InputProtocol.ReadMessageEndAsync(cancellationToken);

                if (result.__isset.success)
                {
                    return(result.Success);
                }
                throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "Login failed: unknown result");
            }
        private async void UserLoging(object sender, LoginArgs e)
        {
            if (IsNetworkConnected())
            {
                var responce = await UserLogin(e.UserName, e.Password);

                if (responce.StatusCode == HttpStatusCode.BadRequest)
                {
                    Toast.MakeText(this, "Invalid data !", ToastLength.Short).Show();
                }
                else
                {
                    LoginDialog.Cancelable       = true;
                    LoginDialog.UserNameTxt.Text = "";
                    LoginDialog.PasswordTxt.Text = "";
                    MainMenuLoginItem?.SetTitle("Logout");
                    LoginDialog.Dismiss();
                }
            }
            else
            {
                NetworkErrorMessage.Show();
            }
        }
Ejemplo n.º 27
0
 public ServerResult <User> Login([FromBody] LoginArgs args)
 {
     return(_loginService.Login(args));
 }
Ejemplo n.º 28
0
 public User GetUserByLogin(LoginArgs args)
 {
     return(_context.Users.Single(u => u.UserName == args.UserName && u.PasswordHash == args.PasswordHash));
 }
Ejemplo n.º 29
0
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public Authentication Login(string userName, string password, out ResultModel res)
        {
            res = new ResultModel();
            var args = new LoginArgs
            {
                LoginName = userName,
                Password  = password,
            };
            //var args = new AuthenticateArgs
            //{
            //    LoginName = userName,
            //    Password = password,

            //};
            var options = LoginOptions.Default;

            try
            {
                var result = AccountService.Instance.Login(args, options);
                //  var result = AccountService.Instance.Authenticate(args);
                if (!result.Ok)
                {
                    throw result.Error;
                }
                res.ErrCode = 1;
                return(result.State[0]);
            }
            catch (LoginNameNotExistException ex)
            {
                res.ErrCode = -1;
                res.ErrMsg  = "账户或密码错误";
                return(null);
            }
            catch (PasswordInvalidException ex)
            {
                res.ErrCode = -1;
                res.ErrMsg  = "账户或密码错误";
                if (ex.MaxFailedTimes != -1)
                {
                    res.ErrMsg = "账户或密码错误,{ex.MaxFailedTimes}次输入错误后账户将被锁定";
                }
                return(null);
            }
            catch (StaffDimissionException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("用户已离职", ex));
                res.ErrCode = -2;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (TenantDisabledException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("租户已停用", ex));
                res.ErrCode = -3;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (PasswordExpiredException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("密码已过期", ex));
                res.ErrCode = -9;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (PasswordStrengthException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("密码强度不符合规范", ex));
                res.ErrCode = -10;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (LoginIntervalOverlongException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("账户已停用", ex));
                res.ErrCode = -14;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (UserDisabledException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("账户已停用", ex));
                res.ErrCode = -14;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (AccountLockedException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("账户已锁定", ex));
                res.ErrCode = -15;
                //账号已被锁定,请点击忘记密码或30分钟后重试
                //账号已被锁定,请30分钟后重试
                res.ErrMsg = ex.Message.Replace("点击忘记密码或", "");
                return(null);
            }
            catch (NoTenantAvailableException ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("登录失败", ex));
                res.ErrCode = -1;
                res.ErrMsg  = ex.Message;
                return(null);
            }
            catch (System.Exception ex)
            {
                AppConnectLogHelper.Error(ex.Message, new UserOperateException("登录失败,接口: AccountService.Instance.Login,参数:userName {userName}", ex));
                res.ErrCode = 0;
                res.ErrMsg  = "登录失败";
                return(null);
            }
        }
Ejemplo n.º 30
0
 //登陆失败
 private void LoginFailure(object source, LoginArgs e)
 {
 }
Ejemplo n.º 31
0
 public override void Login(LoginArgs args)
 {
 }