private async Task <IHttpActionResult> ProcessSignInAsync(SignInRequestMessage msg)
        {
            var result = await _validator.ValidateAsync(msg, User as ClaimsPrincipal);

            if (result.IsSignInRequired)
            {
                return(RedirectToLogin(_settings, result));
            }
            if (result.IsError)
            {
                return(BadRequest(result.Error));
            }

            var responseMessage = await _signInResponseGenerator.GenerateResponseAsync(result);

            await _cookies.AddValueAsync(result.ReplyUrl);

            return(new SignInResult(responseMessage));
        }