aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNolwenn Cadic <98824442+Nolwenn-cadic-sonarsource@users.noreply.github.com>2025-01-06 11:11:16 +0100
committersonartech <sonartech@sonarsource.com>2025-01-06 20:04:07 +0000
commitd9dffee0c164d3e4630f179afcd3b5c061ac8107 (patch)
tree2464a745086282a94aa0bacf1a465dbfe9d0a924
parent170bd61e5e75fb3668dd31dc71570f5e40a800fd (diff)
downloadsonarqube-d9dffee0c164d3e4630f179afcd3b5c061ac8107.tar.gz
sonarqube-d9dffee0c164d3e4630f179afcd3b5c061ac8107.zip
Revert "SONAR-23594 Fix SSF-605"
-rw-r--r--server/sonar-webserver-webapi/src/it/java/org/sonar/server/user/ws/ChangePasswordActionIT.java33
-rw-r--r--server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/ChangePasswordAction.java8
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) {