示例#1
0
        public async Task <IActionResult> OnGetAsync(
            string emailOrLogin,
            string password,
            string returnUrl = null)
        {
            emailOrLogin = _cryptographyProvider.DeCrypt(emailOrLogin);
            password     = _cryptographyProvider.DeCrypt(password);

            var loginUser = new LoginUser
            {
                LoginOrEmail = emailOrLogin,
                Password     = password
            };

            var authorization = await _authorizationService.AuthorizeAsync(loginUser);

            if (!authorization.Success)
            {
                return(RedirectToLogin());
            }

            var authentication = await _authenticationService.AuthenticateAsync(authorization.Data);

            if (!authentication.Success)
            {
                return(RedirectToLogin());
            }

            return(RedirectTo(returnUrl));
        }