diff --git a/perun-oidc-server/pom.xml b/perun-oidc-server/pom.xml
index 81a907cf1..4e261b25f 100644
--- a/perun-oidc-server/pom.xml
+++ b/perun-oidc-server/pom.xml
@@ -128,8 +128,12 @@
jaxb-runtime
- jakarta.servlet
- jakarta.servlet-api
+ org.glassfish
+ javax.servlet
+
+
+ org.glassfish.web
+ jakarta.servlet.jsp.jstl
org.apache.directory.api
@@ -139,6 +143,10 @@
ch.qos.logback
logback-classic
+
+ ch.qos.logback
+ logback-core
+
org.aspectj
aspectjweaver
@@ -147,6 +155,10 @@
org.projectlombok
lombok
+
+ javax.persistence
+ javax.persistence-api
+
diff --git a/perun-oidc-server/src/main/java/cz/muni/ics/mdc/MultiMDCFilter.java b/perun-oidc-server/src/main/java/cz/muni/ics/mdc/MultiMDCFilter.java
index 0c3a1ce7e..e9f0c22ed 100644
--- a/perun-oidc-server/src/main/java/cz/muni/ics/mdc/MultiMDCFilter.java
+++ b/perun-oidc-server/src/main/java/cz/muni/ics/mdc/MultiMDCFilter.java
@@ -1,7 +1,8 @@
package cz.muni.ics.mdc;
-import java.io.IOException;
+
import javax.servlet.FilterChain;
+import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
@@ -18,12 +19,12 @@ public class MultiMDCFilter extends GenericFilterBean {
public MultiMDCFilter() {
this.remoteAddressMDCFilter = new RemoteAddressMDCFilter();
this.sessionIdMDCFilter = new SessionIdMDCFilter();
- log.info("--- Initialized MultiMDCFilter ---");
+ log.info("--- Initialized MultiMDCFilter ---");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
- throws IOException, ServletException
+ throws ServletException, IOException
{
remoteAddressMDCFilter.doFilter(servletRequest);
sessionIdMDCFilter.doFilter(servletRequest);
diff --git a/perun-oidc-server/src/main/java/cz/muni/ics/oidc/server/PerunOIDCTokenService.java b/perun-oidc-server/src/main/java/cz/muni/ics/oidc/server/PerunOIDCTokenService.java
index 7f148306d..a7cd247fa 100644
--- a/perun-oidc-server/src/main/java/cz/muni/ics/oidc/server/PerunOIDCTokenService.java
+++ b/perun-oidc-server/src/main/java/cz/muni/ics/oidc/server/PerunOIDCTokenService.java
@@ -3,6 +3,7 @@ package cz.muni.ics.oidc.server;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonPrimitive;
+import com.nimbusds.jose.shaded.json.JSONArray;
import com.nimbusds.jose.util.JSONObjectUtils;
import com.nimbusds.jwt.JWTClaimsSet;
import cz.muni.ics.oauth2.model.ClientDetailsEntity;
@@ -15,7 +16,6 @@ import java.text.ParseException;
import java.util.Map;
import java.util.Set;
import lombok.extern.slf4j.Slf4j;
-import net.minidev.json.JSONArray;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.oauth2.provider.OAuth2Request;
diff --git a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/service/impl/DefaultOIDCTokenService.java b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/service/impl/DefaultOIDCTokenService.java
index 2a06b47c1..b3ae6cd1e 100644
--- a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/service/impl/DefaultOIDCTokenService.java
+++ b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/service/impl/DefaultOIDCTokenService.java
@@ -25,6 +25,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.nimbusds.jose.Algorithm;
+import com.nimbusds.jose.JOSEObjectType;
import com.nimbusds.jose.JWEHeader;
import com.nimbusds.jose.JWEObject;
import com.nimbusds.jose.JWSAlgorithm;
@@ -59,7 +60,6 @@ import org.springframework.security.core.AuthenticationException;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.oauth2.provider.OAuth2Authentication;
import org.springframework.security.oauth2.provider.OAuth2Request;
-import org.springframework.stereotype.Service;
/**
* Default implementation of service to create specialty OpenID Connect tokens.
*
@@ -140,7 +140,7 @@ public class DefaultOIDCTokenService implements OIDCTokenService {
if (responseTypes.contains("token")) {
// calculate the token hash
Base64URL at_hash = IdTokenHashUtils.getAccessTokenHash(signingAlg, accessToken);
- idClaims.claim("at_hash", at_hash);
+ idClaims.claim("at_hash", at_hash.toString());
}
addCustomIdTokenClaims(idClaims, client, request, sub, accessToken);
@@ -166,7 +166,6 @@ public class DefaultOIDCTokenService implements OIDCTokenService {
if (signingAlg.equals(Algorithm.NONE)) {
// unsigned ID token
idToken = new PlainJWT(idClaims.build());
-
} else {
// signed ID token
@@ -175,7 +174,7 @@ public class DefaultOIDCTokenService implements OIDCTokenService {
|| signingAlg.equals(JWSAlgorithm.HS384)
|| signingAlg.equals(JWSAlgorithm.HS512)) {
- JWSHeader header = new JWSHeader(signingAlg, null, null, null, null, null, null, null, null, null,
+ JWSHeader header = new JWSHeader(signingAlg, JOSEObjectType.JWT, null, null, null, null, null, null, null, null,
jwtService.getDefaultSignerKeyId(),
null, null);
idToken = new SignedJWT(header, idClaims.build());
@@ -187,7 +186,7 @@ public class DefaultOIDCTokenService implements OIDCTokenService {
} else {
idClaims.claim("kid", jwtService.getDefaultSignerKeyId());
- JWSHeader header = new JWSHeader(signingAlg, null, null, null, null, null, null, null, null, null,
+ JWSHeader header = new JWSHeader(signingAlg, JOSEObjectType.JWT, null, null, null, null, null, null, null, null,
jwtService.getDefaultSignerKeyId(),
null, null);
diff --git a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/ClientAPI.java b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/ClientAPI.java
index be3e8a6e3..fe402b3b8 100644
--- a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/ClientAPI.java
+++ b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/ClientAPI.java
@@ -568,7 +568,7 @@ public class ClientAPI {
newClient.setJwksUri(claimSet.getStringClaim(claim));
break;
case JWKS:
- newClient.setJwks(JWKSet.parse(claimSet.getJSONObjectClaim(claim).toJSONString()));
+ newClient.setJwks(JWKSet.parse(claimSet.getJSONObjectClaim(claim)));
break;
case POLICY_URI:
newClient.setPolicyUri(claimSet.getStringClaim(claim));
diff --git a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/DynamicClientRegistrationEndpoint.java b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/DynamicClientRegistrationEndpoint.java
index d6e78e6b5..dfc335213 100644
--- a/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/DynamicClientRegistrationEndpoint.java
+++ b/perun-oidc-server/src/main/java/cz/muni/ics/openid/connect/web/DynamicClientRegistrationEndpoint.java
@@ -681,7 +681,7 @@ public class DynamicClientRegistrationEndpoint {
newClient.setJwksUri(claimSet.getStringClaim(claim));
break;
case JWKS:
- newClient.setJwks(JWKSet.parse(claimSet.getJSONObjectClaim(claim).toJSONString()));
+ newClient.setJwks(JWKSet.parse(claimSet.getJSONObjectClaim(claim)));
break;
case POLICY_URI:
newClient.setPolicyUri(claimSet.getStringClaim(claim));
diff --git a/pom.xml b/pom.xml
index 9406f3c3b..dfccfc34a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -82,27 +82,28 @@
42.3.1
8.0.27
- 2.5.2
+ 2.6.1
2.7.4
- 3.4.5
- 4.3.1
+ 5.0.0
+ 4.3.1
${shedlock.version}
${shedlock.version}
- 1.2.6
- 4.0.4
+ 3.1.1
+ 1.2.6
+ 2.2
2.7.9
${eclipse-persistence.version}
${eclipse-persistence.version}
- 2.1.0
+ 2.1.0
- 1.2.7
+ 1.2.7
4.13.2
@@ -112,7 +113,7 @@
31.0.1-jre
2.8.9
4.5.13
- 8.23
+ 9.15.2
1.3.2
2.3.3
1.9.7
@@ -176,16 +177,14 @@
- jakarta.servlet
- jakarta.servlet-api
- ${jakarta-servlet-api.version}
- provided
+ org.glassfish
+ javax.servlet
+ ${glassfish-servlet.version}
-
org.glassfish.web
jakarta.servlet.jsp.jstl
- ${jakarta-jstl.version}
+ ${glassfish-jstl.version}
@@ -209,6 +208,12 @@
com.zaxxer
HikariCP
${hikari.version}
+
+
+ org.slf4j
+ slf4j-api
+
+
org.mariadb.jdbc
@@ -227,6 +232,12 @@
+
+
+ javax.persistence
+ javax.persistence-api
+ ${javax-persistence-api.version}
+
org.eclipse.persistence
org.eclipse.persistence.core
@@ -256,13 +267,12 @@
ch.qos.logback
logback-classic
- ${logback.verison}
-
-
- org.slf4j
- slf4j-api
-
-
+ ${logback.version}
+
+
+ ch.qos.logback
+ logback-core
+ ${logback.version}
@@ -315,7 +325,7 @@
org.apache.directory.api
api-all
- ${apache-directory-api.version}
+ ${apache-ldap-api-all.version}
@@ -342,6 +352,10 @@
org.apache.maven.plugins
maven-compiler-plugin
3.8.1
+
+ ${java.version}
+ ${java.version}
+
org.appfuse.plugins
@@ -366,10 +380,6 @@
org.apache.maven.plugins
maven-compiler-plugin
-
- ${java.version}
- ${java.version}
-