예제 #1
0
        public IActionResult InitAdmin(string token)
        {
            var viewModel = new SystemAdminInitViewModel {
                Token = token
            };

            return(View(viewModel));
        }
예제 #2
0
        public async Task <IActionResult> InitAdminPost(SystemAdminInitViewModel model,
                                                        [FromServices] IUserRepository userRepository,
                                                        [FromServices] IEncryptionService encryptionService)
        {
            if (!_installTokenService.Token.Equals(model.Token))
            {
                ModelState.AddModelError("", "Token不正确");
                return(View());
            }

            var passwordSalt = encryptionService.CreateSaltKey(20);
            var passwordHash = encryptionService.CreatePasswordHash(model.Password, passwordSalt, "SHA256");
            await userRepository.InitSystemAdminUser(model.Email, passwordSalt, passwordHash);

            return(RedirectToRoute("HomePage"));
        }