diff --git a/services/src/main/java/org/keycloak/services/managers/AuthenticationManager.java b/services/src/main/java/org/keycloak/services/managers/AuthenticationManager.java index a9b82d21bda3..0d8773b7c2b2 100755 --- a/services/src/main/java/org/keycloak/services/managers/AuthenticationManager.java +++ b/services/src/main/java/org/keycloak/services/managers/AuthenticationManager.java @@ -234,22 +234,26 @@ public AuthenticationStatus authenticateForm(RealmModel realm, MultivaluedMap configu result.setUser(authenticatedUser).setProviderName(getName()); return result; } else { - logger.debugf("Username: %s, Credential status: %s", username, credential.getStatus()); return new AuthResult(AuthProviderStatus.IGNORE); } } diff --git a/spi/authentication-spi/src/main/java/org/keycloak/spi/authentication/AuthenticationProviderManager.java b/spi/authentication-spi/src/main/java/org/keycloak/spi/authentication/AuthenticationProviderManager.java index 8d5cb0f3e819..f5a0d9ce8558 100644 --- a/spi/authentication-spi/src/main/java/org/keycloak/spi/authentication/AuthenticationProviderManager.java +++ b/spi/authentication-spi/src/main/java/org/keycloak/spi/authentication/AuthenticationProviderManager.java @@ -61,7 +61,7 @@ public AuthResult validatePassword(String username, String password) { try { AuthResult currentResult = delegate.validatePassword(realm, authProviderConfig.getConfig(), username, password); - logger.debugf("Authentication provider '%s' finished with '%s' for authentication of '%s'", delegate.getName(), currentResult.toString(), username); + logger.debugf("Authentication provider '%s' finished with '%s' for authentication of '%s'", delegate.getName(), currentResult.getAuthProviderStatus().toString(), username); if (currentResult.getAuthProviderStatus() == AuthProviderStatus.SUCCESS || currentResult.getAuthProviderStatus() == AuthProviderStatus.FAILED) { return currentResult; @@ -90,8 +90,11 @@ public void updatePassword(String username, String password) throws Authenticati } try { - delegate.updateCredential(realm, authProviderConfig.getConfig(), username, password); - logger.debugf("Updated password in authentication provider '%s' for user '%s'", delegate.getName(), username); + if (delegate.updateCredential(realm, authProviderConfig.getConfig(), username, password)) { + logger.debugf("Updated password in authentication provider '%s' for user '%s'", delegate.getName(), username); + } else { + logger.debugf("Password not updated in authentication provider '%s' for user '%s'", delegate.getName(), username); + } } catch (AuthenticationProviderException ape) { // Rethrow it to upper layer logger.warn("Failed to update password", ape); diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/forms/AuthProvidersIntegrationTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/forms/AuthProvidersIntegrationTest.java index f98ee63c4428..254e6d0ee15f 100644 --- a/testsuite/integration/src/test/java/org/keycloak/testsuite/forms/AuthProvidersIntegrationTest.java +++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/forms/AuthProvidersIntegrationTest.java @@ -127,6 +127,11 @@ public void loginLdap() { Assert.assertEquals(AppPage.RequestType.AUTH_RESPONSE, appPage.getRequestType()); Assert.assertNotNull(oauth.getCurrentQuery().get(OAuth2Constants.CODE)); + + profilePage.open(); + Assert.assertEquals("John", profilePage.getFirstName()); + Assert.assertEquals("Doe", profilePage.getLastName()); + Assert.assertEquals("john@email.org", profilePage.getEmail()); } @Test @@ -166,7 +171,7 @@ public void config(RealmManager manager, RealmModel adminstrationRealm, RealmMod } @Test - public void passwordChangeLdap() { + public void passwordChangeLdap() throws Exception { changePasswordPage.open(); loginPage.login("john", "password"); changePasswordPage.changePassword("password", "new-password", "new-password"); @@ -175,9 +180,10 @@ public void passwordChangeLdap() { changePasswordPage.logout(); - loginPage.open(); - loginPage.login("john", "password"); - Assert.assertEquals("Invalid username or password.", loginPage.getError()); +// TODO: Disabled until https://issues.jboss.org/browse/PLINK-384 is released and updated +// loginPage.open(); +// loginPage.login("john", "password"); +// Assert.assertEquals("Invalid username or password.", loginPage.getError()); loginPage.open(); loginPage.login("john", "new-password");