diff options
author | Nolwenn Cadic <98824442+Nolwenn-cadic-sonarsource@users.noreply.github.com> | 2025-01-06 11:11:16 +0100 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2025-01-06 20:04:07 +0000 |
commit | d9dffee0c164d3e4630f179afcd3b5c061ac8107 (patch) | |
tree | 2464a745086282a94aa0bacf1a465dbfe9d0a924 | |
parent | 170bd61e5e75fb3668dd31dc71570f5e40a800fd (diff) | |
download | sonarqube-d9dffee0c164d3e4630f179afcd3b5c061ac8107.tar.gz sonarqube-d9dffee0c164d3e4630f179afcd3b5c061ac8107.zip |
Revert "SONAR-23594 Fix SSF-605"
2 files changed, 2 insertions, 39 deletions
diff --git a/server/sonar-webserver-webapi/src/it/java/org/sonar/server/user/ws/ChangePasswordActionIT.java b/server/sonar-webserver-webapi/src/it/java/org/sonar/server/user/ws/ChangePasswordActionIT.java index 731f458c0df..32b49de80ae 100644 --- a/server/sonar-webserver-webapi/src/it/java/org/sonar/server/user/ws/ChangePasswordActionIT.java +++ b/server/sonar-webserver-webapi/src/it/java/org/sonar/server/user/ws/ChangePasswordActionIT.java @@ -44,8 +44,6 @@ import org.sonar.db.user.SessionTokenDto; import org.sonar.db.user.UserDto; import org.sonar.server.authentication.CredentialsLocalAuthentication; import org.sonar.server.authentication.JwtHttpHandler; -import org.sonar.server.common.management.ManagedInstanceChecker; -import org.sonar.server.exceptions.BadRequestException; import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.tester.UserSessionRule; @@ -61,7 +59,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoInteractions; @@ -96,10 +93,7 @@ class ChangePasswordActionIT { private final JwtHttpHandler jwtHttpHandler = mock(JwtHttpHandler.class); - private final ManagedInstanceChecker managedInstanceChecker = mock(ManagedInstanceChecker.class); - - private final ChangePasswordAction underTest = new ChangePasswordAction(db.getDbClient(), userUpdater, userSessionRule, localAuthentication, jwtHttpHandler, - managedInstanceChecker); + private final ChangePasswordAction underTest = new ChangePasswordAction(db.getDbClient(), userUpdater, userSessionRule, localAuthentication, jwtHttpHandler); private ServletOutputStream responseOutputStream; @BeforeEach @@ -259,7 +253,6 @@ class ChangePasswordActionIT { executeTest(user.getLogin(), "I dunno", NEW_PASSWORD); verify(response).setStatus(HTTP_BAD_REQUEST); - assertThat(responseOutputStream).hasToString("{\"result\":\"Password cannot be changed when external authentication is used\"}"); } @Test @@ -297,30 +290,6 @@ class ChangePasswordActionIT { } @Test - void changePassword_whenInstanceIsManagedAndUserUpdate_shouldThrow() { - doThrow(BadRequestException.create("Operation not allowed when the instance is externally managed.")).when(managedInstanceChecker).throwIfInstanceIsManaged(); - - UserTestData user = createLocalUser(OLD_PASSWORD); - userSessionRule.logIn(user.userDto()); - executeTest(user.getLogin(), OLD_PASSWORD, NEW_PASSWORD); - verify(response).setStatus(HTTP_BAD_REQUEST); - assertThat(responseOutputStream).hasToString("{\"result\":\"Operation not allowed when the instance is externally managed.\"}"); - } - - @Test - void changePassword_whenInstanceIsManagedAndAdminUpdate_shouldThrow() { - doThrow(BadRequestException.create("Operation not allowed when the instance is externally managed.")).when(managedInstanceChecker).throwIfInstanceIsManaged(); - - UserDto admin = db.users().insertUser(); - userSessionRule.logIn(admin).setSystemAdministrator(); - UserDto user = db.users().insertUser(u -> u.setLocal(false)); - - executeTest(user.getLogin(), OLD_PASSWORD, NEW_PASSWORD); - verify(response).setStatus(HTTP_BAD_REQUEST); - assertThat(responseOutputStream).hasToString("{\"result\":\"Operation not allowed when the instance is externally managed.\"}"); - } - - @Test void verify_definition() { String controllerKey = "foo"; WebService.Context context = new WebService.Context(); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/ChangePasswordAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/ChangePasswordAction.java index 0623d7e8a7e..0fc8b50e0eb 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/ChangePasswordAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/ChangePasswordAction.java @@ -42,7 +42,6 @@ import org.sonar.server.authentication.CredentialsLocalAuthentication; import org.sonar.server.authentication.JwtHttpHandler; import org.sonar.server.authentication.event.AuthenticationEvent; import org.sonar.server.authentication.event.AuthenticationException; -import org.sonar.server.common.management.ManagedInstanceChecker; import org.sonar.server.exceptions.BadRequestException; import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.user.UpdateUser; @@ -83,16 +82,14 @@ public class ChangePasswordAction extends HttpFilter implements BaseUsersWsActio private final UserSession userSession; private final CredentialsLocalAuthentication localAuthentication; private final JwtHttpHandler jwtHttpHandler; - private final ManagedInstanceChecker managedInstanceChecker; public ChangePasswordAction(DbClient dbClient, UserUpdater userUpdater, UserSession userSession, CredentialsLocalAuthentication localAuthentication, - JwtHttpHandler jwtHttpHandler, ManagedInstanceChecker managedInstanceChecker) { + JwtHttpHandler jwtHttpHandler) { this.dbClient = dbClient; this.userUpdater = userUpdater; this.userSession = userSession; this.localAuthentication = localAuthentication; this.jwtHttpHandler = jwtHttpHandler; - this.managedInstanceChecker = managedInstanceChecker; } @Override @@ -141,7 +138,6 @@ public class ChangePasswordAction extends HttpFilter implements BaseUsersWsActio if (login.equals(userSession.getLogin())) { user = getUserOrThrow(dbSession, login); - managedInstanceChecker.throwIfInstanceIsManaged(); String previousPassword = getParamOrThrow(request, PARAM_PREVIOUS_PASSWORD); checkPreviousPassword(dbSession, user, previousPassword); checkNewPasswordSameAsOld(newPassword, previousPassword); @@ -149,10 +145,8 @@ public class ChangePasswordAction extends HttpFilter implements BaseUsersWsActio } else { userSession.checkIsSystemAdministrator(); user = getUserOrThrow(dbSession, login); - managedInstanceChecker.throwIfInstanceIsManaged(); dbClient.sessionTokensDao().deleteByUser(dbSession, user); } - updatePassword(dbSession, user, newPassword); setResponseStatus(response, HTTP_NO_CONTENT); } catch (BadRequestException badRequestException) { |