Пример #1
0
        public UserAccount UpdateUser(IRegistrationModel model)
        {
            string guid = Guid.NewGuid().ToString();

            var curUser = GetCurrentUser();

            model.Id = curUser.Id;

            DateTime date = DateTime.UtcNow;

            if (!string.IsNullOrEmpty(model.Password))
            {
                if (!string.IsNullOrEmpty(model.Old_Password))
                {
                    if (!ConfirmationPassword(curUser, model.Old_Password))
                    {
                        return(curUser);
                    }
                }
                string salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8);
                string hash = AccountFacade.GenerateHash(model.Password, salt);
                Repository.UpdateUser(date, salt, hash, model);
            }
            else
            {
                Repository.UpdateUser(date, curUser.PasswordSalt, curUser.PasswordHash, model);
            }
            return(Repository.GetUserBy(model.Id));
        }
Пример #2
0
        public UserAccount UpdateUserPassword(IRegistrationModel regmodel)
        {
            var curUser = Repository.GetUsersBy(regmodel.Email);

            if (curUser != null)
            {
                DateTime date = DateTime.UtcNow;
                string   guid = Guid.NewGuid().ToString();
                string   salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8);
                string   hash = AccountFacade.GenerateHash(regmodel.Password, salt);
                Repository.UpdateUser(salt, hash, curUser);
                curUser.PasswordHash = hash;
                curUser.PasswordSalt = salt;
                return(curUser);
            }
            return(null);
        }
Пример #3
0
        public UserAccount RegistrateUser(IRegistrationModel model)
        {
            string guid = Guid.NewGuid().ToString();

            model.Id = Guid.NewGuid().ToString();

            DateTime date = DateTime.UtcNow;

            string salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8);

            string hash = AccountFacade.GenerateHash(model.Password, salt);

            UserAccount userEntity = Repository.SaveUser(date, salt, hash, model);

            if (userEntity == null)
            {
                throw new Exception("Unable  to registrate user");
            }

            return(userEntity);
        }
            /// <summary>
            /// 计算文件夹下所有文件的Md5值
            /// </summary>
            /// <param name="dirpath"></param>
            //[MenuItem("GameFramework/TestPaths")]
            static List <KeyValuePair <string, string> > CalculateMd5(string dirpath)
            {
                List <string> paths = new List <string>(Directory.GetFiles(dirpath));

                return(Md5Manager.ComputeMd5(paths));
            }