Ejemplo n.º 1
0
 protected void Update(UserPasswordData data)
 {
     data.UserId       = this.UserId;
     data.Salt         = PasswordHelper.GetSalt(Settings.SaltSize);
     data.Password     = PasswordHelper.Salt(data.Salt, this.Password);
     data.ModifiedDate = this.ModifiedDate;
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Verifica se la password per l'utente è scaduta
        /// </summary>
        /// <returns></returns>
        public bool IsPasswordExpired()
        {
            bool expired = false;

            UserPasswordData data = this.GetPasswordData();

            if (data.UserType != UserPasswordData.UserTypesEnum.User)
            {
                // La password è senza scadenza qualora l'utente sia un amministratore (di qualsiasi tipo)
                expired = false;
            }
            else if (data.CreationDate == DateTime.MinValue)
            {
                // Se la data di creazione della password non è impostata,
                // la password è considerata scaduta (anche se è stata definita "Nessuna scadenza password")
                expired = true;
            }
            else if (!data.PasswordNeverExpire)
            {
                DateTime actualDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
                expired = (data.CreationDate > actualDate);

                if (!expired)
                {
                    DateTime expireDate = data.CreationDate.AddDays((double)this.GetAdminPasswordConfig().ValidityDays);
                    expired = (actualDate >= expireDate);
                }
            }

            return(expired);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Caricamento dati relativi alla data creazione e alla scadenza password
        /// </summary>
        protected virtual UserPasswordData GetPasswordData()
        {
            UserPasswordData data = null;

            using (DBProvider dbProvider = new DBProvider())
            {
                DocsPaUtils.Query queryDef = DocsPaUtils.InitQuery.getInstance().getQuery("USER_PASSWORD_GET_DATA");
                queryDef.setParam("userId", this.UserId);
                //if (this.IdAmministrazione == 0)
                //    // System administrator
                //    queryDef.setParam("idAmministrazione", " IS NULL");
                //else
                //    queryDef.setParam("idAmministrazione", " = " + this.IdAmministrazione.ToString());

                string commandText = queryDef.getSQL();
                logger.Debug(commandText);
                logger.Debug(commandText);
                using (IDataReader reader = dbProvider.ExecuteReader(commandText))
                {
                    if (reader.Read())
                    {
                        data = new UserPasswordData(reader);
                    }
                }
            }

            return(data);
        }
Ejemplo n.º 4
0
 protected void Fetch(UserPasswordData data)
 {
     this.UserId               = data.UserId;
     this.Password             = string.Empty;
     this.PasswordConfirmation = string.Empty;
     this.ModifiedDate         = data.ModifiedDate;
 }
Ejemplo n.º 5
0
        public bool CheckPassword(string password, UserPasswordData passData)
        {
            password = password + passData.salt;
            var    bytValue = Encoding.UTF8.GetBytes(password);
            var    bytHash  = hashAlg.ComputeHash(bytValue);
            string base64   = Convert.ToBase64String(bytHash);

            return(base64.Equals(passData.passwordHash));
        }
        public UserPasswordData Update(UserPasswordData data)
        {
            var user = MockDb.Users
                .Where(row => row.UserId == data.UserId)
                .Single();

            Csla.Data.DataMapper.Map(data, user);

            return data;
        }
        public UserPasswordData Update(UserPasswordData data)
        {
            var user = MockDb.Users
                       .Where(row => row.UserId == data.UserId)
                       .Single();

            Csla.Data.DataMapper.Map(data, user);

            return(data);
        }
Ejemplo n.º 8
0
        public UserData ChangePass(UserPasswordData passData)
        {
            var changeUser = data.ChangePass(passData.Login, passData.passwordHash, passData.salt);

            if (changeUser != null)
            {
                var mapper  = new MapperConfiguration(c => c.CreateMap <BLL.DataTransferObjects.User, UserData>()).CreateMapper();
                var getUser = mapper.Map <BLL.DataTransferObjects.User, UserData>(changeUser);
                return(getUser);
            }
            return(null);
        }
        public UserPasswordData Fetch(UserPasswordDataCriteria criteria)
        {
            var data = MockDb.Users
                .Where(row => row.UserId == criteria.UserId)
                .Single();

            var result = new UserPasswordData();

            result.UserId = data.UserId;
            result.Password = data.Password;
            result.Salt = data.Salt;
            result.ModifiedDate = data.ModifiedDate;

            return result;
        }
        public UserPasswordData Fetch(UserPasswordDataCriteria criteria)
        {
            var data = MockDb.Users
                       .Where(row => row.UserId == criteria.UserId)
                       .Single();

            var result = new UserPasswordData();

            result.UserId       = data.UserId;
            result.Password     = data.Password;
            result.Salt         = data.Salt;
            result.ModifiedDate = data.ModifiedDate;

            return(result);
        }
Ejemplo n.º 11
0
        protected override void DataPortal_Update()
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider <IUserPasswordDataFactory>();

                var data = new UserPasswordData();

                using (this.BypassPropertyChecks)
                {
                    this.ModifiedDate = DateTime.Now;

                    this.Update(data);

                    data = dalFactory.Update(data);
                }
            }
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Calcolo del giorno di scadenza della password per l'utente
        /// </summary>
        /// <returns></returns>
        public DateTime GetPasswordExpirationDate()
        {
            UserPasswordData data = this.GetPasswordData();

            if (data.PasswordNeverExpire)
            {
                // Giorno di scadenza illimitato
                return(DateTime.MaxValue);
            }
            else if (data.CreationDate == DateTime.MinValue)
            {
                // Data di creazione non definita, la password è scaduta
                return(DateTime.MinValue);
            }
            else
            {
                // Calcolo del giorno di scadenza
                return(data.CreationDate.AddDays((double)this.GetAdminPasswordConfig().ValidityDays));
            }
        }
Ejemplo n.º 13
0
        //MEV utenti multi-amministrazione
        /// <summary>
        /// Caricamento dati relativi alla data creazione e alla scadenza password per un utente di un'amministrazione
        /// </summary>
        protected virtual UserPasswordData GetPassworUserInAmmdData()
        {
            UserPasswordData data = null;

            using (DBProvider dbProvider = new DBProvider())
            {
                DocsPaUtils.Query queryDef = DocsPaUtils.InitQuery.getInstance().getQuery("USER_IN_AMM_PASSWORD_GET_DATA");
                queryDef.setParam("userId", this.UserId);
                queryDef.setParam("codAmm", this.IdAmministrazione);

                string commandText = queryDef.getSQL();
                logger.Debug(commandText);
                logger.Debug(commandText);
                using (IDataReader reader = dbProvider.ExecuteReader(commandText))
                {
                    if (reader.Read())
                    {
                        data = new UserPasswordData(reader);
                    }
                }
            }

            return(data);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Reperimento del numero di giorni di validità della password rimanenti
        /// </summary>
        /// <returns></returns>
        public int GetPasswordRemainingDays()
        {
            int remainingDays = 0;

            UserPasswordData data = this.GetPasswordData();

            if (data.PasswordNeverExpire)
            {
                // Se la password per l'utente è senza scadenza
                remainingDays = Int32.MaxValue;
            }
            else if (data.CreationDate != DateTime.MinValue)
            {
                DateTime expireDate = data.CreationDate.AddDays((double)this.GetAdminPasswordConfig().ValidityDays);
                DateTime actualDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);

                if (expireDate > actualDate)
                {
                    remainingDays = expireDate.Subtract(actualDate).Days;
                }
            }

            return(remainingDays);
        }
Ejemplo n.º 15
0
        public UserData CreateUser(RegistrUserVM user, UserPasswordData passData)
        {
            var newUser = new BLL.DataTransferObjects.User()
            {
                Email        = user.Email,
                Login        = user.Login,
                Photo        = user.Photo,
                PasswordHash = passData.passwordHash,
                Salt         = passData.salt,
                Roles        = "user",
                Created      = DateTime.Now
            };

            data.AddUser(newUser);
            var UserCreated = data.FindUserByLogin(user.Login);

            if (UserCreated != null)
            {
                var mapper  = new MapperConfiguration(c => c.CreateMap <BLL.DataTransferObjects.User, UserData>()).CreateMapper();
                var getUser = mapper.Map <BLL.DataTransferObjects.User, UserData>(UserCreated);
                return(getUser);
            }
            return(null);
        }