public async Task <User> GetById(int userId)
 {
     return(await Task.Run(() =>
     {
         GetByIdCount++;
         if (db.Any(f => f.UserId == userId))
         {
             return db.Where(f => f.UserId == userId).First();
         }
         else if (userId == 1)
         {
             return new User
             {
                 AppKey = "CHAVE",
                 Key = "USUARIO",
                 CheckKey = "CHAVE_DE_SEGURANÇA",
                 Password = PasswordCreator.Create("SENHA", "CHAVE_DE_SEGURANÇA"),
                 UserId = 1
             };
         }
         else
         {
             return User.Invalid <User>();
         }
     }));
 }
 public async Task <User> GetByKeyToApp(string key, string appKey)
 {
     return(await Task.Run(() =>
     {
         GetByKeyToAppCount++;
         if (db.Any(f => f.Key == key && f.AppKey == appKey))
         {
             return db.Where(f => f.Key == key && f.AppKey == appKey).First();
         }
         else if (key == "USUARIO" && appKey == "CHAVE")
         {
             return new User
             {
                 AppKey = "CHAVE",
                 Key = "USUARIO",
                 CheckKey = "CHAVE_DE_SEGURANÇA",
                 Password = PasswordCreator.Create("SENHA", "CHAVE_DE_SEGURANÇA"),
                 UserId = 1
             };
         }
         else
         {
             return User.Invalid <User>();
         }
     }));
 }
Exemple #3
0
        private async Task Do()
        {
            var user = await _userRepository.GetById(_userId);

            InvalidUserExceptionCreator.ThrowIfFalse(user.IsValid() && user.AppKey.Equals(_appKey));
            var newPassword = PasswordCreator.Create(_newPassword, user.CheckKey);
            await _userRepository.ChangePassword(_userId, newPassword);
        }
Exemple #4
0
        private async Task <bool> Do()
        {
            var user = await _userRepository.GetByKeyToApp(_userName, _appKey);

            if (!user.IsValid())
            {
                return(false);
            }
            var newPassword = PasswordCreator.Create(_password, user.CheckKey);

            return(await _userRepository.ChangePasswordByCode(_userName, _code, newPassword, _appKey));
        }
        public User Authenticate(string username, string password)
        {
            var user         = GetUserByUsername(username);
            var passwordHash = PasswordCreator.GetHash(password, user.PasswordSalt);

            if (user.PasswordHash != passwordHash)
            {
                throw new IncorrectPasswordException();
            }

            return(user);
        }
        public void Create_ReturnsCorrectPassword()
        {
            var expected       = "Donald Duck rode his bike in the street";
            var randomizerMock = new Mock <RandomizerBase>();

            randomizerMock.Setup(x => x.GetInt(It.IsAny <int>(), It.IsAny <int>())).Returns(1);
            var passwordCreator = new PasswordCreator(randomizerMock.Object);
            var actual          = passwordCreator.Create();

            Output.WriteLine($"Password: {actual}");
            Assert.Equal(actual, expected);
        }
        public async Task <AccountDto> TryLoginAsync(string login, string password, AccountType type)
        {
            var account = await CheckAccountAsync(login);

            if (account != null)
            {
                if (PasswordCreator.CreateHash(account.Password) == PasswordCreator.CreateHash(password))
                {
                    return(account.MapToDto());
                }
            }

            throw new Exception("Данный аккаунт не существует");
        }
Exemple #8
0
        private async Task <string> Do()
        {
            var user = await _userRepository.GetByKeyToApp(_userName, _appKey);

            InvalidUsernameOrPasswordExceptionCreator.ThrowIfFalse(user.IsValid());
            string typedPassword = PasswordCreator.Create(_password, user.CheckKey);

            InvalidUsernameOrPasswordExceptionCreator.ThrowIfFalse(user.Password.Equals(typedPassword));
            user.Password = String.Empty;
            user.CheckKey = String.Empty;
            string token = _tokenCreator.Create(user, _device, _appKey);
            await _tokenRepository.Create(user.UserId, _device, token);

            return(token);
        }
        private static void AddUsers(ApplicationDbContext context)
        {
            var passwordSalt = PasswordCreator.GetSalt();
            var passwordHash = PasswordCreator.GetHash("admin", passwordSalt);

            var admin = new User
            {
                FirstName    = "Admin First Name",
                LastName     = "Admin Last Name",
                Email        = "*****@*****.**",
                IsActive     = true,
                PasswordSalt = passwordSalt,
                PasswordHash = passwordHash,
                Username     = "******"
            };

            context.Users.Add(admin);

            context.SaveChanges();
        }
Exemple #10
0
 private string CreatePasswordHash(string passord, string key) => PasswordCreator.Create(passord, key);
