Пример #1
0
        protected override void When(TestContext <IMessageDispatcher> context)
        {
            var userName = Guid.NewGuid().ToString("n");
            var password = Guid.NewGuid().ToString("n");

            var command = new UserNamePasswordLogin(userName, password);

            _result = context.Service.ExecuteNowWithTimeout(command);
        }
Пример #2
0
        public void ThenAUserShouldBeAbleToLogin()
        {
            SessionScope((context) =>
            {
                var validUserLoginQuery = new UserNamePasswordLogin(_command.UserName, _command.Password);
                var result = context.Service.ExecuteNowWithTimeout(validUserLoginQuery);

                result.Succeeded.ShouldBeTrue();
            });
        }
Пример #3
0
        public void ThenADifferentPasswordShouldFailToLogin()
        {
            SessionScope((context) =>
            {
                var query  = new UserNamePasswordLogin(_command.UserName, "wrong password");
                var result = context.Service.ExecuteNowWithTimeout(query);

                result.Succeeded.ShouldBeFalse();
            });
        }
        /// <summary>
        /// Validates the userName and password provided by the user.
        /// </summary>
        public override async Task GrantResourceOwnerCredentials(GrantResourceOwnerCredentialsContext context)
        {
            var query  = new UserNamePasswordLogin(context.UserName, context.Password);
            var result = await ExecuteMessage(context, query);

            if (!result.Succeeded)
            {
                context.Reject("invalid_grant", "The user name or password is incorrect.");
                return;
            }

            SetCorsHeader(context);

            var ticket = CreateAuthenticationTicket(result, context);

            context.Validate(ticket);
        }