diff options
author | Thomas <> | 2022-04-05 11:00:10 +0200 |
---|---|---|
committer | Thomas <> | 2022-04-05 11:00:10 +0200 |
commit | bc9eb2e62c863dae9fc9625cccb18ddfe4ff02d8 (patch) | |
tree | 7f01e64f0ede90908116f52419539d3dd9b96950 | |
parent | 35bdf175478d1412ce39a7ce66f39ea26ead315c (diff) | |
parent | 9d1e1294c2825c6f9a422c9f9c51f9965258d19e (diff) | |
download | National_eIDAS_Gateway-bc9eb2e62c863dae9fc9625cccb18ddfe4ff02d8.tar.gz National_eIDAS_Gateway-bc9eb2e62c863dae9fc9625cccb18ddfe4ff02d8.tar.bz2 National_eIDAS_Gateway-bc9eb2e62c863dae9fc9625cccb18ddfe4ff02d8.zip |
Merge branch 'nightlybuild' into feature/matching_base
# Conflicts:
# connector/pom.xml
# connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java
# modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/clients/szr/SzrClient.java
# modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/CreateIdentityLinkTask.java
# modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/SzrClientTestProduction.java
# modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/CreateIdentityLinkTaskEidNewTest.java
# pom.xml
22 files changed, 205 insertions, 55 deletions
@@ -92,6 +92,23 @@ The full release package will be located add ## Changelog +**v1.2.4** + +- Bugfix + - Mögliche RCE Schwachstelle in Spring Framework behoben ([CVE-2022-22965](https://tanzu.vmware.com/security/cve-2022-22965)) + - Work-Around für insertErnp im ID Austria Betriebsmodus +- Akutalisierung von Drittherstellerbibliotheken + - Spring-Core 5.3.18 + - Spring-Boot 2.5.12 + - thymeleaf-spring5 3.0.15.RELEASE + - Apache CXF 3.4.6 + - Google Guava 31.1-jre + - Jackson 2.13.2 + - Joda-Time 2.10.14 + - jose4j 0.7.11 + - log4j 2.17.2 + - slf4j 1.7.36 + **v1.2.3** - Logging optimiert und Beispielkonfiguration um TransactionsId erweitert diff --git a/build_reporting/pom.xml b/build_reporting/pom.xml index bbd1cb49..43e6c3e9 100644 --- a/build_reporting/pom.xml +++ b/build_reporting/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>at.asitplus.eidas</groupId> <artifactId>ms_specific</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <artifactId>build_reporting</artifactId> <packaging>pom</packaging> diff --git a/connector/pom.xml b/connector/pom.xml index d631f766..afbac1da 100644 --- a/connector/pom.xml +++ b/connector/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>at.asitplus.eidas</groupId> <artifactId>ms_specific</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <groupId>at.asitplus.eidas.ms_specific</groupId> @@ -72,15 +72,15 @@ <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + <exclusions> + <exclusion> <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-web</artifactId> - <exclusions> - <exclusion> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter-tomcat</artifactId> - </exclusion> - </exclusions> - </dependency> + <artifactId>spring-boot-starter-tomcat</artifactId> + </exclusion> + </exclusions> + </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> @@ -109,10 +109,10 @@ <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> </dependency> - <dependency> - <groupId>org.hibernate.validator</groupId> - <artifactId>hibernate-validator</artifactId> - </dependency> + <dependency> + <groupId>org.hibernate.validator</groupId> + <artifactId>hibernate-validator</artifactId> + </dependency> <dependency> <groupId>org.apache.cxf</groupId> diff --git a/connector/src/assembly/assembly_dir.xml b/connector/src/assembly/assembly_dir.xml index 59437be6..bc12a470 100644 --- a/connector/src/assembly/assembly_dir.xml +++ b/connector/src/assembly/assembly_dir.xml @@ -44,6 +44,7 @@ <!-- include>README.md</include--> <include>readme_${project.version}.txt</include> <include>readme_${project.version}.md</include> + <include>history.txt</include> <include>eIDAS_Ref_Impl/*</include> <include>handbook/*</include> </includes> diff --git a/connector/src/assembly/assembly_zip.xml b/connector/src/assembly/assembly_zip.xml index 43877283..dcb7dab0 100644 --- a/connector/src/assembly/assembly_zip.xml +++ b/connector/src/assembly/assembly_zip.xml @@ -44,6 +44,7 @@ <!-- include>README.md</include --> <include>readme_${project.version}.txt</include> <include>readme_${project.version}.md</include> + <include>history.txt</include> <include>eIDAS_Ref_Impl/*</include> <include>handbook/*</include> </includes> diff --git a/connector/src/main/resources/application.properties b/connector/src/main/resources/application.properties index 0b36b103..7b624d40 100644 --- a/connector/src/main/resources/application.properties +++ b/connector/src/main/resources/application.properties @@ -126,7 +126,7 @@ eidas.ms.auth.eIDAS.szrclient.eidasbind.mds.inject=false #Raw eIDAS Id data storage eidas.ms.auth.eIDAS.szrclient.workarounds.eidmapping.revisionlog.active=true - +eidas.ms.auth.eIDAS.szrclient.workarounds.use.getidentitylink.for.ida=true eidas.ms.auth.eIDAS.szrclient.params.setPlaceOfBirthIfAvailable=true eidas.ms.auth.eIDAS.szrclient.params.setBirthNameIfAvailable=true diff --git a/connector/src/main/resources/templates/countrySelection.html b/connector/src/main/resources/templates/countrySelection.html index dfd00e18..14457210 100644 --- a/connector/src/main/resources/templates/countrySelection.html +++ b/connector/src/main/resources/templates/countrySelection.html @@ -253,11 +253,11 @@ <span th:text="#{gui.countryselection.infos.general.part.4}"> fourth part </span> </p> - <p - <span th:text="#{gui.countryselection.infos.general.part.5}"> fived part </span> - <a href="https://www.dsb.gv.at/-/das-erganzungsregister-fur-naturliche-personen-ernp-" target="_blank" - th:text="#{gui.countryselection.infos.general.link.2}"></a> - <span th:text="#{gui.countryselection.infos.general.part.6}"> sixed part </span> + <p> + <span th:text="#{gui.countryselection.infos.general.part.5}"> fived part </span> + <a href="https://www.dsb.gv.at/-/das-erganzungsregister-fur-naturliche-personen-ernp-" target="_blank" + th:text="#{gui.countryselection.infos.general.link.2}"></a> + <span th:text="#{gui.countryselection.infos.general.part.6}"> sixed part </span> </p> </div> diff --git a/connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java b/connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java index 890d4b19..b9525de5 100644 --- a/connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java +++ b/connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java @@ -13,6 +13,9 @@ import java.time.Instant; import java.util.Map; import java.util.Timer; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Unmarshaller; import javax.xml.transform.TransformerException; import org.apache.commons.lang3.RandomStringUtils; @@ -103,7 +106,10 @@ import net.shibboleth.utilities.java.support.component.ComponentInitializationEx import net.shibboleth.utilities.java.support.xml.XMLParserException; import okhttp3.mockwebserver.MockResponse; import okhttp3.mockwebserver.MockWebServer; +import szrservices.GetIdentityLinkEidasResponse; +import szrservices.PersonInfoType; import szrservices.SZR; +import szrservices.SZRException_Exception; import szrservices.SignContentEntry; import szrservices.SignContentResponseType; @@ -442,8 +448,8 @@ public class FullStartUpAndProcessTest { } private void injectSzrResponse() throws Exception { - when(szrMock.getStammzahlEncrypted(any(), any())).thenReturn(vsz); + val signContentResp = new SignContentResponseType(); final SignContentEntry signContentEntry = new SignContentEntry(); signContentEntry.setValue(eidasBind); @@ -582,4 +588,17 @@ public class FullStartUpAndProcessTest { metadataProvider.addMetadataResolverIntoChain(fileSystemResolver); } + + private void setSzrResponseIdentityLink(String responseXmlPath) throws JAXBException, SZRException_Exception { + final JAXBContext jaxbContext = JAXBContext + .newInstance(szrservices.ObjectFactory.class, org.w3._2001._04.xmldsig_more.ObjectFactory.class, + org.w3._2000._09.xmldsig.ObjectFactory.class, + at.gv.e_government.reference.namespace.persondata._20020228.ObjectFactory.class); + final Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller(); + final GetIdentityLinkEidasResponse szrResponse = (GetIdentityLinkEidasResponse) jaxbUnmarshaller + .unmarshal(this.getClass().getResourceAsStream(responseXmlPath)); + org.mockito.Mockito.when(szrMock.getIdentityLinkEidas(any(PersonInfoType.class))).thenReturn(szrResponse.getGetIdentityLinkReturn()); + + } + } diff --git a/connector/src/test/resources/config/templates/countrySelection.html b/connector/src/test/resources/config/templates/countrySelection.html index bac2bb9c..02d01399 100644 --- a/connector/src/test/resources/config/templates/countrySelection.html +++ b/connector/src/test/resources/config/templates/countrySelection.html @@ -253,11 +253,11 @@ <span th:text="#{gui.countryselection.infos.general.part.4}"> fourth part </span> </p> - <p - <span th:text="#{gui.countryselection.infos.general.part.5}"> fived part </span> - <a href="https://www.dsb.gv.at/-/das-erganzungsregister-fur-naturliche-personen-ernp-" target="_blank" - th:text="#{gui.countryselection.infos.general.link.2}"></a> - <span th:text="#{gui.countryselection.infos.general.part.6}"> sixed part </span> + <p> + <span th:text="#{gui.countryselection.infos.general.part.5}"> fived part </span> + <a href="https://www.dsb.gv.at/-/das-erganzungsregister-fur-naturliche-personen-ernp-" target="_blank" + th:text="#{gui.countryselection.infos.general.link.2}"></a> + <span th:text="#{gui.countryselection.infos.general.part.6}"> sixed part </span> </p> </div> diff --git a/infos/Handbuch_MS-eIDAS-Node.docx b/infos/Handbuch_MS-eIDAS-Node.docx Binary files differindex aacb3828..0401fea9 100644 --- a/infos/Handbuch_MS-eIDAS-Node.docx +++ b/infos/Handbuch_MS-eIDAS-Node.docx diff --git a/infos/handbook/Handbuch_MS-eIDAS-Node.pdf b/infos/handbook/Handbuch_MS-eIDAS-Node.pdf Binary files differindex 1d4195bb..b35a77bc 100644 --- a/infos/handbook/Handbuch_MS-eIDAS-Node.pdf +++ b/infos/handbook/Handbuch_MS-eIDAS-Node.pdf diff --git a/infos/history.txt b/infos/history.txt index 53218f48..9c6f06d1 100644 --- a/infos/history.txt +++ b/infos/history.txt @@ -1,5 +1,21 @@ Dieses Dokument zeigt die Veränderungen und Erweiterungen am eIDAS MS-Connector +Version 1.2.4 (2022-04-05): + - Bugfix + - Mögliche RCE Schwachstelle via Spring Framework behoben (CVE-2022-22965) + - Work-Around für insertErnp im ID Austria Betriebsmodus + - Akutalisierung von Drittherstellerbibliotheken + - Spring-Core 5.3.18 + - Spring-Boot 2.5.12 + - thymeleaf-spring5 3.0.15.RELEASE + - Apache CXF 3.4.6 + - Google Guava 31.1-jre + - Jackson 2.13.2 + - Joda-Time 2.10.14 + - jose4j 0.7.11 + - log4j 2.17.2 + - slf4j 1.7.36 + Version 1.2.3 (2021-10-21): - Bugfix - Inkompatibilität zwischen AT MS-Connector und ID Austria System behoben diff --git a/infos/readme_1.2.4.md b/infos/readme_1.2.4.md new file mode 100644 index 00000000..fd393a10 --- /dev/null +++ b/infos/readme_1.2.4.md @@ -0,0 +1,65 @@ +# MS-Connector v1.2.4 Release vom 05.04.2022 + +Der MS-Connector implementiert eine Bridge zwischen dem österreichischen E-ID System und dem eIDAS Framework um ausländischen Benutzern eine Anmeldung am österreichischen Service-Providern zu ermöglichen. + +### Änderungen in dieser Version + + - Bugfix + - Mögliche RCE Schwachstelle in Spring Framework behoben ([CVE-2022-22965](https://tanzu.vmware.com/security/cve-2022-22965)) + - Work-Around für insertErnp im ID Austria Betriebsmodus + + - Akutalisierung von Drittherstellerbibliotheken + + + + +### Durchführen eines Updates + +Nachfolgend finden Sie die erforderlichen Schritte für das Update eines bestehenden MS-specific eIDAS Connectors auf die aktuelle Version 1.2.4. Das vollständige Handbuch mit allen Konfigurationsparametern finden Sie im Releasepackage im Verzeichnis: _infos/handbook/_ + +### Ausgehend von einer bestehenden Version 1.2.x + +1. Stoppen Sie die *MS-Connector* Applikation und fertigen Sie eine Sicherungskopie Ihrer Applikation inklusive Konfiguration an +2. Entpacken Sie das Releasepacket *ms_specific_connector-1.2.4-dist.zip* in ein temporäres Verzeichnis welches in weiterer Folge __MsConnectorPackage__ bezeichnet wird. +3. Kopieren sie die Applikation __MsConnectorPackage__/ms_connector.war nach in das Applikationsverzeichnis ihres Applikationsservers +4. Neue optionale Konfigurationsparameter + - *SZR Kommunikation* + - ```eidas.ms.auth.eIDAS.szrclient.workarounds.use.getidentitylink.for.ida``` + +### Ausgehend von einer bestehenden Version 1.1.0 + +1. Stoppen Sie die *MS-Connector* Applikation und fertigen Sie eine Sicherungskopie Ihrer Applikation inklusive Konfiguration an +2. Entpacken Sie das Releasepacket *ms_specific_connector-1.2.4-dist.zip* in ein temporäres Verzeichnis welches in weiterer Folge __MsConnectorPackage__ bezeichnet wird. +3. Kopieren sie die Applikation __MsConnectorPackage__/ms_connector.war nach in das Applikationsverzeichnis ihres Applikationsservers +4. Mit der Version 1.2.0 wurde die Konfiguration eine eine Minimalkonfiguration [`default_config.properties`](./../config/default_config.properties) und eine in den MS-Connectorintegrierte Defaultkonfiguration aufgteilt. Die nachfolgende Aufzählung umfasst die neuen oder geänderten Konfigurationsparameter, beschreibt jedoch keine Aufteilung einer bestehenden Konfiguration in Minimal- und Defaultteil. Eine vollständige Beschreibung aller Konfigurationswerte finden Sie im Handbuch zum AT MS-Connector. +5. Update bestehender Dateien . Die nachfolgenden Dateien wurden geändert und erfordern eine Anpassung oder eine Übernahme dem Releasepacket, sofern die Anpassung nicht bereits durchgeführt wurde. Sofern die entsprechenden Datein an die bestehende Infrastruktur angepasst wurden so müssen diese Änderungen übernommen werden. + - __MsConnectorPackage__/config/templates/error_message.html + - __MsConnectorPackage__/config/eIDAS/igniteSpecificCommunication.xml + Hinweis: Siehe auch Update-Hinweise zur EIDAS-Node v2.5 +6. Erstellung neuer Dateien + - _KeyStore für ID Austria AuthBlock:_ Erstellen eines KeyStore mit mit öffentlichem und privaten Schlüssel welcher für die JWS Signature des technischen ID Austria AuthBlocks verwendet werden soll. +7. Neue Konfigurationsparameter + - *Allgemeine Konfiguration* + - ```eidas.ms.core.configRootDir``` + - *ID Austria Umsetzung* + - ```eidas.ms.auth.eIDAS.authblock.keystore.type``` + - ```eidas.ms.auth.eIDAS.authblock.keystore.path``` + - ```eidas.ms.auth.eIDAS.authblock.keystore.password``` + - ```eidas.ms.auth.eIDAS.authblock.key.alias``` + - ```eidas.ms.auth.eIDAS.authblock.key.password``` + - *Service-Provider Konfiguration Konfiguration* + - ```eidas.ms.sp.x.newEidMode``` +8. Gelöschte Konfigurationsparameter + + - ```authhandler.modules.bindingservice.bpk.target``` +9. Neue optionale Konfigurationsparameter + - *Allgemeine Konfiguration* + - ```eidas.ms.core.logging.level.info.errorcodes``` + - *eIDAS Node Kommunikation* + * ```eidas.ms.auth.eIDAS.node_v2.requesterId.useHashedForm``` + * ```eidas.ms.auth.eIDAS.node_v2.requesterId.lu.useStaticRequesterForAll``` + - *ID Austria Umsetzung* + - ```eidas.ms.auth.eIDAS.eid.testidentity.default``` + - ```eidas.ms.auth.eIDAS.szrclient.eidasbind.mds.inject``` + - *SZR Kommunikation* + - ```eidas.ms.auth.eIDAS.szrclient.workarounds.use.getidentitylink.for.ida``` diff --git a/modules/authmodule-eIDAS-v2/pom.xml b/modules/authmodule-eIDAS-v2/pom.xml index 57b88345..be78cb76 100644 --- a/modules/authmodule-eIDAS-v2/pom.xml +++ b/modules/authmodule-eIDAS-v2/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>at.asitplus.eidas.ms_specific</groupId> <artifactId>modules</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <groupId>at.asitplus.eidas.ms_specific.modules</groupId> <artifactId>authmodule-eIDAS-v2</artifactId> diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/Constants.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/Constants.java index 73539c73..fbc211f5 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/Constants.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/Constants.java @@ -245,7 +245,7 @@ public class Constants { @Deprecated public static final String CONIG_PROPS_EIDAS_SZRCLIENT_WORKAROUND_SQLLITEDATASTORE_ACTIVE = CONIG_PROPS_EIDAS_SZRCLIENT + ".workarounds.datastore.sqlite.active"; - + // http endpoint descriptions public static final String eIDAS_HTTP_ENDPOINT_SP_POST = "/eidas/light/sp/post"; public static final String eIDAS_HTTP_ENDPOINT_SP_REDIRECT = "/eidas/light/sp/redirect"; diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/clients/szr/SzrClient.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/clients/szr/SzrClient.java index bd1eb13e..fca5e583 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/clients/szr/SzrClient.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/clients/szr/SzrClient.java @@ -207,10 +207,9 @@ public class SzrClient extends AbstractSoapClient { } - return resp; - + return resp; } - + /** * Sign an eidasBind data-structure that combines vsz with user's pubKey and E-ID status. * diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/CreateIdentityLinkTask.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/CreateIdentityLinkTask.java index 27ebb8a6..6d315b0a 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/CreateIdentityLinkTask.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/CreateIdentityLinkTask.java @@ -239,6 +239,7 @@ public class CreateIdentityLinkTask extends AbstractAuthServletTask { String idType = identityLink.getIdentificationType(); final Pair<String, String> bpkCalc = BpkBuilder.generateAreaSpecificPersonIdentifier(idValue, idType, targetId); bpk = bpkCalc.getFirst(); + } return new SzrResultHolder(identityLink, bpk); diff --git a/modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/CreateIdentityLinkTaskEidNewTest.java b/modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/CreateIdentityLinkTaskEidNewTest.java index 44c2624e..bb4abfa2 100644 --- a/modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/CreateIdentityLinkTaskEidNewTest.java +++ b/modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/CreateIdentityLinkTaskEidNewTest.java @@ -18,6 +18,9 @@ import java.util.List; import java.util.Map; import javax.annotation.Nonnull; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Unmarshaller; import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.lang3.StringUtils; @@ -86,9 +89,11 @@ import eu.eidas.auth.commons.attribute.ImmutableAttributeMap.Builder; import eu.eidas.auth.commons.protocol.eidas.impl.PostalAddress; import eu.eidas.auth.commons.protocol.impl.AuthenticationResponse; import lombok.val; +import szrservices.GetIdentityLinkEidasResponse; import szrservices.JwsHeaderParam; import szrservices.PersonInfoType; import szrservices.SZR; +import szrservices.SZRException_Exception; import szrservices.SignContentEntry; import szrservices.SignContentResponseType; @@ -153,7 +158,7 @@ public class CreateIdentityLinkTaskEidNewTest { RequestContextHolder.setRequestAttributes(new ServletRequestAttributes(httpReq, httpResp)); basicConfig.putConfigValue("eidas.ms.auth.eIDAS.szrclient.debug.useDummySolution", "false"); - + final Map<String, String> spConfig = new HashMap<>(); spConfig.put(EaafConfigConstants.SERVICE_UNIQUEIDENTIFIER, "testSp"); spConfig.put("target", "urn:publicid:gv.at:cdid+XX"); @@ -197,6 +202,7 @@ public class CreateIdentityLinkTaskEidNewTest { response = buildDummyAuthResponse(true); pendingReq.getSessionData(AuthProcessDataWrapper.class) .setGenericDataToSession(Constants.DATA_FULL_EIDAS_RESPONSE, response); + SimpleEidasData eidData = eidPostProcessor.postProcess( convertEidasAttrToSimpleMap(response.getAttributes().getAttributeMap())); MatchingTaskUtils.storeInitialEidasData(pendingReq, eidData); @@ -329,6 +335,8 @@ public class CreateIdentityLinkTaskEidNewTest { } + + @Test public void successfulProcessWithDataFromMatching() throws Exception { //initialize test @@ -480,15 +488,15 @@ public class CreateIdentityLinkTaskEidNewTest { Assert.assertNull("PlaceOfBirth", person.getPerson().getPlaceOfBirth()); Assert.assertNull("BirthName", person.getPerson().getAlternativeName()); Assert.assertNull("TravelDocument", person.getTravelDocument()); - - + } - + @Test public void getStammzahlEncryptedExceptionTest() throws Exception { try { when(szrMock.getStammzahlEncrypted(any(), any())).thenReturn(null); task.execute(pendingReq, executionContext); + } catch (TaskExecutionException e) { Assert.assertEquals("Incorrect exception thrown", e.getMessage(), "IdentityLink generation for foreign person " + "FAILED."); @@ -504,6 +512,7 @@ public class CreateIdentityLinkTaskEidNewTest { when(szrMock.getStammzahlEncrypted(any(), any())).thenReturn(RandomStringUtils.randomNumeric(10)); when(szrMock.signContent(any(), any(), any())).thenReturn(null); task.execute(pendingReq, executionContext); + } catch (TaskExecutionException e) { Assert.assertEquals("Incorrect exception thrown", e.getMessage(), "IdentityLink generation for foreign person " + "FAILED."); @@ -536,6 +545,20 @@ public class CreateIdentityLinkTaskEidNewTest { } @Nonnull + private void setSzrResponseIdentityLink(String responseXmlPath) throws JAXBException, SZRException_Exception { + final JAXBContext jaxbContext = JAXBContext + .newInstance(szrservices.ObjectFactory.class, org.w3._2001._04.xmldsig_more.ObjectFactory.class, + org.w3._2000._09.xmldsig.ObjectFactory.class, + at.gv.e_government.reference.namespace.persondata._20020228.ObjectFactory.class); + final Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller(); + final GetIdentityLinkEidasResponse szrResponse = (GetIdentityLinkEidasResponse) jaxbUnmarshaller + .unmarshal(this.getClass().getResourceAsStream(responseXmlPath)); + org.mockito.Mockito.when(szrMock.getIdentityLinkEidas(any(PersonInfoType.class))).thenReturn(szrResponse.getGetIdentityLinkReturn()); + + } + + + @Nonnull private AuthenticationResponse buildDummyAuthResponse(boolean withAll) throws URISyntaxException { final AttributeDefinition attributeDef = attrRegistry.getCoreAttributeRegistry().getByFriendlyName( Constants.eIDAS_ATTR_PERSONALIDENTIFIER).first(); diff --git a/modules/core_common_lib/pom.xml b/modules/core_common_lib/pom.xml index 76641f02..e52216d3 100644 --- a/modules/core_common_lib/pom.xml +++ b/modules/core_common_lib/pom.xml @@ -7,7 +7,7 @@ <parent> <groupId>at.asitplus.eidas.ms_specific</groupId> <artifactId>modules</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <artifactId>core_common_lib</artifactId> <name>ms_specific_common_lib</name> diff --git a/modules/core_common_webapp/pom.xml b/modules/core_common_webapp/pom.xml index b36153e6..a7efdf15 100644 --- a/modules/core_common_webapp/pom.xml +++ b/modules/core_common_webapp/pom.xml @@ -3,7 +3,7 @@ <parent> <groupId>at.asitplus.eidas.ms_specific</groupId> <artifactId>modules</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <artifactId>core_common_webapp</artifactId> <name>WebApplication commons</name> diff --git a/modules/pom.xml b/modules/pom.xml index e8473751..fff02aa5 100644 --- a/modules/pom.xml +++ b/modules/pom.xml @@ -4,7 +4,7 @@ <parent> <groupId>at.asitplus.eidas</groupId> <artifactId>ms_specific</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> </parent> <groupId>at.asitplus.eidas.ms_specific</groupId> <artifactId>modules</artifactId> @@ -5,7 +5,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>at.asitplus.eidas</groupId> <artifactId>ms_specific</artifactId> - <version>1.2.4-SNAPSHOT</version> + <version>1.2.5-SNAPSHOT</version> <packaging>pom</packaging> <name>MS specific eIDAS components</name> @@ -27,8 +27,7 @@ <spring-boot-starter-web.version>2.5.12</spring-boot-starter-web.version> <spring-boot-admin-starter-client.version>2.5.4</spring-boot-admin-starter-client.version> <org.springframework.version>5.3.18</org.springframework.version> - <org.thymeleaf-spring5.version>3.0.14.RELEASE</org.thymeleaf-spring5.version> - + <org.thymeleaf-spring5.version>3.0.15.RELEASE</org.thymeleaf-spring5.version> <apache.cxf.version>3.5.0</apache.cxf.version> <eidas-ref.version>2.5.0</eidas-ref.version> @@ -36,24 +35,27 @@ <org.apache.commons-lang3.version>3.12.0</org.apache.commons-lang3.version> <org.apache.commons-text.version>1.9</org.apache.commons-text.version> <commons-collections4.version>4.4</commons-collections4.version> + <commons-io.version>2.11.0</commons-io.version> - <com.google.guava.version>31.0.1-jre</com.google.guava.version> - <joda-time.version>2.10.13</joda-time.version> - - <org.slf4j.version>1.7.32</org.slf4j.version> - <log4j.version>2.17.1</log4j.version> - <ch.qos.logback.version>1.2.10</ch.qos.logback.version> - - <jackson.version>2.13.1</jackson.version> + <com.google.guava.version>31.1-jre</com.google.guava.version> + <joda-time.version>2.10.14</joda-time.version> + <jackson.version>2.13.2</jackson.version> + <jackson-datatype-jsr310.version>2.13.2</jackson-datatype-jsr310.version> <jackson-databind-nullable.version>0.2.2</jackson-databind-nullable.version> <swagger-parser.version>2.0.29</swagger-parser.version> + + <org.slf4j.version>1.7.36</org.slf4j.version> + <log4j.version>2.17.2</log4j.version> + <ch.qos.logback.version>1.2.10</ch.qos.logback.version> + + <!-- for code generation --> + <openapi-generator-maven-plugin.version>5.4.0</openapi-generator-maven-plugin.version> + + <!-- org.xerial.sqlite-jdbc.version>3.34.0</org.xerial.sqlite-jdbc.version --> <javax.validation-api.version>2.0.1.Final</javax.validation-api.version> <hibernate-validator.version>6.1.5.Final</hibernate-validator.version> - <org.bitbucket.b_c.jose4j.version>0.7.9</org.bitbucket.b_c.jose4j.version> - - <!-- for code generation --> - <openapi-generator-maven-plugin.version>5.4.0</openapi-generator-maven-plugin.version> + <org.bitbucket.b_c.jose4j.version>0.7.11</org.bitbucket.b_c.jose4j.version> <!-- For software testing only --> <json-path.version>2.6.0</json-path.version> @@ -391,8 +393,7 @@ <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> - </dependency> - + </dependency> <dependency> <groupId>org.openapitools</groupId> <artifactId>jackson-databind-nullable</artifactId> @@ -404,6 +405,13 @@ <version>${swagger-parser.version}</version> </dependency> <dependency> + <groupId>com.fasterxml.jackson.module</groupId> + <artifactId>jackson-modules-java8</artifactId> + <version>${jackson-datatype-jsr310.version}</version> + <type>pom</type> + <scope>runtime</scope> + </dependency> + <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>${javax.validation-api.version}</version> |