From d7df4d37c394ff8058c4b7d2894d76893ab0c9ff Mon Sep 17 00:00:00 2001 From: kjaniak Date: Thu, 14 Feb 2019 14:51:56 +0100 Subject: [PATCH] Add test for ssl version of connection in CT Issue-ID: DCAEGEN2-1223 Change-Id: I0828a9637376dd6176ba07cf6f35f382d1e41070 Signed-off-by: kjaniak --- .../hvves/client/producer/ct/DummyCollector.java | 24 ++++++++--- .../hvves/client/producer/ct/HvVesProducerIT.java | 30 ++++++++++---- .../client/producer/ct/SystemUnderTestWrapper.java | 44 +++++++++++++++------ .../producer/ct/src/test/resources/client.p12 | Bin 5183 -> 5175 bytes .../producer/ct/src/test/resources/server.p12 | Bin 0 -> 5175 bytes .../producer/ct/src/test/resources/server.pass | 1 + .../producer/ct/src/test/resources/trust.p12 | Bin 1514 -> 2303 bytes 7 files changed, 74 insertions(+), 25 deletions(-) create mode 100644 services/hv-ves-client/producer/ct/src/test/resources/server.p12 create mode 100644 services/hv-ves-client/producer/ct/src/test/resources/server.pass diff --git a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/DummyCollector.java b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/DummyCollector.java index 46aeacc6..70e9cdff 100644 --- a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/DummyCollector.java +++ b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/DummyCollector.java @@ -20,12 +20,16 @@ package org.onap.dcaegen2.services.sdk.services.hvves.client.producer.ct; import io.netty.buffer.ByteBuf; + import java.net.InetSocketAddress; import java.time.Duration; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Optional; import java.util.stream.IntStream; + +import io.netty.handler.ssl.SslContext; import org.reactivestreams.Publisher; import reactor.core.publisher.Flux; import reactor.core.publisher.ReplayProcessor; @@ -39,6 +43,7 @@ import reactor.util.function.Tuple2; * @author Piotr Jaszczyk */ public class DummyCollector { + private Optional sslContext; private final List receivedData = Collections.synchronizedList(new ArrayList<>()); private DisposableServer server; @@ -48,13 +53,20 @@ public class DummyCollector { .map(Tuple2::getT1) .share(); + DummyCollector(Optional sslContext) { + this.sslContext = sslContext; + } + public InetSocketAddress start() { - server = TcpServer.create() - .host("localhost") - .port(6666) - .wiretap(true) - .handle(this::handleConnection) - .bindNow(); + TcpServer tcpServer = + sslContext.map(context -> TcpServer.create() + .secure(ssl -> ssl.sslContext(context))) + .orElseGet(TcpServer::create) + .host("localhost") + .port(6666) + .wiretap(true) + .handle(this::handleConnection); + server = tcpServer.bindNow(); return server.address(); } diff --git a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/HvVesProducerIT.java b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/HvVesProducerIT.java index 247cfad5..34175577 100644 --- a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/HvVesProducerIT.java +++ b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/HvVesProducerIT.java @@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat; import io.netty.buffer.ByteBuf; import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.onap.dcaegen2.services.sdk.services.hvves.client.producer.api.options.PayloadType; import org.onap.ves.MeasDataCollectionOuterClass; @@ -31,6 +30,8 @@ import org.onap.ves.VesEventOuterClass.CommonEventHeader; import org.onap.ves.VesEventOuterClass.VesEvent; import reactor.core.publisher.Flux; +import java.time.Duration; + /** * @author Piotr Jaszczyk */ @@ -42,12 +43,7 @@ class HvVesProducerIT { private static final int PERIOD = 1000; private static final String OBJECT_INSTANCE_ID = "DH-1"; - private final SystemUnderTestWrapper sut = new SystemUnderTestWrapper(); - - @BeforeEach - void setUp() { - sut.start(); - } + private final SystemUnderTestWrapper sut = new SystemUnderTestWrapper(Duration.ofSeconds(10)); @AfterEach void tearDown() { @@ -55,19 +51,37 @@ class HvVesProducerIT { } @Test - void singleMessageTest() throws Exception { + void singleMessageTest_withUnsecureConnection() throws Exception { // given + final VesEvent sampleEvent = createSimpleVesEvent(); + final Flux input = Flux.just(sampleEvent); + + // when + sut.start(); + final ByteBuf receivedData = sut.blockingSend(input); + // then + WireProtocolDecoder decoded = WireProtocolDecoder.decode(receivedData); + assertThat(decoded.type).isEqualTo(PayloadType.PROTOBUF.getPayloadTypeBytes().getShort()); + assertThat(decoded.event).isEqualTo(sampleEvent); + + } + + @Test + void singleMessageTest_withSecureConnection() throws Exception { + // given final VesEvent sampleEvent = createSimpleVesEvent(); final Flux input = Flux.just(sampleEvent); // when + sut.startSecure(); final ByteBuf receivedData = sut.blockingSend(input); // then WireProtocolDecoder decoded = WireProtocolDecoder.decode(receivedData); assertThat(decoded.type).isEqualTo(PayloadType.PROTOBUF.getPayloadTypeBytes().getShort()); assertThat(decoded.event).isEqualTo(sampleEvent); + } private VesEvent createSimpleVesEvent() { diff --git a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/SystemUnderTestWrapper.java b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/SystemUnderTestWrapper.java index ec16e9e4..45511d7f 100644 --- a/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/SystemUnderTestWrapper.java +++ b/services/hv-ves-client/producer/ct/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/ct/SystemUnderTestWrapper.java @@ -20,6 +20,7 @@ package org.onap.dcaegen2.services.sdk.services.hvves.client.producer.ct; import io.netty.buffer.ByteBuf; +import io.netty.handler.ssl.SslContext; import io.vavr.collection.HashSet; import io.vavr.control.Try; @@ -27,10 +28,9 @@ import java.net.InetSocketAddress; import java.nio.file.Path; import java.nio.file.Paths; import java.time.Duration; +import java.util.Optional; -import org.onap.dcaegen2.services.sdk.security.ssl.ImmutableSecurityKeys; -import org.onap.dcaegen2.services.sdk.security.ssl.ImmutableSecurityKeysStore; -import org.onap.dcaegen2.services.sdk.security.ssl.Passwords; +import org.onap.dcaegen2.services.sdk.security.ssl.*; import org.onap.dcaegen2.services.sdk.services.hvves.client.producer.api.HvVesProducer; import org.onap.dcaegen2.services.sdk.services.hvves.client.producer.api.HvVesProducerFactory; import org.onap.dcaegen2.services.sdk.services.hvves.client.producer.api.options.ImmutableProducerOptions; @@ -46,9 +46,17 @@ import reactor.core.publisher.Flux; public class SystemUnderTestWrapper { private static final Duration DEFAULT_TIMEOUT = Duration.ofSeconds(5); - private final DummyCollector collector = new DummyCollector(); + private static final String TRUST_CERT_PATH = "/trust.p12"; + private static final String TRUST_PASSWORD_PATH = "/trust.pass"; + private static final String CLIENT_CERT_PATH = "/client.p12"; + private static final String CLIENT_PASSWORD_PATH = "/client.pass"; + private static final String SERVER_CERT_PATH = "/server.p12"; + private static final String SERVER_PASSWORD_PATH = "/server.pass"; + + private DummyCollector collector; private HvVesProducer cut; private final Duration timeout; + private final SslFactory sslFactory = new SslFactory(); public SystemUnderTestWrapper(Duration timeout) { this.timeout = timeout; @@ -59,16 +67,19 @@ public class SystemUnderTestWrapper { } public void startSecure() { - start(ImmutableProducerOptions.builder() - .securityKeys(ImmutableSecurityKeys.builder() - .keyStore(ImmutableSecurityKeysStore.of(resource("/client.p12").get())) - .keyStorePassword(Passwords.fromResource("/client.pass")) - .trustStore(ImmutableSecurityKeysStore.of(resource("/trust.p12").get())) - .trustStorePassword(Passwords.fromResource("/trust.pass")) - .build())); + collector = createCollectorWithEnabledSSL(); + + final SecurityKeys producerSecurityKeys = ImmutableSecurityKeys.builder() + .keyStore(ImmutableSecurityKeysStore.of(resource(CLIENT_CERT_PATH).get())) + .keyStorePassword(Passwords.fromResource(CLIENT_PASSWORD_PATH)) + .trustStore(ImmutableSecurityKeysStore.of(resource(TRUST_CERT_PATH).get())) + .trustStorePassword(Passwords.fromResource(TRUST_PASSWORD_PATH)) + .build(); + start(ImmutableProducerOptions.builder().securityKeys(producerSecurityKeys)); } public void start() { + collector = new DummyCollector(Optional.empty()); start(createDefaultOptions()); } @@ -90,6 +101,17 @@ public class SystemUnderTestWrapper { return collector.dataFromFirstClient(); } + private DummyCollector createCollectorWithEnabledSSL() { + final SecurityKeys collectorSecurityKeys = ImmutableSecurityKeys.builder() + .keyStore(ImmutableSecurityKeysStore.of(resource(SERVER_CERT_PATH).get())) + .keyStorePassword(Passwords.fromResource(SERVER_PASSWORD_PATH)) + .trustStore(ImmutableSecurityKeysStore.of(resource(TRUST_CERT_PATH).get())) + .trustStorePassword(Passwords.fromResource(TRUST_PASSWORD_PATH)) + .build(); + final SslContext collectorSslContext = sslFactory.createSecureServerContext(collectorSecurityKeys); + return new DummyCollector(Optional.of(collectorSslContext)); + } + private Builder createDefaultOptions() { return ImmutableProducerOptions.builder(); } diff --git a/services/hv-ves-client/producer/ct/src/test/resources/client.p12 b/services/hv-ves-client/producer/ct/src/test/resources/client.p12 index 68a0fb2584bd422b48f1dc30b43ca688599a2288..26b79d77fae7bd728f37a222b38f59ea25a039ab 100644 GIT binary patch delta 5094 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 TcCgJ6wqp3|cSIyWXx{$-HoVbw literal 0 HcmV?d00001 diff --git a/services/hv-ves-client/producer/ct/src/test/resources/server.pass b/services/hv-ves-client/producer/ct/src/test/resources/server.pass new file mode 100644 index 00000000..e69c2de9 --- /dev/null +++ b/services/hv-ves-client/producer/ct/src/test/resources/server.pass @@ -0,0 +1 @@ +onaponap \ No newline at end of file diff --git a/services/hv-ves-client/producer/ct/src/test/resources/trust.p12 b/services/hv-ves-client/producer/ct/src/test/resources/trust.p12 index ed7f62d450d7763ee4d15ab21f41c79fd30a82f7..1ca2f651090504a31cb2eac2e4f56b293e9eb09f 100644 GIT binary patch literal 2303 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 RFRS$hKUv`phJfM={{pnIH5&i` literal 1514 zcmV@2`Yw2hW8Bt2LUiC1_~;MNQUT z6#W2Rssm{P@{`-;?f(670s{cUP=JC3Fyo{0s`(DpNT3vz4+$jMF}k~9^}vBc9{GK` zeR;YZVD`c)DX$L(*CIngBDL0^~FthHBSE5+;5rr76MB$lqug z*&Gxng!m2}GaDYKMay%%fvRQWY#>Q*5cR(bT9X-w$( znrP#+NaKuu0dN6;D;@G;^$yxuWOTcsy^$~*)y#C1PD9^0B|eE53K3FGWJ(4fcAnV~ z`Jl7RlLj;E&5+EnI=8&@XrUG7*EZXUbtA1$kmZRtEB+C9rE<;-$aAGOe8=@q6EK#% zX&mk-{*t9(}{i?c^>=fy|KC3W|GF2wGFZ`s_`8%G6MbLOKv z6}BTnXA8#(P;i+C3iMqR?d48raD=V>%r@1{V#^BiSA<9aDS$UoU!X8Z#$sT785X!j z*!nV62+qmZ(+#YoRIXyOD&zL@6;MMMP2aN^LXE}satd;nec4zSU0U89m&^A=D#AaYva(N)mzhy{W4 z9%}(bdXD15F38o-CSmhO+K|8MA$}$q8>GAJmJ^W2d3W7oo*APz83$4MZ5+sRd3!mU zH!VsERjsLD=IQ)~Nz71zb7z4D8;_PI)@mN8-?;?gp)sfmqbPLGIB_#q=S>4-lWvGh z8-ex((uw->wU(*jN6m}A56pR<`5>Vd<+dzTc$nLrV*rQn8FKD5Y!sHCyA;`dpjVQi zIH30VIp8ZcrE^ZA#Cw@Bd_vkQL#)=G$&^uD2bbmru2fad)lowhui`@cR$S1;{bnP? zi2INUg$h6w;~J!3aq^<-WI9XAdnGNHWlCm8Y^)RIG)QSJTC2f@7Q~q{2Gej(&8Y3S zN8=ccgbRh=t+$+vgo`95M9q_1nHcIW*oLn*W0ZOMHL!IT$hKPG8ONUnthn? zZAYgAQUHx3Ey;(2-k(oB`?7^a1=omyA(7Q@+pm24WG4J@!#p~Gv7Op0Zss`aP7I9l zp``-ZMl5F5@8O4p#+U zH26&%pjz6Eu-dPqM_@~PPqkVj=V?vI6TWa zhC5YnB3^YTNrc-&G