From b3a0302041d08ba8360d96216b6da67580850717 Mon Sep 17 00:00:00 2001 From: Thomas <> Date: Wed, 27 Sep 2023 14:07:56 +0200 Subject: feat(eidas): refactoring to eIDAS node v2.7 --- basicConfig/eIDAS/igniteSpecificCommunication.xml | 126 --------------------- .../EidasAuthenticationSpringResourceProvider.java | 2 +- .../modules/auth/eidas/v2/EidasSignalServlet.java | 4 +- .../eidas/v2/tasks/GenerateAuthnRequestTask.java | 7 +- .../tasks/ReceiveAuthnResponseAlternativeTask.java | 3 +- .../eidas/v2/tasks/ReceiveAuthnResponseTask.java | 3 +- .../resources/SpringTest-context_basic_test.xml | 24 ++-- .../resources/SpringTest-context_tasks_test.xml | 2 +- .../specific_eIDAS_core_storage.beans.xml | 4 +- .../modules/core/eidas/EidasConstants.java | 4 + .../main/resources/eidas_v27_connector.beans.xml | 47 ++++++++ .../resources/eidas_v27_proxyservice.beans.xml | 48 ++++++++ .../eidas_v2_auth_ref_impl_config.beans.xml | 20 ++-- .../MsProxyServiceSpringResourceProvider.java | 8 +- .../protocol/EidasProxyServiceController.java | 4 +- .../protocol/ProxyServiceAuthenticationAction.java | 4 +- .../EidasProxyServiceControllerBorisTest.java | 4 +- .../protocol/EidasProxyServiceControllerTest.java | 4 +- .../ProxyServiceAuthenticationActionTest.java | 4 +- .../spring/SpringTest-context_basic_test.xml | 2 +- .../src/main/resources/application.properties | 13 +++ .../src/main/resources/environmentContext.xml | 50 ++++++++ .../connector/test/FullStartUpAndProcessTest.java | 10 +- .../src/main/resources/application.properties | 13 +++ .../src/main/resources/environmentContext.xml | 49 ++++++++ .../proxy/test/FullStartUpAndProcessTest.java | 7 +- pom.xml | 2 +- 27 files changed, 275 insertions(+), 193 deletions(-) delete mode 100644 basicConfig/eIDAS/igniteSpecificCommunication.xml create mode 100644 modules/core_commons_eidas/src/main/resources/eidas_v27_connector.beans.xml create mode 100644 modules/core_commons_eidas/src/main/resources/eidas_v27_proxyservice.beans.xml create mode 100644 ms_specific_connector/src/main/resources/environmentContext.xml create mode 100644 ms_specific_proxyservice/src/main/resources/environmentContext.xml diff --git a/basicConfig/eIDAS/igniteSpecificCommunication.xml b/basicConfig/eIDAS/igniteSpecificCommunication.xml deleted file mode 100644 index da61cbf1..00000000 --- a/basicConfig/eIDAS/igniteSpecificCommunication.xml +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasAuthenticationSpringResourceProvider.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasAuthenticationSpringResourceProvider.java index e5b10185..03cbd2c1 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasAuthenticationSpringResourceProvider.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasAuthenticationSpringResourceProvider.java @@ -45,7 +45,7 @@ public class EidasAuthenticationSpringResourceProvider implements SpringResource public Resource[] getResourcesToLoad() { final ClassPathResource eidasAuthConfig = new ClassPathResource("/eidas_v2_auth.beans.xml", EidasAuthenticationSpringResourceProvider.class); - final ClassPathResource eidasRefImplConfig = new ClassPathResource("/eidas_v2_auth_ref_impl_config.beans.xml", + final ClassPathResource eidasRefImplConfig = new ClassPathResource("/eidas_v27_connector.beans.xml", EidasAuthenticationSpringResourceProvider.class); return new Resource[] { eidasRefImplConfig, eidasAuthConfig }; diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasSignalServlet.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasSignalServlet.java index e3600329..ae03d4e0 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasSignalServlet.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/EidasSignalServlet.java @@ -40,12 +40,12 @@ import org.springframework.web.bind.annotation.RequestMethod; import com.google.common.collect.ImmutableSortedSet; import at.asitplus.eidas.specific.modules.auth.eidas.v2.exception.EidasSAuthenticationException; +import at.asitplus.eidas.specific.modules.core.eidas.EidasConstants; import at.asitplus.eidas.specific.modules.core.eidas.service.EidasAttributeRegistry; import at.gv.egiz.eaaf.core.exceptions.EaafException; import at.gv.egiz.eaaf.core.impl.idp.controller.AbstractProcessEngineSignalController; import eu.eidas.auth.commons.EidasParameterKeys; import eu.eidas.auth.commons.light.ILightResponse; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; @@ -110,7 +110,7 @@ public class EidasSignalServlet extends AbstractProcessEngineSignalController { final SpecificCommunicationService specificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE); final ILightResponse eidasResponse = specificConnectorCommunicationService.getAndRemoveResponse( tokenBase64, ImmutableSortedSet.copyOf(attrRegistry.getCoreAttributeRegistry().getAttributes())); diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/GenerateAuthnRequestTask.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/GenerateAuthnRequestTask.java index 82489e25..f14c8f90 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/GenerateAuthnRequestTask.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/GenerateAuthnRequestTask.java @@ -59,7 +59,6 @@ import eu.eidas.auth.commons.light.ILightRequest; import eu.eidas.auth.commons.light.impl.LightRequest; import eu.eidas.auth.commons.tx.BinaryLightToken; import eu.eidas.specificcommunication.BinaryLightTokenHelper; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.extern.slf4j.Slf4j; @@ -192,12 +191,14 @@ public class GenerateAuthnRequestTask extends AbstractAuthServletTask { throws ServletException { final BinaryLightToken binaryLightToken; try { - String beanName = SpecificCommunicationDefinitionBeanNames.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString(); - final SpecificCommunicationService service = (SpecificCommunicationService) context.getBean(beanName); + final SpecificCommunicationService service = (SpecificCommunicationService) context.getBean( + EidasConstants.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE); binaryLightToken = service.putRequest(lightRequest); + } catch (final SpecificCommunicationException e) { log.error("Unable to process specific request"); throw new ServletException(e); + } return binaryLightToken; diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseAlternativeTask.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseAlternativeTask.java index ac70a2ac..b05ce69d 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseAlternativeTask.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseAlternativeTask.java @@ -53,7 +53,6 @@ import eu.eidas.auth.commons.light.ILightResponse; import eu.eidas.auth.commons.light.impl.LightResponse; import eu.eidas.auth.commons.tx.BinaryLightToken; import eu.eidas.specificcommunication.BinaryLightTokenHelper; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.extern.slf4j.Slf4j; @@ -177,7 +176,7 @@ public class ReceiveAuthnResponseAlternativeTask extends AbstractAuthServletTask final SpecificCommunicationService specificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); BinaryLightToken token = specificConnectorCommunicationService.putResponse( LightResponse.builder(eidasResponse).relayState(pendingReq.getPendingRequestId()).build()); final String tokenBase64 = BinaryLightTokenHelper.encodeBinaryLightTokenBase64(token); diff --git a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseTask.java b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseTask.java index cc497318..15d2616c 100644 --- a/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseTask.java +++ b/modules/authmodule-eIDAS-v2/src/main/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/tasks/ReceiveAuthnResponseTask.java @@ -54,7 +54,6 @@ import eu.eidas.auth.commons.light.ILightResponse; import eu.eidas.auth.commons.light.impl.LightResponse; import eu.eidas.auth.commons.tx.BinaryLightToken; import eu.eidas.specificcommunication.BinaryLightTokenHelper; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.extern.slf4j.Slf4j; @@ -137,7 +136,7 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask { final SpecificCommunicationService specificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); BinaryLightToken token = specificConnectorCommunicationService.putResponse( LightResponse.builder(eidasResponse).relayState(pendingReq.getPendingRequestId()).build()); final String tokenBase64 = BinaryLightTokenHelper.encodeBinaryLightTokenBase64(token); diff --git a/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_basic_test.xml b/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_basic_test.xml index d71a47dc..517be19a 100644 --- a/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_basic_test.xml +++ b/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_basic_test.xml @@ -11,18 +11,9 @@ + - - - - - - - - + + + + + + + + diff --git a/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_tasks_test.xml b/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_tasks_test.xml index 1b5391d5..463bca98 100644 --- a/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_tasks_test.xml +++ b/modules/authmodule-eIDAS-v2/src/test/resources/SpringTest-context_tasks_test.xml @@ -24,7 +24,7 @@ - - + + diff --git a/modules/core_commons_eidas/src/main/java/at/asitplus/eidas/specific/modules/core/eidas/EidasConstants.java b/modules/core_commons_eidas/src/main/java/at/asitplus/eidas/specific/modules/core/eidas/EidasConstants.java index ac17c30f..a2e2ba03 100644 --- a/modules/core_commons_eidas/src/main/java/at/asitplus/eidas/specific/modules/core/eidas/EidasConstants.java +++ b/modules/core_commons_eidas/src/main/java/at/asitplus/eidas/specific/modules/core/eidas/EidasConstants.java @@ -8,6 +8,10 @@ package at.asitplus.eidas.specific.modules.core.eidas; */ public class EidasConstants { + // references to eIDAS Node implementation + public static final String SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE = "connectorCommunicationService"; + public static final String SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE = "proxyCommunicationService"; + // common config ore-fixes public static final String CONIG_PROPS_EIDAS_PREFIX = "auth.eIDAS"; public static final String CONIG_PROPS_EIDAS_NODE = EidasConstants.CONIG_PROPS_EIDAS_PREFIX + ".node_v2"; diff --git a/modules/core_commons_eidas/src/main/resources/eidas_v27_connector.beans.xml b/modules/core_commons_eidas/src/main/resources/eidas_v27_connector.beans.xml new file mode 100644 index 00000000..fb17b857 --- /dev/null +++ b/modules/core_commons_eidas/src/main/resources/eidas_v27_connector.beans.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/core_commons_eidas/src/main/resources/eidas_v27_proxyservice.beans.xml b/modules/core_commons_eidas/src/main/resources/eidas_v27_proxyservice.beans.xml new file mode 100644 index 00000000..ea2f5a7d --- /dev/null +++ b/modules/core_commons_eidas/src/main/resources/eidas_v27_proxyservice.beans.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/core_commons_eidas/src/main/resources/eidas_v2_auth_ref_impl_config.beans.xml b/modules/core_commons_eidas/src/main/resources/eidas_v2_auth_ref_impl_config.beans.xml index cde9687e..f0038a8e 100644 --- a/modules/core_commons_eidas/src/main/resources/eidas_v2_auth_ref_impl_config.beans.xml +++ b/modules/core_commons_eidas/src/main/resources/eidas_v2_auth_ref_impl_config.beans.xml @@ -10,10 +10,7 @@ http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"> - - - + @@ -24,16 +21,15 @@ - - + + + + - - + + \ No newline at end of file diff --git a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/MsProxyServiceSpringResourceProvider.java b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/MsProxyServiceSpringResourceProvider.java index 571ad8ab..71f96a76 100644 --- a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/MsProxyServiceSpringResourceProvider.java +++ b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/MsProxyServiceSpringResourceProvider.java @@ -45,11 +45,11 @@ public class MsProxyServiceSpringResourceProvider implements SpringResourceProvi public Resource[] getResourcesToLoad() { final ClassPathResource eidasProxyServiceConfig = new ClassPathResource("/spring/eidas_proxy-service.beans.xml", MsProxyServiceSpringResourceProvider.class); - final ClassPathResource eidasRefImplConfig = new ClassPathResource("/eidas_v2_auth_ref_impl_config.beans.xml", - MsProxyServiceSpringResourceProvider.class); - - + final ClassPathResource eidasRefImplConfig = + new ClassPathResource("/eidas_v27_proxyservice.beans.xml", + MsProxyServiceSpringResourceProvider.class); return new Resource[] { eidasProxyServiceConfig, eidasRefImplConfig }; + } } diff --git a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/EidasProxyServiceController.java b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/EidasProxyServiceController.java index 4de28956..5742b920 100644 --- a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/EidasProxyServiceController.java +++ b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/EidasProxyServiceController.java @@ -56,7 +56,6 @@ import eu.eidas.auth.commons.light.ILightRequest; import eu.eidas.auth.commons.light.impl.LightResponse; import eu.eidas.auth.commons.light.impl.LightResponse.Builder; import eu.eidas.auth.commons.light.impl.ResponseStatus; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.extern.slf4j.Slf4j; @@ -121,8 +120,7 @@ public class EidasProxyServiceController extends AbstractController implements I // read authentication request from shared cache final SpecificCommunicationService specificProxyCommunicationService = (SpecificCommunicationService) applicationContext.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE - .toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); final ILightRequest eidasRequest = specificProxyCommunicationService.getAndRemoveRequest( tokenBase64, ImmutableSortedSet.copyOf(attrRegistry.getCoreRegistry().getCoreAttributeRegistry() diff --git a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/ProxyServiceAuthenticationAction.java b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/ProxyServiceAuthenticationAction.java index bb85f18c..bb91e919 100644 --- a/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/ProxyServiceAuthenticationAction.java +++ b/modules/eidas_proxy-sevice/src/main/java/at/asitplus/eidas/specific/modules/msproxyservice/protocol/ProxyServiceAuthenticationAction.java @@ -49,7 +49,6 @@ import eu.eidas.auth.commons.light.impl.LightResponse.Builder; import eu.eidas.auth.commons.light.impl.ResponseStatus; import eu.eidas.auth.commons.tx.BinaryLightToken; import eu.eidas.specificcommunication.BinaryLightTokenHelper; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.extern.slf4j.Slf4j; @@ -328,8 +327,7 @@ public class ProxyServiceAuthenticationAction implements IAction { try { final SpecificCommunicationService springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE - .toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); binaryLightToken = springManagedSpecificConnectorCommunicationService.putResponse(lightResponse); diff --git a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerBorisTest.java b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerBorisTest.java index 78ae87a5..27fcde7f 100644 --- a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerBorisTest.java +++ b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerBorisTest.java @@ -42,7 +42,6 @@ import at.gv.egiz.eaaf.core.impl.idp.module.test.DummyProtocolAuthService; import eu.eidas.auth.commons.EidasParameterKeys; import eu.eidas.auth.commons.attribute.ImmutableAttributeMap; import eu.eidas.auth.commons.light.impl.LightRequest; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; @RunWith(SpringJUnit4ClassRunner.class) @@ -85,8 +84,7 @@ public class EidasProxyServiceControllerBorisTest { springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE - .toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); } diff --git a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerTest.java b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerTest.java index c23f1d53..47ddcec0 100644 --- a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerTest.java +++ b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/EidasProxyServiceControllerTest.java @@ -52,7 +52,6 @@ import eu.eidas.auth.commons.EidasParameterKeys; import eu.eidas.auth.commons.attribute.ImmutableAttributeMap; import eu.eidas.auth.commons.light.ILightResponse; import eu.eidas.auth.commons.light.impl.LightRequest; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; @@ -97,8 +96,7 @@ public class EidasProxyServiceControllerTest { springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE - .toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); } diff --git a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/ProxyServiceAuthenticationActionTest.java b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/ProxyServiceAuthenticationActionTest.java index 333a823e..f9369ac0 100644 --- a/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/ProxyServiceAuthenticationActionTest.java +++ b/modules/eidas_proxy-sevice/src/test/java/at/asitplus/eidas/specific/modules/msproxyservice/test/protocol/ProxyServiceAuthenticationActionTest.java @@ -53,7 +53,6 @@ import eu.eidas.auth.commons.attribute.ImmutableAttributeMap; import eu.eidas.auth.commons.light.ILightResponse; import eu.eidas.auth.commons.light.impl.LightRequest; import eu.eidas.auth.commons.light.impl.LightRequest.Builder; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.SneakyThrows; @@ -110,8 +109,7 @@ public class ProxyServiceAuthenticationActionTest { springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) context.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE - .toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); } diff --git a/modules/eidas_proxy-sevice/src/test/resources/spring/SpringTest-context_basic_test.xml b/modules/eidas_proxy-sevice/src/test/resources/spring/SpringTest-context_basic_test.xml index 0b7540f5..313cb9c4 100644 --- a/modules/eidas_proxy-sevice/src/test/resources/spring/SpringTest-context_basic_test.xml +++ b/modules/eidas_proxy-sevice/src/test/resources/spring/SpringTest-context_basic_test.xml @@ -13,7 +13,7 @@ - + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ms_specific_connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java b/ms_specific_connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java index 5e7d92b2..02e4ee79 100644 --- a/ms_specific_connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java +++ b/ms_specific_connector/src/test/java/at/asitplus/eidas/specific/connector/test/FullStartUpAndProcessTest.java @@ -98,7 +98,6 @@ import eu.eidas.auth.commons.attribute.ImmutableAttributeMap; import eu.eidas.auth.commons.light.ILightRequest; import eu.eidas.auth.commons.protocol.impl.AuthenticationResponse; import eu.eidas.auth.commons.tx.BinaryLightToken; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.exception.SpecificCommunicationException; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.SneakyThrows; @@ -180,8 +179,9 @@ public class FullStartUpAndProcessTest { + "../basicConfig/eIDAS/"); System.setProperty("SPECIFIC_CONNECTOR_CONFIG_REPOSITORY", current.substring("file:".length()) + "../basicConfig/eIDAS/"); - System.setProperty("SPECIFIC_PROXY_SERVICE_CONFIG_REPOSITORY", current.substring("file:".length()) - + "../basicConfig/eIDAS/"); + + //System.setProperty("SPECIFIC_PROXY_SERVICE_CONFIG_REPOSITORY", current.substring("file:".length()) + // + "../basicConfig/eIDAS/"); EaafOpenSaml3xInitializer.eaafInitialize(); @@ -648,7 +648,7 @@ public class FullStartUpAndProcessTest { throws SpecificCommunicationException, URISyntaxException { final SpecificCommunicationService springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) wac.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_CONNECTOR_COMMUNICATION_SERVICE); //read request and validate basic properties ILightRequest req = springManagedSpecificConnectorCommunicationService.getAndRemoveRequest(eidasNodeReqToken, @@ -687,7 +687,7 @@ public class FullStartUpAndProcessTest { .subject(RandomStringUtils.randomAlphabetic(10)) .statusCode(statusCode) .inResponseTo(reqId) - .subjectNameIdFormat("afaf") + .subjectNameIdFormat("urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified") .levelOfAssurance(loa) .attributes(attributeMap) .build(); diff --git a/ms_specific_proxyservice/src/main/resources/application.properties b/ms_specific_proxyservice/src/main/resources/application.properties index cb55fb2c..d6918a97 100644 --- a/ms_specific_proxyservice/src/main/resources/application.properties +++ b/ms_specific_proxyservice/src/main/resources/application.properties @@ -69,6 +69,19 @@ eidas.ms.auth.eIDAS.node_v2.proxy.entityId=ownSpecificProxy eidas.ms.auth.eIDAS.node_v2.proxy.forward.errors=false eidas.ms.auth.eIDAS.node_v2.forward.method=POST + + # TODO change namespaces if required +lightToken.proxyservice.request.issuer.name=specificCommunicationDefinitionConnectorRequest +lightToken.proxyservice.request.node.id=specificConnector +lightToken.proxyservice.request.secret=mySecretConnectorRequest +lightToken.proxyservice.request.algorithm=SHA-256 +lightToken.proxyservice.response.issuer.name=specificCommunicationDefinitionConnectorResponse +lightToken.proxyservice.response.node.id=specificConnector +lightToken.proxyservice.response.secret=mySecretConnectorResponse +lightToken.proxyservice.response.algorithm=SHA-256 +incoming.lightRequest.max.number.characters=65535 + + # Mandate configuration eidas.ms.auth.eIDAS.proxy.mandates.enabled=true eidas.ms.auth.eIDAS.proxy.mandates.profiles.natural.default=GeneralvollmachtBilateral diff --git a/ms_specific_proxyservice/src/main/resources/environmentContext.xml b/ms_specific_proxyservice/src/main/resources/environmentContext.xml new file mode 100644 index 00000000..ccfab8f5 --- /dev/null +++ b/ms_specific_proxyservice/src/main/resources/environmentContext.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ms_specific_proxyservice/src/test/java/at/asitplus/eidas/specific/proxy/test/FullStartUpAndProcessTest.java b/ms_specific_proxyservice/src/test/java/at/asitplus/eidas/specific/proxy/test/FullStartUpAndProcessTest.java index 82103095..c86fbd9b 100644 --- a/ms_specific_proxyservice/src/test/java/at/asitplus/eidas/specific/proxy/test/FullStartUpAndProcessTest.java +++ b/ms_specific_proxyservice/src/test/java/at/asitplus/eidas/specific/proxy/test/FullStartUpAndProcessTest.java @@ -79,7 +79,6 @@ import eu.eidas.auth.commons.attribute.ImmutableAttributeMap; import eu.eidas.auth.commons.light.ILightResponse; import eu.eidas.auth.commons.light.impl.LightRequest; import eu.eidas.auth.commons.tx.BinaryLightToken; -import eu.eidas.specificcommunication.SpecificCommunicationDefinitionBeanNames; import eu.eidas.specificcommunication.protocol.SpecificCommunicationService; import lombok.SneakyThrows; import net.shibboleth.utilities.java.support.component.ComponentInitializationException; @@ -131,8 +130,6 @@ public class FullStartUpAndProcessTest { //eIDAS Ref. Impl. properties System.setProperty("EIDAS_CONFIG_REPOSITORY", current.substring("file:".length()) + "../basicConfig/eIDAS/"); - System.setProperty("SPECIFIC_CONNECTOR_CONFIG_REPOSITORY", current.substring("file:".length()) - + "../basicConfig/eIDAS/"); System.setProperty("SPECIFIC_PROXY_SERVICE_CONFIG_REPOSITORY", current.substring("file:".length()) + "../basicConfig/eIDAS/"); @@ -339,7 +336,7 @@ public class FullStartUpAndProcessTest { private void validateEidasLightResponse(String eidasNodeRespToken) { final SpecificCommunicationService springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) wac.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE); ILightResponse lightResp = springManagedSpecificConnectorCommunicationService.getAndRemoveResponse(eidasNodeRespToken, attrRegistry.getCoreAttributeRegistry().getAttributes()); @@ -469,7 +466,7 @@ public class FullStartUpAndProcessTest { final SpecificCommunicationService springManagedSpecificConnectorCommunicationService = (SpecificCommunicationService) wac.getBean( - SpecificCommunicationDefinitionBeanNames.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE.toString()); + EidasConstants.SPECIFIC_PROXYSERVICE_COMMUNICATION_SERVICE.toString()); BinaryLightToken token = springManagedSpecificConnectorCommunicationService.putRequest(authnReqBuilder.build()); proxyHttpReq.addParameter(EidasParameterKeys.TOKEN.toString(), Base64Utils.encodeToString(token.getTokenBytes())); diff --git a/pom.xml b/pom.xml index ab4974ba..176c572b 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ 6.5.0 - 2.6.0 + 2.7.0 3.13.0 1.10.0 -- cgit v1.2.3