Exemplo n.º 1
0
        public bool Login(ref string account, ref string pwd, LoginFlags flags)
        {
            ////modify by hyh 为调试方便所用,上线前需删除
            //account = "10910";
            //pwd = "xgmes";
            ////end
            tbAccount.Text = account;
            tbPWD.Text     = pwd;

            switch (flags)
            {
            case LoginFlags.loginDisableAccount:
            {
                tbAccount.Enabled = false;
            }
            break;

            case LoginFlags.loginHideAccount:
            {
                tbAccount.Visible = false;
            }
            break;
            }

            if (ShowDialog() != DialogResult.OK)
            {
                return(false);
            }

            account = tbAccount.Text;
            pwd     = tbPWD.Text;
            return(true);
        }
Exemplo n.º 2
0
 public static LoginFlags SetValue(this LoginFlags flags, LoginFlags flag, bool value)
 {
     if (value)
     {
         return(flags | flag);
     }
     else
     {
         return(flags & ~flag);
     }
 }
Exemplo n.º 3
0
 private void UpdateLoginFlag(ILogin login, LoginFlags flag, bool?value)
 {
     if (value == null)
     {
         return;
     }
     if (value.Value)
     {
         login.Flags |= flag;
     }
     else
     {
         login.Flags &= ~flag;
     }
 }
Exemplo n.º 4
0
        public ILogin NewLogin(IEntitySession session, string userName, string password,
                               DateTime?expires = null, LoginFlags flags = LoginFlags.None, Guid?loginId = null,
                               Guid?userId      = null, Int64?altUserId  = null, Guid?tenantId = null)
        {
            userName = CheckUserName(session.Context, userName);
            CheckPasswordStrength(session.Context, password);
            var login = session.NewEntity <ILogin>();

            if (loginId != null)
            {
                login.Id = loginId.Value;
            }
            login.UserName                = userName;
            login.PasswordHash            = HashPassword(password, login.Id);
            login.TenantId                = (tenantId == null) ? Guid.Empty : tenantId.Value;
            login.Flags                   = flags;
            login.HashWorkFactor          = _settings.PasswordHasher.WorkFactor;
            login.WeakPasswordHash        = GetWeakPasswordHash(password);
            login.PasswordResetFactors    = _settings.DefaultPasswordResetFactors;
            login.MultiFactorLoginFactors = ExtraFactorTypes.Email; //default, but multi-factor is not enabled yet
            login.IncompleteFactors       = login.PasswordResetFactors;
            if (userId != null)
            {
                login.UserId = userId.Value;
            }
            if (altUserId != null)
            {
                login.AltUserId = altUserId.Value;
            }
            var utcNow = App.TimeService.UtcNow;

            if (expires != null)
            {
                login.Expires = expires;
            }
            else
            {
                SetPasswordExpiration(login);
            }
            login.PasswordResetOn = utcNow;
            login.CreatePasswordHistoryEntry();
            OnLoginEvent(session.Context, LoginEventType.LoginCreated, login);
            return(login);
        }
Exemplo n.º 5
0
 public ILogin NewLogin(IEntitySession session, string userName, string password,
     DateTime? expires = null, LoginFlags flags = LoginFlags.None, Guid? loginId = null,
     Guid? userId = null, Int64? altUserId = null, Guid? tenantId = null)
 {
     userName = CheckUserName(session.Context, userName);
       CheckPasswordStrength(session.Context, password);
       var login = session.NewEntity<ILogin>();
       if(loginId != null)
     login.Id = loginId.Value;
       login.UserName = userName;
       login.UserNameHash = Util.StableHash(userName);
       login.PasswordHash = HashPassword(password, login.Id);
       login.TenantId = (tenantId == null) ? Guid.Empty : tenantId.Value;
       login.Flags = flags;
       login.HashWorkFactor = _settings.PasswordHasher.WorkFactor;
       login.WeakPasswordHash = GetWeakPasswordHash(password);
       login.PasswordResetFactors = _settings.DefaultPasswordResetFactors;
       login.MultiFactorLoginFactors = ExtraFactorTypes.Email; //default, but multi-factor is not enabled yet
       login.IncompleteFactors = login.PasswordResetFactors;
       if (userId != null)
     login.UserId = userId.Value;
       if(altUserId != null)
     login.AltUserId = altUserId.Value;
       var utcNow = App.TimeService.UtcNow;
       if(expires != null)
     login.Expires = expires;
       else
     SetPasswordExpiration(login);
       login.PasswordResetOn = utcNow;
       login.CreatePasswordHistoryEntry();
       OnLoginEvent(session.Context, LoginEventType.LoginCreated, login);
       return login;
 }
Exemplo n.º 6
0
 public static bool IsSet(this LoginFlags flags, LoginFlags flag)
 {
     return (flags & flag) != 0;
 }
Exemplo n.º 7
0
 public static LoginFlags SetValue(this LoginFlags flags, LoginFlags flag, bool value)
 {
     if(value)
     return flags | flag;
       else
     return flags & ~flag;
 }
Exemplo n.º 8
0
 public static LoginFlags SetMasked(this LoginFlags flags, LoginFlags newFlags, LoginFlags mask)
 {
     return((flags & ~mask) | (newFlags & mask));
 }
Exemplo n.º 9
0
 public static bool IsSet(this LoginFlags flags, LoginFlags flag)
 {
     return((flags & flag) != 0);
 }
Exemplo n.º 10
0
 private void UpdateLoginFlag(ILogin login, LoginFlags flag, bool? value)
 {
     if(value == null) return;
       if(value.Value)
     login.Flags |= flag;
       else
     login.Flags &= ~flag;
 }