From 36a3ddc4e108efc7813b655b74e9919c00c9fd94 Mon Sep 17 00:00:00 2001 From: Andreas Fitzek Date: Thu, 2 May 2013 13:35:38 +0200 Subject: PVP2 basic authnrequest handling and assertion building --- .../auth/src/main/webapp/WEB-INF/urlrewrite.xml | 8 +- id/server/auth/src/main/webapp/WEB-INF/web.xml | 18 +- id/server/idserverlib/pom.xml | 7 +- .../moa/id/auth/AuthenticationServer.java | 14 +- .../auth/servlet/StartAuthenticationServlet.java | 4 +- .../moa/id/config/ConfigurationBuilder.java | 40 +-- .../moa/id/config/auth/OAAuthParameter.java | 32 +-- .../moa/id/entrypoints/DispatcherServlet.java | 44 ++- .../at/gv/egovernment/moa/id/moduls/IAction.java | 6 +- .../gv/egovernment/moa/id/moduls/IModulInfo.java | 5 +- .../id/protocols/pvp2x/AuthenticationAction.java | 10 +- .../moa/id/protocols/pvp2x/PVP2XProtocol.java | 67 ++++- .../id/protocols/pvp2x/PVPTargetConfiguration.java | 7 +- .../pvp2x/SAMLRequestNotSignedException.java | 17 ++ .../protocols/pvp2x/SAMLRequestNotSupported.java | 8 +- .../moa/id/protocols/pvp2x/binding/IDecoder.java | 4 +- .../moa/id/protocols/pvp2x/binding/IEncoder.java | 12 +- .../moa/id/protocols/pvp2x/binding/MOARequest.java | 40 +++ .../id/protocols/pvp2x/binding/MOAResponse.java | 38 +++ .../id/protocols/pvp2x/binding/PostBinding.java | 115 +++++++- .../protocols/pvp2x/binding/RedirectBinding.java | 176 ++++++++++-- .../pvp2x/metadata/MOAMetadataProvider.java | 76 ++++++ .../pvp2x/requestHandler/AuthnRequestHandler.java | 93 ++++++- .../pvp2x/requestHandler/IRequestHandler.java | 6 +- .../pvp2x/requestHandler/RequestManager.java | 9 +- .../moa/id/protocols/pvp2x/signer/SAMLSigner.java | 5 + .../id/protocols/pvp2x/utils/PrettyPrinter.java | 301 +++++++++++++++++++++ .../moa/id/protocols/pvp2x/utils/SAML2Utils.java | 44 +++ .../pvp2x/validation/ChainSAMLValidator.java | 28 ++ .../protocols/pvp2x/validation/ISAMLValidator.java | 9 + .../pvp2x/validation/SAMLSignatureValidator.java | 27 ++ .../pvp2x/verification/ChainSAMLVerifier.java | 28 ++ .../pvp2x/verification/ISAMLVerifier.java | 9 + .../pvp2x/verification/SAMLVerifierMOASP.java | 108 ++++++++ .../pvp2x/verification/TrustEngineFactory.java | 70 +++++ .../moa/id/protocols/saml1/GetArtifactAction.java | 4 + .../moa/id/protocols/saml1/SAML1Protocol.java | 5 + .../templates/pvp_postbinding_template.html | 51 ++++ 38 files changed, 1408 insertions(+), 137 deletions(-) create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/SAMLRequestNotSignedException.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/binding/MOARequest.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/binding/MOAResponse.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/metadata/MOAMetadataProvider.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/signer/SAMLSigner.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/utils/PrettyPrinter.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/validation/ChainSAMLValidator.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/validation/ISAMLValidator.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/validation/SAMLSignatureValidator.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/ChainSAMLVerifier.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/ISAMLVerifier.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/SAMLVerifierMOASP.java create mode 100644 id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/TrustEngineFactory.java create mode 100644 id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html (limited to 'id') diff --git a/id/server/auth/src/main/webapp/WEB-INF/urlrewrite.xml b/id/server/auth/src/main/webapp/WEB-INF/urlrewrite.xml index 1d75053f2..032f06911 100644 --- a/id/server/auth/src/main/webapp/WEB-INF/urlrewrite.xml +++ b/id/server/auth/src/main/webapp/WEB-INF/urlrewrite.xml @@ -22,20 +22,20 @@ ^/StartAuthentication$ - /AuthDispatcher?mod=id_saml1&action=GetArtifact + /dispatcher?mod=id_saml1&action=GetArtifact ^/StartAuthentication\?(.*)$ - /AuthDispatcher?mod=id_saml1&action=GetArtifact&$1 + /dispatcher?mod=id_saml1&action=GetArtifact&$1 ^/auth/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ - /AuthDispatcher?mod=$1&action=$2 + /dispatcher?mod=$1&action=$2 ^/auth/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)\?(.*)$ - /AuthDispatcher?mod=$1&action=$2&$3 + /dispatcher?mod=$1&action=$2&$3 diff --git a/id/server/auth/src/main/webapp/WEB-INF/web.xml b/id/server/auth/src/main/webapp/WEB-INF/web.xml index dcacce819..f2235b91f 100644 --- a/id/server/auth/src/main/webapp/WEB-INF/web.xml +++ b/id/server/auth/src/main/webapp/WEB-INF/web.xml @@ -80,16 +80,16 @@ at.gv.egovernment.moa.id.auth.servlet.PEPSConnectorServlet - + - UnauthDispatcherServlet - UnauthDispatcher Servlet + DispatcherServlet + Dispatcher Servlet at.gv.egovernment.moa.id.entrypoints.DispatcherServlet 1 @@ -104,13 +104,13 @@ - UnauthDispatcherServlet - /UnauthDispatcher + DispatcherServlet + /dispatcher - + @@ -183,8 +183,6 @@ UrlRewriteFilter /* - REQUEST - FORWARD + + +
+
+ #if($RelayState)#end + + #if($SAMLRequest)#end + + #if($SAMLResponse)#end + +
+ +
+ + + \ No newline at end of file -- cgit v1.2.3