Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit 33271bd

Browse files
authored
SORMAS-Foundation#2976 fix conflicting org.json.JSONObject dependencies (SORMAS-Foundation#3400)
1 parent a284029 commit 33271bd

1 file changed

Lines changed: 10 additions & 18 deletions

File tree

sormas-backend/src/main/java/de/symeda/sormas/backend/user/KeycloakService.java

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import static java.util.Collections.singletonList;
2222
import static org.keycloak.representations.IDToken.LOCALE;
2323

24-
import java.text.ParseException;
2524
import java.util.Arrays;
2625
import java.util.Collections;
2726
import java.util.HashMap;
@@ -39,6 +38,7 @@
3938
import javax.ws.rs.WebApplicationException;
4039
import javax.ws.rs.core.Response;
4140

41+
import com.jayway.jsonpath.JsonPath;
4242
import org.apache.commons.collections.CollectionUtils;
4343
import org.apache.commons.lang3.StringUtils;
4444
import org.eclipse.microprofile.config.ConfigProvider;
@@ -51,8 +51,6 @@
5151
import org.slf4j.Logger;
5252
import org.slf4j.LoggerFactory;
5353

54-
import com.nimbusds.jose.util.JSONObjectUtils;
55-
5654
import de.symeda.sormas.api.AuthProvider;
5755
import de.symeda.sormas.api.Language;
5856
import de.symeda.sormas.api.user.UserRole;
@@ -61,7 +59,6 @@
6159
import de.symeda.sormas.backend.user.event.PasswordResetEvent;
6260
import de.symeda.sormas.backend.user.event.UserCreateEvent;
6361
import de.symeda.sormas.backend.user.event.UserUpdateEvent;
64-
import net.minidev.json.JSONObject;
6562

6663
/**
6764
* @author Alex Vidrean
@@ -78,8 +75,7 @@ public class KeycloakService {
7875

7976
private static final String OIDC_REALM = "realm";
8077
private static final String OIDC_SERVER_URL = "auth-server-url";
81-
private static final String OIDC_CREDENTIALS = "credentials";
82-
private static final String OIDC_SECRET = "secret";
78+
private static final String OIDC_SECRET = "credentials.secret";
8379

8480
private static final String REALM_NAME = "SORMAS";
8581

@@ -106,20 +102,16 @@ public void init() {
106102
return;
107103
}
108104

109-
try {
110-
JSONObject json = JSONObjectUtils.parse(oidcJson.get());
105+
String keycloakJsonConfig = oidcJson.get();
111106

112-
keycloak = KeycloakBuilder.builder()
113-
.realm(json.getAsString(OIDC_REALM))
114-
.serverUrl(json.getAsString(OIDC_SERVER_URL))
115-
.clientId("sormas-backend")
116-
.clientSecret(JSONObjectUtils.getJSONObject(json, OIDC_CREDENTIALS).getAsString(OIDC_SECRET))
117-
.grantType(OAuth2Constants.CLIENT_CREDENTIALS)
118-
.build();
107+
keycloak = KeycloakBuilder.builder()
108+
.realm(JsonPath.read(keycloakJsonConfig, OIDC_REALM))
109+
.serverUrl(JsonPath.read(keycloakJsonConfig, OIDC_SERVER_URL))
110+
.clientId("sormas-backend")
111+
.clientSecret(JsonPath.read(keycloakJsonConfig, OIDC_SECRET))
112+
.grantType(OAuth2Constants.CLIENT_CREDENTIALS)
113+
.build();
119114

120-
} catch (ParseException e) {
121-
throw new IllegalArgumentException("Invalid JSON for backend keycloak oidc");
122-
}
123115
}
124116

125117
public void handleUserCreateEvent(@Observes UserCreateEvent userCreateEvent) {

0 commit comments

Comments
 (0)