From d36b6b294c668260852c1e7e26e0d11675b04ef4 Mon Sep 17 00:00:00 2001 From: Rajmund Bocsi Date: Fri, 9 Apr 2021 13:56:56 +0200 Subject: [PATCH] no underscores in system names (and cloud names and operators) anymore newly generated certificates some code formatting --- README.md | 6 ++--- .../src/main/resources/application.properties | 6 ++--- .../certificates/consumer_skeleton.p12 | Bin 4365 -> 0 bytes .../certificates/consumerskeleton.p12 | Bin 0 -> 4355 bytes .../configuration/ContainerConfiguration.java | 5 ++-- .../security/ProviderSecurityConfig.java | 1 - .../src/main/resources/application.properties | 6 ++--- .../certificates/provider_skeleton.p12 | Bin 4365 -> 0 bytes .../certificates/providerskeleton.p12 | Bin 0 -> 4355 bytes .../PublisherApplicationInitListener.java | 12 +++------ .../configuration/ContainerConfiguration.java | 8 +++--- .../controller/PublisherController.java | 5 ++-- .../PublisherAccessControlFilter.java | 14 +++++------ .../security/PublisherSecurityConfig.java | 4 +-- .../publisher/service/PublisherService.java | 3 +-- .../src/main/resources/application.properties | 6 ++--- .../certificates/publisher_skeleton.p12 | Bin 6215 -> 0 bytes .../certificates/publisherskeleton.p12 | Bin 0 -> 4389 bytes .../SubscriberApplicationInitListener.java | 23 ++++++------------ .../subscriber/SubscriberUtilities.java | 6 ++--- .../configuration/ContainerConfiguration.java | 6 ++--- .../controller/SubscriberController.java | 12 ++++----- ...criberNotificationAccessControlFilter.java | 10 ++++---- .../security/SubscriberSecurityConfig.java | 6 +---- .../SubscriberTokenSecurityFilter.java | 6 ++--- .../src/main/resources/application.properties | 6 ++--- .../certificates/subscriber_skeleton.p12 | Bin 6217 -> 0 bytes .../certificates/subscriberskeleton.p12 | Bin 0 -> 4399 bytes 28 files changed, 62 insertions(+), 89 deletions(-) delete mode 100644 client-skeleton-consumer/src/main/resources/certificates/consumer_skeleton.p12 create mode 100644 client-skeleton-consumer/src/main/resources/certificates/consumerskeleton.p12 delete mode 100644 client-skeleton-provider/src/main/resources/certificates/provider_skeleton.p12 create mode 100644 client-skeleton-provider/src/main/resources/certificates/providerskeleton.p12 delete mode 100644 client-skeleton-publisher/src/main/resources/certificates/publisher_skeleton.p12 create mode 100644 client-skeleton-publisher/src/main/resources/certificates/publisherskeleton.p12 delete mode 100644 client-skeleton-subscriber/src/main/resources/certificates/subscriber_skeleton.p12 create mode 100644 client-skeleton-subscriber/src/main/resources/certificates/subscriberskeleton.p12 diff --git a/README.md b/README.md index 1755155..0f7d1b7 100644 --- a/README.md +++ b/README.md @@ -34,10 +34,10 @@ Each client skeleton has a default 'ApplicationInitListener' and a default 'Secu ##### (1st) application.properties Location: `src/main/resources` -* * Decide the required security level and set the `server.ssl.enabled` and `token.security.filter.enabled` properties accordingly. -* * If `token.security.filter.enabled` is true, `server.ssl.enabled` also has to be true !!! +* Decide the required security level and set the `server.ssl.enabled` and `token.security.filter.enabled` properties accordingly. +* If `token.security.filter.enabled` is true, `server.ssl.enabled` also has to be true !!! * [Create](https://github.com/arrowhead-f/core-java-spring#certificates) your own client certificate (or for demo purpose use the provided one) and update the further `server.ssl...` properties accordingly. *(**Note** that `server.ssl.key-store-password` and `server.ssl.key-password` must be the same.)* -* Change the `client_system_name` property to your system name. *(**Note** that it should be in line with your certificate common name e.g.: when your certificate common name is `my_awesome_client.my_cloud.my_company.arrowhed.eu`, then your system name is  `my_awesome_client`)* +* Change the `client_system_name` property to your system name. *(**Note** that it should be in line with your certificate common name e.g.: when your certificate common name is `my-awesome-client.my-cloud.my-company.arrowhed.eu`, then your system name is  `my-awesome-client`)* * Adjust the Service Registry Core System location by the `sr_address` and `sr_port` properties. * In case of a provider you have to set its web-server parameters by the `server.address` and `server.port` properties. * In case of a consumer decide whether it should act as a web-server or not. If yes, then set the `spring.main.web-application-type` to 'servlet' and set further server parameters like in the provider case. If not, just leave these properties unchanged. diff --git a/client-skeleton-consumer/src/main/resources/application.properties b/client-skeleton-consumer/src/main/resources/application.properties index 492c239..fa4286d 100644 --- a/client-skeleton-consumer/src/main/resources/application.properties +++ b/client-skeleton-consumer/src/main/resources/application.properties @@ -3,7 +3,7 @@ ############################################ # Name of the client system -client_system_name=CONSUMER_SKELETON +client_system_name=CONSUMERSKELETON # Set the web application type to 'servlet' if your consumer client should act as a web-server # and fill the address and port propetries with valid values [Defaults, when not adjusted: localhost:8080] @@ -25,9 +25,9 @@ sr_port=8443 server.ssl.enabled=true server.ssl.key-store-type=PKCS12 -server.ssl.key-store=classpath:certificates/consumer_skeleton.p12 +server.ssl.key-store=classpath:certificates/consumerskeleton.p12 server.ssl.key-store-password=123456 -server.ssl.key-alias=consumer_skeleton +server.ssl.key-alias=consumerskeleton server.ssl.key-password=123456 server.ssl.client-auth=need server.ssl.trust-store-type=PKCS12 diff --git a/client-skeleton-consumer/src/main/resources/certificates/consumer_skeleton.p12 b/client-skeleton-consumer/src/main/resources/certificates/consumer_skeleton.p12 deleted file mode 100644 index 3d4b8b6bf4914556548d92e3d734d8b6f28b1707..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4365 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 diff --git a/client-skeleton-consumer/src/main/resources/certificates/consumerskeleton.p12 b/client-skeleton-consumer/src/main/resources/certificates/consumerskeleton.p12 new file mode 100644 index 0000000000000000000000000000000000000000..d171004a9fb073ae406e18edb0c23ba30160a9de GIT binary patch literal 4355 zcmY*ZXE+-S+ZAHOrgrUFMI{JTTWvLJrS=}7cx<(zDM69ivqnY59#v|zsI6#gHi+0t z)!wzfzTfqI?|Z#J&UNnVocr8A?jHw?q`x5skbsf&Eo7j(C>_)(4S*a_jHIssBI)1$ zmEVAoq>=w+k@^6Uq@I6ex4&>Aqx!!TH6?(!7zw-pBY~%2Q8LQ^m;WBW4P<(k=Ublx zGp1D{Ol~h>HR%U9u;#=hL_NkpByjMsO;GylTyz0@naIIEo3~`LYZp*r4XVAm8V|Iq zu4wRO)*A_w>4Bh;7Jv+)Ie(9tME>CsJ>rd0XoPc)?XwPU3gr-~i|4A|@hoE*OwvAw z+9t0Pu+r9cfo3y%s}~oR2^Wxmj&pkrvhkNU-nqc0SWLXc^rLc|`k59-G2OjDS%a<5 zdv98E6bjp)C&lm=>~TbIHz&6DA%G!IX*zgw>c8A)RuAuP)*ZvQR?`=f4CE=?GOiWx%dWqU;JaqkrAZS|ojO)8m%g<+yRJbpl`m(JvHS;ap zg+^o0R-1JSwS3RjZ27`V0{aAq--MV|W8)bQ24aG&Wt3T_fmZ(nCiY1kiYK#7!IyaGxr68 zEV>t&IplwB@4YH3k?fQYn>|&2U?%^3C(`hnvFP*CaXX2SxRd3q*uHPp1)r*xYVllk z8xu13{}k*eOEJji#}Hw3RJXe=f+x90>U<*6;2%$UM!2EDawl7jCsO`Ab}24yhh>Ss zxq&xR&&V$#ZQ&PMm#*g?)A9jRQ*np^>g<7&JBZtRha*<6 zTX-~B1Pq=X)Ytg?n88@FB+G>77ixK*cFa*m&{H#t1#9*nE0ES-2esBAjeR-ZaV^ob+u{@0t|JyHX2 z>dNka7VR#jE1t0ScV>9T(YRb)rOWual8uvV&e@475IZc`9L13Un#c@LqRPjrT*(DE z#2p1M_p;?C)>fnr<;<0+I!3Fu#_HL#*UT40I#{*M@C8=6&IF&Mgf%y}_{@#2N)Qu-pPQG+naG#OhbVw3h{&7BmB|0^RvJl8W=+OXOt5NGh7Y5{MW;^p}YL;{g7vb;mkP^i?JW4_dQXwCxVp$(d4VF^P5=Ho92LkG0HYx0VL>~)9)!;^)F z{d7U(77iX!hiGHd;y>|FM~Q>E)=is1wlrrMLBo*j_cCGTZP`8=Nfp=Zvbk2SU`;l+UH5x44 zZ}&EJ6EPsb*nX5c88aqE$9v!2j%Eo6H*F7vH0;b1x~T7rs^2-;c_Dw`6-PBsvHVQ@ z;^2khLh33z5h$0s^Gw*sy0O1vKI?d|Y0OsjYBTAcN{C{LP0ZrlwT-=b?2f zm)}{lFeP+7WQBZy_S?T)M}-Xyo200J*zab8G?vtQuHtL%MQ9k940za>!_-E85vevP zbLjKe7Ng%e+n_p+0BTs=Kh`C^wlSQ+A*xKrbSz$vn*ahj-YLoFkprwgf9*?0`p~yY?QtOE93@Wz zmNP9+um%uLw9bsgqyoXcqo3VHgUN1~O++KzwqUr0t2d`J68Ak?HR|Vp$x)P2hXYE2 zQyX-BuK_x4zc@MJf95r6^3g?-qRpwH()(>1-uru|t)gscua@$RsQ-uF@xl+9cl864 zX7;2r*EwgE0OtYI5QSK+nS-uvxf|G*rPS*~4c`9uJQk!T9RNrK7Wz{fL5 zB&Hun3$iavLnsiANT#Z$CvLmk8I5ry7RM6FSGPTeUhMfC*H+K?`{|wfXf$OZMg$NX z#Y5Fzy?CVNLE8dWp4=YgH&%$De0NmW+lLeMGtF3JJ%A5+YWlV(wmduR#`p0bU*TRb zhJQaf#!e04bATkp?OiPNl@l-r#3*-wM4R@+a`QGmX#MPzWpS=zchYP5)N;*h*eE2C zRi5p&?o@I{JNszi`>Z;7QR~3>xd?kHeeab&{UV*gq5i&4>jlS!YE$;iNl?-bATx{K zHqqIvI0qro>&%kZ=QTs~nStr`B}S-tq>Y>QDa0_IZgQFfu_|Cd@Padh<_joiY%%Ei zc|wbYOzIZZpc$#@`8J_kW*BAtB{o3gy0DmSNCRQycm zo7hrbu-@$LRyVWrZS!5{Q1yg}BJ1kVaO9lsrUZHl4fJwY94?Ohal!+;#Vqb)Dcy6^;!u`xo`R?Nfl6AS? z+cs%8f`JhVIv9H;0MdXHdg=WBtU^&^qRpD z<|t^XBiO%M;KCU6!>0XHY($RYKD^#90j=sjSAZQ9JRWckqf4WW@qF4ock&?)Iihm$ z3NaiLspKWo^!muXH1B5f@>+ffyek2x3F`Ts^JV3 zI_&S=kzDcR#qz}ahxw>BDGha{*ybdB4R%Rv-(b29#0$b>w`x*E2TcNx(E|F-J@_z} za}BDH`k+XFx+T8;VaBq6X4v`wbz2a_kz8-Gz~wU)rbkppKg`vN=8)3a+hy&Y9jD=k zY^Ez~I`>$kZmsi+Q)jJZ(<#qR@p_}xNj~?p^|W~hmj{pjHWg{3jit#Sdu%c;9ON z^uQ!%Lj1Y^LUv3pNqL-}BwFCtLR>eOR2xKeK zTET?orz4`DGPEACsBO|bje&M()%uFhJQBZUOQQn1L>+77i4xkj&$_m2t8vg6xtXk< zm6`Mm3(eiq$s3=y{xcbZwbEmo@;68Nt&{aGE9V(?ore(nk}tBs-Pg9^06~DIkhUe^ za@Q;^;t={+>TL_OG`Z2KXm#Z=G&N!Upi#P+=B2jrG^MSk;DxkPy0P#h%Ze-}Raqg5 z8%tYzQ)?k{#y-^xsnoPDOkK>T|CsL8c##~~mO38Z|tvI!R( z{=w~}taM=L7d1Mobj)LmsAi!^Ikmsw`Ha!5dgS&#pI`NqlyE4Fwr8wa+Q_d~lly*Z z`J{%9Hw6Nyd(hMn@gle{w<3)-<(d>z0tsUL5|8wAA#>0u0znthbqhIBEgh*IGaT)y|mqe4xKHHiM&q}#v>~C_^Mr(zCuQesXRDAPWLM2>1#8fa9G6l4~ z<z`n8m z<1W-~i#x3dt1^8= z%iXR@zFzM#1^xXOwbsk1&xevmqsD}T0hXiy z<p(7UtzoC{<>EIZ@V_praRW4iBbq2K~Ob+^nCYcoJ^-fGs~IC z>w!JBS#AaAQ3`%otI!w*0#*j|fk9-XVzea09Hc}*rZ+UpM%HWw!CHluTezlUK5H(B g36P26Jz*z`dPqc@NK!)I&!;s=TJoHj1b{039|5B<&j0`b literal 0 HcmV?d00001 diff --git a/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/configuration/ContainerConfiguration.java b/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/configuration/ContainerConfiguration.java index 453f323..7cc7e67 100644 --- a/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/configuration/ContainerConfiguration.java +++ b/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/configuration/ContainerConfiguration.java @@ -23,6 +23,7 @@ public class ContainerConfiguration implements WebServerFactoryCustomizer { @@ -30,7 +31,6 @@ public void customize(TomcatServletWebServerFactory factory) { protocol.setMaxKeepAliveRequests(containerConfProperties.getMaxKeepAliveRequests()); - // log.info("####################################################################################"); log.info("#"); log.info("# TomcatCustomizer"); @@ -41,8 +41,7 @@ public void customize(TomcatServletWebServerFactory factory) { log.info("# connection timeout: {} ms", protocol.getConnectionTimeout()); log.info("# max connections: {}", protocol.getMaxConnections()); log.info("#"); - log.info( - "####################################################################################"); + log.info("####################################################################################"); }); } diff --git a/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/security/ProviderSecurityConfig.java b/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/security/ProviderSecurityConfig.java index 08cdca2..0d90221 100644 --- a/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/security/ProviderSecurityConfig.java +++ b/client-skeleton-provider/src/main/java/eu/arrowhead/client/skeleton/provider/security/ProviderSecurityConfig.java @@ -8,7 +8,6 @@ import eu.arrowhead.client.library.config.DefaultSecurityConfig; import eu.arrowhead.client.library.util.ClientCommonConstants; -import eu.arrowhead.common.CommonConstants; @Configuration @EnableWebSecurity diff --git a/client-skeleton-provider/src/main/resources/application.properties b/client-skeleton-provider/src/main/resources/application.properties index 10d38a8..82bf337 100644 --- a/client-skeleton-provider/src/main/resources/application.properties +++ b/client-skeleton-provider/src/main/resources/application.properties @@ -3,7 +3,7 @@ ############################################ # Name of the client system -client_system_name=PROVIDER_SKELETON +client_system_name=PROVIDERSKELETON # Client web-server parameters server.address=127.0.0.1 @@ -28,9 +28,9 @@ server.ssl.enabled=true token.security.filter.enabled=true server.ssl.key-store-type=PKCS12 -server.ssl.key-store=classpath:certificates/provider_skeleton.p12 +server.ssl.key-store=classpath:certificates/providerskeleton.p12 server.ssl.key-store-password=123456 -server.ssl.key-alias=provider_skeleton +server.ssl.key-alias=providerskeleton server.ssl.key-password=123456 server.ssl.client-auth=need server.ssl.trust-store-type=PKCS12 diff --git a/client-skeleton-provider/src/main/resources/certificates/provider_skeleton.p12 b/client-skeleton-provider/src/main/resources/certificates/provider_skeleton.p12 deleted file mode 100644 index 21a062735a9cb0145aff5d4aeeff0138a52d8eb4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4365 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 diff --git a/client-skeleton-provider/src/main/resources/certificates/providerskeleton.p12 b/client-skeleton-provider/src/main/resources/certificates/providerskeleton.p12 new file mode 100644 index 0000000000000000000000000000000000000000..c5b579924f83f5fb044c814107ba501a18623b3e GIT binary patch literal 4355 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 literal 0 HcmV?d00001 diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/PublisherApplicationInitListener.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/PublisherApplicationInitListener.java index 807c971..ec3b239 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/PublisherApplicationInitListener.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/PublisherApplicationInitListener.java @@ -66,7 +66,6 @@ public class PublisherApplicationInitListener extends ApplicationInitListener { //------------------------------------------------------------------------------------------------- @Override protected void customInit(final ContextRefreshedEvent event) { - //Checking the availability of necessary core systems checkCoreSystemReachability(CoreSystem.SERVICE_REGISTRY); @@ -77,13 +76,11 @@ protected void customInit(final ContextRefreshedEvent event) { arrowheadService.updateCoreServiceURIs(CoreSystem.AUTHORIZATION); setTokenSecurityFilter(); - - }else { + } else { logger.info("TokenSecurityFilter in not active"); } - if ( arrowheadService.echoCoreSystem(CoreSystem.EVENT_HANDLER) ) { - + if (arrowheadService.echoCoreSystem(CoreSystem.EVENT_HANDLER)) { arrowheadService.updateCoreServiceURIs(CoreSystem.EVENT_HANDLER); publishInitStartedEvent(); @@ -103,7 +100,6 @@ public void customDestroy() { //------------------------------------------------------------------------------------------------- private void setTokenSecurityFilter() { - final PublicKey authorizationPublicKey = arrowheadService.queryAuthorizationPublicKey(); if (authorizationPublicKey == null) { throw new ArrowheadException("Authorization public key is null"); @@ -113,7 +109,7 @@ private void setTokenSecurityFilter() { try { keystore = KeyStore.getInstance(sslProperties.getKeyStoreType()); keystore.load(sslProperties.getKeyStore().getInputStream(), sslProperties.getKeyStorePassword().toCharArray()); - } catch (KeyStoreException | NoSuchAlgorithmException | CertificateException | IOException ex) { + } catch (final KeyStoreException | NoSuchAlgorithmException | CertificateException | IOException ex) { throw new ArrowheadException(ex.getMessage()); } final PrivateKey publisherPrivateKey = Utilities.getPrivateKey(keystore, sslProperties.getKeyPassword()); @@ -144,4 +140,4 @@ private void publishInitStartedEvent() { arrowheadService.publishToEventHandler(publishRequestDTO); } -} +} \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/configuration/ContainerConfiguration.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/configuration/ContainerConfiguration.java index 11abc83..35fd5a6 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/configuration/ContainerConfiguration.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/configuration/ContainerConfiguration.java @@ -17,12 +17,13 @@ public class ContainerConfiguration implements WebServerFactoryCustomizer { @@ -30,7 +31,6 @@ public void customize(TomcatServletWebServerFactory factory) { protocol.setMaxKeepAliveRequests(containerConfProperties.getMaxKeepAliveRequests()); - // log.info("####################################################################################"); log.info("#"); log.info("# TomcatCustomizer"); @@ -41,9 +41,7 @@ public void customize(TomcatServletWebServerFactory factory) { log.info("# connection timeout: {} ms", protocol.getConnectionTimeout()); log.info("# max connections: {}", protocol.getMaxConnections()); log.info("#"); - log.info( - "####################################################################################"); + log.info("####################################################################################"); }); } - } \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/controller/PublisherController.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/controller/PublisherController.java index 006fb9f..5593fb6 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/controller/PublisherController.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/controller/PublisherController.java @@ -33,12 +33,11 @@ public class PublisherController { public String echoService() { logger.debug("echoService started..."); - publisherService.publish(PresetEventType.REQUEST_RECEIVED, Map.of( EventTypeConstants.EVENT_TYPE_REQUEST_RECEIVED_METADATA_REQUEST_TYPE, HttpMethod.GET.name() ), CommonConstants.ECHO_URI); + publisherService.publish(PresetEventType.REQUEST_RECEIVED, Map.of(EventTypeConstants.EVENT_TYPE_REQUEST_RECEIVED_METADATA_REQUEST_TYPE, HttpMethod.GET.name()), CommonConstants.ECHO_URI); return "Got it!"; } //------------------------------------------------------------------------------------------------- //TODO: implement here your provider related REST end points - -} +} \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherAccessControlFilter.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherAccessControlFilter.java index c6aaf88..7f08659 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherAccessControlFilter.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherAccessControlFilter.java @@ -13,10 +13,10 @@ @ConditionalOnExpression(CommonConstants.$SERVER_SSL_ENABLED_WD + " and !" + ClientCommonConstants.$TOKEN_SECURITY_FILTER_ENABLED_WD) public class PublisherAccessControlFilter extends AccessControlFilter { -@Override -protected void checkClientAuthorized(final String clientCN, final String method, final String requestTarget, final String requestJSON, final Map queryParams) { - super.checkClientAuthorized(clientCN, method, requestTarget, requestJSON, queryParams); - - //TODO: implement here your custom access filter if any further -} -} + @Override + protected void checkClientAuthorized(final String clientCN, final String method, final String requestTarget, final String requestJSON, final Map queryParams) { + super.checkClientAuthorized(clientCN, method, requestTarget, requestJSON, queryParams); + + //TODO: implement here your custom access filter if any further + } +} \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherSecurityConfig.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherSecurityConfig.java index 37fb9ca..00f8559 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherSecurityConfig.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/security/PublisherSecurityConfig.java @@ -30,7 +30,7 @@ protected void configure(HttpSecurity http) throws Exception { super.configure(http); if (tokenSecurityFilterEnabled) { tokenSecurityFilter = new PublisherTokenSecurityFilter(); - http.addFilterAfter(tokenSecurityFilter, SecurityContextHolderAwareRequestFilter.class); + http.addFilterAfter(tokenSecurityFilter, SecurityContextHolderAwareRequestFilter.class); } } @@ -38,4 +38,4 @@ protected void configure(HttpSecurity http) throws Exception { public PublisherTokenSecurityFilter getTokenSecurityFilter() { return tokenSecurityFilter; } -} +} \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/service/PublisherService.java b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/service/PublisherService.java index a23cfe3..20cd646 100644 --- a/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/service/PublisherService.java +++ b/client-skeleton-publisher/src/main/java/eu/arrowhead/client/skeleton/publisher/service/PublisherService.java @@ -47,7 +47,6 @@ public class PublisherService { //------------------------------------------------------------------------------------------------- //Sample implementation of event publishing of preset event types public void publish(final PresetEventType eventType, final Map metadata, final String payload) { - final EventPublishRequestDTO request = getPublishRequest(eventType, metadata, payload); arrowheadService.publishToEventHandler(request); } @@ -78,4 +77,4 @@ private SystemRequestDTO getSource() { return source; } -} +} \ No newline at end of file diff --git a/client-skeleton-publisher/src/main/resources/application.properties b/client-skeleton-publisher/src/main/resources/application.properties index d794cb2..ddbdfd8 100644 --- a/client-skeleton-publisher/src/main/resources/application.properties +++ b/client-skeleton-publisher/src/main/resources/application.properties @@ -3,7 +3,7 @@ ############################################ # Name of the client system -client_system_name=PUBLISHER_SKELETON +client_system_name=PUBLISHERSKELETON # Client web-server parameters server.address=127.0.0.1 @@ -25,9 +25,9 @@ server.ssl.enabled=true token.security.filter.enabled=false server.ssl.key-store-type=PKCS12 -server.ssl.key-store=classpath:certificates/publisher_skeleton.p12 +server.ssl.key-store=classpath:certificates/publisherskeleton.p12 server.ssl.key-store-password=123456 -server.ssl.key-alias=publisher_skeleton +server.ssl.key-alias=publisherskeleton server.ssl.key-password=123456 server.ssl.client-auth=need server.ssl.trust-store-type=PKCS12 diff --git a/client-skeleton-publisher/src/main/resources/certificates/publisher_skeleton.p12 b/client-skeleton-publisher/src/main/resources/certificates/publisher_skeleton.p12 deleted file mode 100644 index 3a5840d30bc5101ef1966e6325aafabf06e0bf6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6215 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 diff --git a/client-skeleton-publisher/src/main/resources/certificates/publisherskeleton.p12 b/client-skeleton-publisher/src/main/resources/certificates/publisherskeleton.p12 new file mode 100644 index 0000000000000000000000000000000000000000..c7c0a7a4b7444e2f67bad30129aee1b064bc539f GIT binary patch literal 4389 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 JF)^YG{sngLE(ZVr literal 0 HcmV?d00001 diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberApplicationInitListener.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberApplicationInitListener.java index 0f273cc..7b097f0 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberApplicationInitListener.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberApplicationInitListener.java @@ -66,7 +66,6 @@ public class SubscriberApplicationInitListener extends ApplicationInitListener { //------------------------------------------------------------------------------------------------- @Override protected void customInit(final ContextRefreshedEvent event) { - //Checking the availability of necessary core systems checkCoreSystemReachability(CoreSystem.SERVICE_REGISTRY); @@ -74,7 +73,6 @@ protected void customInit(final ContextRefreshedEvent event) { arrowheadService.updateCoreServiceURIs(CoreSystem.ORCHESTRATOR); if (sslEnabled) { - if (tokenSecurityFilterEnabled) { checkCoreSystemReachability(CoreSystem.AUTHORIZATION); @@ -82,17 +80,14 @@ protected void customInit(final ContextRefreshedEvent event) { arrowheadService.updateCoreServiceURIs(CoreSystem.AUTHORIZATION); setTokenSecurityFilter(); - } else { logger.info("TokenSecurityFilter in not active"); } setNotificationFilter(); - } - - if ( arrowheadService.echoCoreSystem(CoreSystem.EVENT_HANDLER)) { + if (arrowheadService.echoCoreSystem(CoreSystem.EVENT_HANDLER)) { arrowheadService.updateCoreServiceURIs(CoreSystem.EVENT_HANDLER); subscribeToPresetEvents(); } @@ -104,9 +99,8 @@ protected void customInit(final ContextRefreshedEvent event) { //------------------------------------------------------------------------------------------------- @Override public void customDestroy() { - final Map eventTypeMap = configEventProperites.getEventTypeURIMap(); - if( eventTypeMap == null) { + if (eventTypeMap == null) { logger.info("No preset events to unsubscribe."); } else { for (final String eventType : eventTypeMap.keySet()) { @@ -120,7 +114,6 @@ public void customDestroy() { //------------------------------------------------------------------------------------------------- private void setTokenSecurityFilter() { - final PublicKey authorizationPublicKey = arrowheadService.queryAuthorizationPublicKey(); if (authorizationPublicKey == null) { throw new ArrowheadException("Authorization public key is null"); @@ -130,7 +123,7 @@ private void setTokenSecurityFilter() { try { keystore = KeyStore.getInstance(sslProperties.getKeyStoreType()); keystore.load(sslProperties.getKeyStore().getInputStream(), sslProperties.getKeyStorePassword().toCharArray()); - } catch (KeyStoreException | NoSuchAlgorithmException | CertificateException | IOException ex) { + } catch (final KeyStoreException | NoSuchAlgorithmException | CertificateException | IOException ex) { throw new ArrowheadException(ex.getMessage()); } final PrivateKey subscriberPrivateKey = Utilities.getPrivateKey(keystore, sslProperties.getKeyPassword()); @@ -140,15 +133,13 @@ private void setTokenSecurityFilter() { subscriberSecurityConfig.getTokenSecurityFilter().setEventTypeMap( eventTypeMap ); subscriberSecurityConfig.getTokenSecurityFilter().setAuthorizationPublicKey(authorizationPublicKey); subscriberSecurityConfig.getTokenSecurityFilter().setMyPrivateKey(subscriberPrivateKey); - } //------------------------------------------------------------------------------------------------- private void subscribeToPresetEvents() { - final Map eventTypeMap = configEventProperites.getEventTypeURIMap(); - if(eventTypeMap == null) { + if (eventTypeMap == null) { logger.info("No preset events to subscribe."); } else { final SystemRequestDTO subscriber = new SystemRequestDTO(); @@ -168,8 +159,8 @@ private void subscribeToPresetEvents() { try { arrowheadService.subscribeToEventHandler(SubscriberUtilities.createSubscriptionRequestDTO(eventType, subscriber, eventTypeMap.get(eventType))); - } catch ( final InvalidParameterException ex) { - if( ex.getMessage().contains("Subscription violates uniqueConstraint rules")) { + } catch (final InvalidParameterException ex) { + if (ex.getMessage().contains("Subscription violates uniqueConstraint rules")) { logger.debug("Subscription is already in DB"); } } catch (final Exception ex) { @@ -188,4 +179,4 @@ private void setNotificationFilter() { subscriberSecurityConfig.getNotificationFilter().setEventTypeMap( eventTypeMap ); subscriberSecurityConfig.getNotificationFilter().setServerCN(arrowheadService.getServerCN()); } -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberUtilities.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberUtilities.java index ead7adb..ebe75e1 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberUtilities.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/SubscriberUtilities.java @@ -11,7 +11,6 @@ public class SubscriberUtilities { //------------------------------------------------------------------------------------------------- public static SubscriptionRequestDTO createSubscriptionRequestDTO(final String eventType, final SystemRequestDTO subscriber, final String notificationUri) { - final SubscriptionRequestDTO subscription = new SubscriptionRequestDTO(eventType.toUpperCase(), subscriber, null, @@ -19,7 +18,8 @@ public static SubscriptionRequestDTO createSubscriptionRequestDTO(final String e false, null, null, - null); + null); + return subscription; } -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/configuration/ContainerConfiguration.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/configuration/ContainerConfiguration.java index 4a39cdb..662ecfb 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/configuration/ContainerConfiguration.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/configuration/ContainerConfiguration.java @@ -23,6 +23,7 @@ public class ContainerConfiguration implements WebServerFactoryCustomizer { @@ -30,7 +31,6 @@ public void customize(TomcatServletWebServerFactory factory) { protocol.setMaxKeepAliveRequests(containerConfProperties.getMaxKeepAliveRequests()); - // log.info("####################################################################################"); log.info("#"); log.info("# TomcatCustomizer"); @@ -41,9 +41,7 @@ public void customize(TomcatServletWebServerFactory factory) { log.info("# connection timeout: {} ms", protocol.getConnectionTimeout()); log.info("# max connections: {}", protocol.getMaxConnections()); log.info("#"); - log.info( - "####################################################################################"); + log.info("####################################################################################"); }); } - } \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/controller/SubscriberController.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/controller/SubscriberController.java index c7e14dd..bfc01de 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/controller/SubscriberController.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/controller/SubscriberController.java @@ -36,7 +36,7 @@ public String echoService() { public void receivePublisherReceivedRequestEvent(@RequestBody final EventDTO event ) { logger.debug("receivePublisherReceivedRequestEvent started..."); - if( event.getEventType() == null) { + if (event.getEventType() == null) { logger.debug("EventType is null."); } @@ -45,10 +45,10 @@ public void receivePublisherReceivedRequestEvent(@RequestBody final EventDTO eve //------------------------------------------------------------------------------------------------- @PostMapping(path = SubscriberConstants.START_INIT_NOTIFICATION_URI) - public void receivePublsisherStartedInitEvent(@RequestBody final EventDTO event) { + public void receivePublisherStartedInitEvent(@RequestBody final EventDTO event) { logger.debug("receivePublsisherStartedInitEvent started... "); - if( event.getEventType() == null) { + if (event.getEventType() == null) { logger.debug("EventType is null."); } @@ -57,10 +57,10 @@ public void receivePublsisherStartedInitEvent(@RequestBody final EventDTO event) //------------------------------------------------------------------------------------------------- @PostMapping(path = SubscriberConstants.START_RUN_NOTIFICATION_URI) - public void receivePublsisherStartedRunEvent(@RequestBody final EventDTO event ) { + public void receivePublisherStartedRunEvent(@RequestBody final EventDTO event ) { logger.debug("receivePublsisherStartedRunEvent started... "); - if( event.getEventType() == null) { + if (event.getEventType() == null) { logger.debug("EventType is null."); } @@ -69,4 +69,4 @@ public void receivePublsisherStartedRunEvent(@RequestBody final EventDTO event ) //------------------------------------------------------------------------------------------------- //TODO: implement here additional subscriber related REST end points -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberNotificationAccessControlFilter.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberNotificationAccessControlFilter.java index ab21e18..e4b1a7a 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberNotificationAccessControlFilter.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberNotificationAccessControlFilter.java @@ -39,9 +39,6 @@ public class SubscriberNotificationAccessControlFilter extends ArrowheadFilter { public void setEventTypeMap( final Map eventTypeMap) { this.eventTypeMap = eventTypeMap;} public void setServerCN( final String serverCN) { this.serverCN = serverCN; } - //================================================================================================= - // assistant methods - //------------------------------------------------------------------------------------------------- @Override public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain) throws IOException, ServletException { @@ -53,7 +50,7 @@ public void doFilter(final ServletRequest request, final ServletResponse respons if (eventTypeMap != null) { for (final String notificationUri : eventTypeMap.values()) { - if (requestTarget.endsWith( SubscriberDefaults.DEFAULT_EVENT_NOTIFICATION_BASE_URI + "/" + notificationUri )) { + if (requestTarget.endsWith(SubscriberDefaults.DEFAULT_EVENT_NOTIFICATION_BASE_URI + "/" + notificationUri)) { checkIfClientIsAnAllowedCoreSystem(getCertificateCNFromRequest(httpRequest), getServerCloudCN(serverCN), allowedCoreSystemsForSendingNotification, requestTarget); } } @@ -65,6 +62,9 @@ public void doFilter(final ServletRequest request, final ServletResponse respons chain.doFilter(request, response); } + //================================================================================================= + // assistant methods + //------------------------------------------------------------------------------------------------- @Nullable private String getCertificateCNFromRequest(final HttpServletRequest request) { @@ -108,4 +108,4 @@ protected String getServerCloudCN( final String serverCN ) { return serverFields[1]; } -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberSecurityConfig.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberSecurityConfig.java index 41f0013..8f13f9f 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberSecurityConfig.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberSecurityConfig.java @@ -35,16 +35,13 @@ protected void configure( final HttpSecurity http) throws Exception { super.configure(http); if (sslEnabled) { - notificationFilter = new SubscriberNotificationAccessControlFilter(); http.addFilterBefore( notificationFilter , SecurityContextHolderAwareRequestFilter.class ); - if (tokenSecurityFilterEnabled) { tokenSecurityFilter = new SubscriberTokenSecurityFilter(); http.addFilterAfter(tokenSecurityFilter, SecurityContextHolderAwareRequestFilter.class); } - } } @@ -57,5 +54,4 @@ public SubscriberTokenSecurityFilter getTokenSecurityFilter() { public SubscriberNotificationAccessControlFilter getNotificationFilter() { return notificationFilter; } - -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberTokenSecurityFilter.java b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberTokenSecurityFilter.java index 89f590e..ea1d46a 100644 --- a/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberTokenSecurityFilter.java +++ b/client-skeleton-subscriber/src/main/java/eu/arrowhead/client/skeleton/subscriber/security/SubscriberTokenSecurityFilter.java @@ -72,7 +72,7 @@ public void doFilter(final ServletRequest request, final ServletResponse respons if (eventTypeMap != null) { for (final String notificationUri : eventTypeMap.values()) { - if ( requestTarget.endsWith(SubscriberDefaults.DEFAULT_EVENT_NOTIFICATION_BASE_URI + "/" + notificationUri)) { + if (requestTarget.endsWith(SubscriberDefaults.DEFAULT_EVENT_NOTIFICATION_BASE_URI + "/" + notificationUri)) { chain.doFilter(request, response); return; } @@ -92,7 +92,6 @@ public void doFilter(final ServletRequest request, final ServletResponse respons } checkToken(clientCN, token, requestTarget); - } catch (final ArrowheadException ex) { handleException(ex, response); } @@ -112,5 +111,4 @@ private String getCertificateCNFromRequest(final HttpServletRequest request) { return null; } - -} +} \ No newline at end of file diff --git a/client-skeleton-subscriber/src/main/resources/application.properties b/client-skeleton-subscriber/src/main/resources/application.properties index 792e5ac..9aa1587 100644 --- a/client-skeleton-subscriber/src/main/resources/application.properties +++ b/client-skeleton-subscriber/src/main/resources/application.properties @@ -3,7 +3,7 @@ ############################################ # Name of the client system -client_system_name=SUBSCRIBER_SKELETON +client_system_name=SUBSCRIBERSKELETON # Client web-server parameters server.address=127.0.0.1 @@ -38,9 +38,9 @@ server.ssl.enabled=true token.security.filter.enabled=true server.ssl.key-store-type=PKCS12 -server.ssl.key-store=classpath:certificates/subscriber_skeleton.p12 +server.ssl.key-store=classpath:certificates/subscriberskeleton.p12 server.ssl.key-store-password=123456 -server.ssl.key-alias=subscriber_skeleton +server.ssl.key-alias=subscriberskeleton server.ssl.key-password=123456 server.ssl.client-auth=need server.ssl.trust-store-type=PKCS12 diff --git a/client-skeleton-subscriber/src/main/resources/certificates/subscriber_skeleton.p12 b/client-skeleton-subscriber/src/main/resources/certificates/subscriber_skeleton.p12 deleted file mode 100644 index f5f968196de38c3cf6625f1fb40a4621a73ef944..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6217 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 NE#Dvmk&z+`{sX0Y=!yUU diff --git a/client-skeleton-subscriber/src/main/resources/certificates/subscriberskeleton.p12 b/client-skeleton-subscriber/src/main/resources/certificates/subscriberskeleton.p12 new file mode 100644 index 0000000000000000000000000000000000000000..24084004c8eebdf71a3dce248d68762d2a5fdada GIT binary patch literal 4399 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 V=35n|9ud(8fD)3An1m=A_b(7jM9KgF literal 0 HcmV?d00001