Skip to content
This repository was archived by the owner on Nov 28, 2025. It is now read-only.

Commit b4ca2c1

Browse files
committed
Changes required for web-eid-authtoken-validation-java v2.2.0
WE2-1132 Signed-off-by: Mart Somermaa <[email protected]>
1 parent 50d7c75 commit b4ca2c1

File tree

6 files changed

+75
-17
lines changed

6 files changed

+75
-17
lines changed

.github/workflows/maven-build.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,19 @@ jobs:
77
runs-on: ubuntu-latest
88

99
steps:
10-
- uses: actions/checkout@v2
10+
- uses: actions/checkout@v4
1111

12-
- uses: actions/setup-java@v1
12+
- uses: actions/setup-java@v4
1313
with:
14-
java-version: 1.8
14+
distribution: temurin
15+
java-version: 8
1516

1617
- name: Cache Maven packages
17-
uses: actions/cache@v1
18+
uses: actions/cache@v4
1819
with:
1920
path: ~/.m2
20-
key: ${{ runner.os }}-m2-v8-${{ secrets.CACHE_VERSION }}-${{ hashFiles('**/pom.xml') }}
21-
restore-keys: ${{ runner.os }}-m2-v8-${{ secrets.CACHE_VERSION }}
21+
key: ${{ runner.os }}-m2-v8-${{ hashFiles('**/pom.xml') }}
22+
restore-keys: ${{ runner.os }}-m2-v8
2223

2324
- name: Build
2425
run: mvn --batch-mode compile

pom.xml

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,32 @@
2020
<java.version>1.8</java.version>
2121
<maven-surefire-plugin.version>2.22.1</maven-surefire-plugin.version>
2222
<caffeine.version>2.8.5</caffeine.version>
23-
<webeid.version>2.1.2</webeid.version>
23+
<webeid.version>2.2.0</webeid.version>
2424
<digidoc4j.version>4.3.0</digidoc4j.version>
2525
<guava.version>32.0.1-jre</guava.version>
26-
<okhttp.version>4.10.0</okhttp.version>
26+
<okhttp.version>5.3.0</okhttp.version>
2727
<jmockit.version>1.44</jmockit.version>
2828
</properties>
2929

30+
<dependencyManagement>
31+
<dependencies>
32+
<dependency>
33+
<groupId>com.squareup.okhttp3</groupId>
34+
<artifactId>okhttp-bom</artifactId>
35+
<version>${okhttp.version}</version>
36+
<type>pom</type>
37+
<scope>import</scope>
38+
</dependency>
39+
<dependency>
40+
<groupId>org.jetbrains.kotlin</groupId>
41+
<artifactId>kotlin-bom</artifactId>
42+
<version>2.2.21</version>
43+
<type>pom</type>
44+
<scope>import</scope>
45+
</dependency>
46+
</dependencies>
47+
</dependencyManagement>
48+
3049
<dependencies>
3150
<dependency>
3251
<groupId>org.springframework.boot</groupId>
@@ -56,8 +75,7 @@
5675
</dependency>
5776
<dependency>
5877
<groupId>com.squareup.okhttp3</groupId>
59-
<artifactId>okhttp</artifactId>
60-
<version>${okhttp.version}</version>
78+
<artifactId>okhttp-jvm</artifactId>
6179
</dependency>
6280

6381
<dependency>
@@ -66,7 +84,7 @@
6684
<version>${digidoc4j.version}</version>
6785
</dependency>
6886
<dependency>
69-
<groupId>org.webeid.security</groupId>
87+
<groupId>eu.webeid.security</groupId>
7088
<artifactId>authtoken-validation</artifactId>
7189
<version>${webeid.version}</version>
7290
</dependency>

src/main/java/eu/webeid/example/security/WebEidAuthentication.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public class WebEidAuthentication extends PreAuthenticatedAuthenticationToken im
3838

3939
public static Authentication fromCertificate(X509Certificate userCertificate, List<GrantedAuthority> authorities) throws CertificateEncodingException {
4040
final String principalName = getPrincipalNameFromCertificate(userCertificate);
41-
final String idCode = Objects.requireNonNull(CertificateData.getSubjectIdCode(userCertificate));
41+
final String idCode = CertificateData.getSubjectIdCode(userCertificate).orElseThrow(NullPointerException::new);
4242
return new WebEidAuthentication(principalName, idCode, authorities);
4343
}
4444