Exemple #11
0
        public async Task <IActionResult> AddStudent(StudentViewModel std)
        {
            //GEt the List of class
            var i = _context.Class.ToList();

            //Insert a new element in position 0
            i.Insert(0, new Class {
                ClassId = 0, ClassName = "Select"
            });
            ViewBag.Class = i;
            // Create a student and save to the database
            Student st = new Student()
            {
                StudentId          = std.stdntidVM,
                StudentName        = std.stdntnameVM,
                StudentCAddress    = std.stdntcaddrssVM,
                StudentPAddress    = std.stdntpaddrssVM,
                StudentNationality = std.stdntnationVM,
                StudentDOB         = std.dobVM,
                StudentGender      = std.stdntgenderVM,
                DateOfAdmission    = DateTime.Now.Date,
                StudentClass       = std.stdntclsVM,
                StudentPhoto       = std.stdntphotoVM,
                Year = DateTime.Now.Year
            };

            _context.Student.Add(st);
            await _context.SaveChangesAsync();

            //Get the id of saved student

            var StudentId = st.StudentId;
            //Create guradian info for that student and save  it
            GuardianInfo gi = new GuardianInfo()
            {
                SL             = 0,
                StudentID      = StudentId,
                GNameF         = std.gnameFVM,
                GNameM         = std.gnameMVM,
                GPhoneF        = std.gphoneFVM,
                GPhoneM        = std.gphoneMVM,
                GEmailF        = std.gemailFVM,
                GEmailM        = std.gemailMVM,
                GOccupationF   = std.goccupationFVM,
                GOccupationM   = std.goccupationMVM,
                GOrganisationF = std.gorganisationFVM,
                GOrganisationM = std.gorganisationMVM,
                GDesignationF  = std.gdesignationFVM,
                GDesignationM  = std.gdesignationsMVM
            };

            _context.GuardianInfo.Add(gi);
            await _context.SaveChangesAsync();

            // Create random password
            PasswordCreator ps = new PasswordCreator();
            //Insert the login information for student login and save
            Login lg = new Login()
            {
                SL               = 0,
                Username         = StudentId.ToString(),
                Password         = ps.RandomPassword(),
                FirstLoginStatus = true,
                ActiveStatus     = true,
                RoleId           = 1,
                DistinguishId    = StudentId,
            };

            lg.CurrentPassword = lg.Password;
            _context.Login.Add(lg);
            await _context.SaveChangesAsync();

            //Clear the modelstate
            ModelState.Clear();


            return(View());
        }
Exemple #12
0
        public async Task <IActionResult> NewTeacher(TeacherViewModel tr)
        {
            Teacher tchr = new Teacher()
            {
                TeacherId          = 0,
                TeacherName        = tr.TcrnameVM,
                TeacherBG          = tr.TcrbgVM,
                TeacherEmail       = tr.TcremailVM,
                TeacherCAddress    = tr.TcrcaddrssVM,
                TeacherPAddress    = tr.TcrpaddrssVM,
                TeacherDOB         = tr.TcrdobVM,
                TeacherGender      = tr.TcrgenderVM,
                TeacherNationality = tr.TcrnationVM,
                TeacherPhoneNo     = tr.TcrphoneVM,
                TeacherJD          = DateTime.Now.Date,
                TeacherPhoto       = tr.TcrphotoVM,
                TeacherDesignation = tr.TcrdesigVM
            };

            _context.Teacher.Add(tchr);
            await _context.SaveChangesAsync();

            ///Get the id of teacher
            var TeacherId = tchr.TeacherId;
            //Teacher email
            var TeacherEmail = tchr.TeacherEmail;
            // Create random password
            PasswordCreator ps = new PasswordCreator();
            //Create login
            Login lg = new Login()
            {
                SL               = 0,
                Username         = TeacherEmail,
                Password         = ps.RandomPassword(),
                FirstLoginStatus = false,
                ActiveStatus     = true,
                RoleId           = 2,
                DistinguishId    = TeacherId
            };

            lg.CurrentPassword = lg.Password;
            _context.Login.Add(lg);
            await _context.SaveChangesAsync();

            ///Save the Document Information to the Database

            TeacherDocSubmitted doc = new TeacherDocSubmitted()
            {
                TeacherId       = TeacherId,
                SL              = 0,
                SSCCertificate  = tr.TcrdocsubhsccrtfctVM,
                SSCMarksheet    = tr.TcrdocsubsscmarkVM,
                HSCCertificate  = tr.TcrdocsubhsccrtfctVM,
                HSCMarksheet    = tr.TcrdocsubhscmarkVM,
                HonsCertificate = tr.TcrdocsubhonscrtfctVM,
                HonsMarksheet   = tr.TcrdocsubhonsmarkVM
            };

            await _context.TeacherDocSubmitted.AddAsync(doc);

            await _context.SaveChangesAsync();

            TeacherQualification tq = new TeacherQualification()
            {
                SL            = 0,
                TeacherId     = TeacherId,
                SSCYear       = tr.TcrqsscyearVM,
                SSCGrade      = tr.TcrqsscgradeVM,
                SSCInstitute  = tr.TcrqsscinsVM,
                HSCYear       = tr.TcrqhscyearVM,
                HSCGrade      = tr.TcrqhscgradeVM,
                HSCInstitute  = tr.TcrqhscinsVM,
                HonsYear      = tr.TcrqhonsyearVM,
                HonsGrade     = tr.TcrqhonsgradeVM,
                HonsInstitute = tr.TcrqhonsinsVM
            };
            await _context.TeacherQualification.AddAsync(tq);

            await _context.SaveChangesAsync();



            ///Clear the model state

            ModelState.Clear();

            return(View());
        }