public async Task <IActionResult> Login([FromBody] AccountChallenge challenge)
        {
            var user = await _userManager.FindByNameOrEmailAsync(challenge.Username);

            if (user == null)
            {
                return(BadRequest());
            }

            var result = await _signInManager.PasswordSignInAsync(user, challenge.Password, true, true);

            return(result.Succeeded ? (IActionResult)Ok() : Forbid());
        }
        public async Task <IActionResult> Register([FromBody] AccountChallenge challenge)
        {
            var user = new ApplicationUser {
                UserName = challenge.Username
            };
            var result = await _userManager.CreateAsync(user, challenge.Password);

            if (!result.Succeeded)
            {
                return(BadRequest());
            }

            await _signInManager.SignInAsync(user, true);

            return(Ok());
        }