@@ -53,11 +53,11 @@ private WebEidAuthentication(String principalName, String idCode, List<GrantedAu
5353

5454
private static String getPrincipalNameFromCertificate(X509Certificate userCertificate) throws CertificateEncodingException {
5555
try {
56-
return Objects.requireNonNull(CertificateData.getSubjectGivenName(userCertificate)) + ' ' +
57-
Objects.requireNonNull(CertificateData.getSubjectSurname(userCertificate));
58-
} catch (CertificateEncodingException e) {
56+
return CertificateData.getSubjectGivenName(userCertificate).orElseThrow(NullPointerException::new) + ' ' +
57+
CertificateData.getSubjectSurname(userCertificate).orElseThrow(NullPointerException::new);
58+
} catch (CertificateEncodingException | NullPointerException e) {
5959
// Organization certificates do not have given name and surname fields.
60-
return Objects.requireNonNull(CertificateData.getSubjectCN(userCertificate));
60+
return CertificateData.getSubjectCN(userCertificate).orElseThrow(NullPointerException::new);
6161
}
6262
}
6363

src/main/java/eu/webeid/example/service/SigningService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ private HttpSession currentSession() {
8181
*/
8282
public DigestDTO prepareContainer(CertificateDTO certificateDTO, WebEidAuthentication authentication) throws CertificateException, NoSuchAlgorithmException, IOException {
8383
X509Certificate certificate = certificateDTO.toX509Certificate();
84-
if (!authentication.getIdCode().equals(CertificateData.getSubjectIdCode(certificate))) {
84+
if (!authentication.getIdCode().equals(CertificateData.getSubjectIdCode(certificate).orElseThrow(NullPointerException::new))) {
8585
throw new IllegalArgumentException("Authenticated subject ID code differs from " +
8686
"signing certificate subject ID code");
8787
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDMTCCAregAwIBAgIUNtXxgsJYFy9r5Opm2j2LcsnZYtkwCgYIKoZIzj0EAwMw
3+
XTEZMBcGA1UEAwwQVGVzdCBFRUdvdkNBMjAyNTEXMBUGA1UEYQwOTlRSRUUtMTcw
4+
NjYwNDkxGjAYBgNVBAoMEVpldGVzIEVzdG9uaWEgT8OcMQswCQYDVQQGEwJFRTAe
5+
Fw0yNDExMDQxMjU5NTVaFw0zOTExMDMxMjU5NTRaMFwxGDAWBgNVBAMMD1Rlc3Qg
6+
RVNURUlEMjAyNTEXMBUGA1UEYQwOTlRSRUUtMTcwNjYwNDkxGjAYBgNVBAoMEVpl
7+
dGVzIEVzdG9uaWEgT8OcMQswCQYDVQQGEwJFRTB2MBAGByqGSM49AgEGBSuBBAAi
8+
A2IABC8Uc5s70j1iWMZNbQyVYpDmwp4Ad5HlQmFB9noY2yBeDKL2KHKQG31SDTbo
9+
KlBz7JUWsmaxF1Vj6ZkKAwcltO2cBnEU1B5H8hWgk5Un61GZxhX2wPkwJLm7vjyi
10+
dKmftqOCATcwggEzMBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAU4Vbf
11+
rsSXORfv3goMbOVys4vVchAwSQYIKwYBBQUHAQEEPTA7MDkGCCsGAQUFBzAChi1o
12+
dHRwOi8vY3J0LXRlc3QuZWlkcGtpLmVlL3Rlc3RFRUdvdkNBMjAyNS5jcnQwQgYD
13+
VR0gBDswOTA3BgRVHSAAMC8wLQYIKwYBBQUHAgEWIWh0dHBzOi8vcmVwb3NpdG9y
14+
eS10ZXN0LmVpZHBraS5lZTA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vY3JsLXRl
15+
c3QuZWlkcGtpLmVlL3Rlc3RFRUdvdkNBMjAyNS5jcmwwHQYDVR0OBBYEFO7ylT+M
16+
svxRnoTm5l6EEX5CuiA2MA4GA1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNoADBl
17+
AjEA3qECw4GIfbeoC5cFhtiPJRfFlzsjRGVBtQTH6DNbZsm+EF6Gc28/iZFX1H6n
18+
UTRlAjAiwooqEyVbxA1KqT6PwVl1BXNbF59j6MaiNR43dYeJxrdOnxleR50EVdIC
19+
DJFEm2E=
20+
-----END CERTIFICATE-----
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDDzCCApagAwIBAgIUUFQrcGtK7/jCP+GyAOTPvbglGlcwCgYIKoZIzj0EAwMw
3+
WDEUMBIGA1UEAwwLRUVHb3ZDQTIwMjUxFzAVBgNVBGEMDk5UUkVFLTE3MDY2MDQ5
4+
MRowGAYDVQQKDBFaZXRlcyBFc3RvbmlhIE/DnDELMAkGA1UEBhMCRUUwHhcNMjUw
5+
NTA3MTMyMDA3WhcNNDAwNTAzMTMyMDA2WjBXMRMwEQYDVQQDDApFU1RFSUQyMDI1
6+
MRcwFQYDVQRhDA5OVFJFRS0xNzA2NjA0OTEaMBgGA1UECgwRWmV0ZXMgRXN0b25p
7+
YSBPw5wxCzAJBgNVBAYTAkVFMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEdSEmb1An
8+
xN7G22CCEQ3ts2YZNieTUZP4Vc4iObhmL/um4EXkiA4HgyCiR5T6olKAEkPdxFBs
9+
fmcLoPN+TmBO8ZpLGEqy1Vwf59ahDW7dQiLXTIAEiGCoXSWI9MvtHDZ2o4IBIDCC
10+
ARwwEgYDVR0TAQH/BAgwBgEB/wIBADAfBgNVHSMEGDAWgBSqgKibD7tLpn7FAvRy
11+
zSzxpSnZtzBABggrBgEFBQcBAQQ0MDIwMAYIKwYBBQUHMAKGJGh0dHA6Ly9jcnQu
12+
ZWlkcGtpLmVlL0VFR292Q0EyMDI1LmNydDA9BgNVHSAENjA0MDIGBFUdIAAwKjAo
13+
BggrBgEFBQcCARYcaHR0cHM6Ly9yZXBvc2l0b3J5LmVpZHBraS5lZTA1BgNVHR8E
14+
LjAsMCqgKKAmhiRodHRwOi8vY3JsLmVpZHBraS5lZS9FRUdvdkNBMjAyNS5jcmww
15+
HQYDVR0OBBYEFJLAOLC4NhJo9crtZu5HKohtpo3oMA4GA1UdDwEB/wQEAwIBBjAK
16+
BggqhkjOPQQDAwNnADBkAjANipgLQqdM985dSFZfKvU9A7Sz2YdmmUSZBxu0lL7Q
17+
XKzqa0ZDyXmf03NPLNAC6dICMBQiROZbLoPezO9LDl847UbENx85hloLlzweWjqP
18+
rY++Xj8FjCD1C9hnblsVgj3XAA==
19+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)