From 404050280f3e2c1384fe42345359239b1205bb06 Mon Sep 17 00:00:00 2001 From: Jan Zickermann <jan.zickermann@dataport.de> Date: Thu, 5 Dec 2024 14:12:47 +0100 Subject: [PATCH 1/2] KOP-2893 Add client and server keystore generation script Generate new client and server certificates Generate new truststore --- build/assembly.xml | 4 +- build/resources/application-local.yml | 4 +- doc/bedienungsanleitung.adoc | 3 +- soapui/XTA-soapui-project.xml | 6 +- src/main/resources/application.yml | 4 +- src/main/resources/store/.gitignore | 4 ++ src/main/resources/store/ca-openssl.cnf | 23 ++++++++ src/main/resources/store/client-openssl.cnf | 20 +++++++ src/main/resources/store/generate.sh | 52 ++++++++++++++++++ .../resources/store/jane_doe_xta_tester.p12 | Bin 2839 -> 0 bytes .../resources/store/john_smith_xta_tester.p12 | Bin 2851 -> 0 bytes src/main/resources/store/server-openssl.cnf | 25 +++++++++ src/main/resources/store/show_certs.sh | 19 +++++++ .../xta-test-client-jane-doe_keystore.p12 | Bin 0 -> 4236 bytes .../xta-test-client-john-smith_keystore.p12 | Bin 0 -> 4240 bytes .../store/xta-test-server_keystore.p12 | Bin 2859 -> 4202 bytes .../store/xta-test-server_truststore.jks | Bin 1136 -> 0 bytes .../resources/store/xta-test_truststore.jks | Bin 0 -> 1083 bytes src/test/resources/application.yml | 4 +- 19 files changed, 155 insertions(+), 13 deletions(-) create mode 100644 src/main/resources/store/.gitignore create mode 100644 src/main/resources/store/ca-openssl.cnf create mode 100644 src/main/resources/store/client-openssl.cnf create mode 100755 src/main/resources/store/generate.sh delete mode 100644 src/main/resources/store/jane_doe_xta_tester.p12 delete mode 100644 src/main/resources/store/john_smith_xta_tester.p12 create mode 100644 src/main/resources/store/server-openssl.cnf create mode 100755 src/main/resources/store/show_certs.sh create mode 100644 src/main/resources/store/xta-test-client-jane-doe_keystore.p12 create mode 100644 src/main/resources/store/xta-test-client-john-smith_keystore.p12 delete mode 100644 src/main/resources/store/xta-test-server_truststore.jks create mode 100644 src/main/resources/store/xta-test_truststore.jks diff --git a/build/assembly.xml b/build/assembly.xml index 33259bf..79c7b94 100644 --- a/build/assembly.xml +++ b/build/assembly.xml @@ -29,9 +29,9 @@ <directory>${project.basedir}/src/main/resources/store</directory> <outputDirectory>/</outputDirectory> <includes> - <include>john_smith_xta_tester.p12</include> + <include>xta-test-client-john-smith_keystore.p12</include> <include>xta-test-server_keystore.p12</include> - <include>xta-test-server_truststore.jks</include> + <include>xta-test_truststore.jks</include> </includes> </fileSet> </fileSets> diff --git a/build/resources/application-local.yml b/build/resources/application-local.yml index 56e45ef..49cc6e1 100644 --- a/build/resources/application-local.yml +++ b/build/resources/application-local.yml @@ -15,10 +15,10 @@ server: key-store-password: password key-store-type: pkcs12 # Alias im KeyStore - key-alias: xta-test-application + key-alias: xta-test-server key-password: password # enthaelt alle vertrauenswuerdigen Zertifikate oder Oberzertifikate - trust-store: ./xta-test-server_truststore.jks + trust-store: ./xta-test_truststore.jks trust-store-password: password trust-store-type: JKS client-auth: want diff --git a/doc/bedienungsanleitung.adoc b/doc/bedienungsanleitung.adoc index aef7299..5e1a1f0 100644 --- a/doc/bedienungsanleitung.adoc +++ b/doc/bedienungsanleitung.adoc @@ -214,8 +214,7 @@ Die WSDL-Datei ist immer unter der Adresse des Services mit dem Zusatz ?wsdl auf Für die Kommunikation mittels HTTPs ist ein Client-Zertifikat notwendig, um den Client gegenüber der Testumgebung zu authentifizieren. Innerhalb der ZIP-Dateien der Testumgebung sind bereits mehrere Zertifikate und Keystores hinterlegt, die für die Kommunikation mit der Testumgebung genutzt werden können: -* john_smith_xta_tester.p12 - Dieser Keystore beinhaltet ein Client-Zertifikat, das für die Kommunikation mit der Testumgebung verwendet werden kann. Sofern die Testumgebung in der Standardkonfiguration gestartet wurde, stuft die Umgebung das Zertifikat als vertrauenswürdig ein. -* jane_doe_xta_tester.p12 - Dieser Keystore beinhaltet ein Client-Zertifikat, das für die Kommunikation mit der Testumgebung verwendet werden kann. Sofern die Testumgebung in der Standardkonfiguration gestartet wurde, stuft die Umgebung das Zertifikat als vertrauenswürdig ein. +* xta-test-client-john-smith_keystore.p12 - Dieser Keystore beinhaltet ein Client-Zertifikat, das für die Kommunikation mit der Testumgebung verwendet werden kann. Sofern die Testumgebung in der Standardkonfiguration gestartet wurde, stuft die Umgebung das Zertifikat als vertrauenswürdig ein. === Test mit SoapUI diff --git a/soapui/XTA-soapui-project.xml b/soapui/XTA-soapui-project.xml index 2d19260..4b43308 100644 --- a/soapui/XTA-soapui-project.xml +++ b/soapui/XTA-soapui-project.xml @@ -3358,7 +3358,7 @@ eine Nachricht für die synchrone Weiterleitung übergeben wurde, die nur für d <xs:documentation>Diese Exception wird allgemein geworfen, wenn ein technisches Problem im XTA-WS aufgetreten ist. Sie kann z. B. durch ein Problem beim Zugriff auf die interne Datenbank des XTA-Servers ausgelöst worden sein.</xs:documentation> </xs:annotation> </xs:element> -</xs:schema>]]></con:content><con:type>http://www.w3.org/2001/XMLSchema</con:type></con:part></con:definitionCache><con:endpoints><con:endpoint>http://localhost:8080/xta/ws</con:endpoint><con:endpoint>https://localhost:8443/MB_XTA-WS</con:endpoint><con:endpoint>https://localhost:8881</con:endpoint></con:endpoints><con:operation id="638fc8ad-4e98-4cf6-be0c-e2638749cfe3" isOneWay="false" action="http://www.xta.de/XTA/CancelMessage" name="cancelMessage" bindingOperationName="cancelMessage" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="9e166713-c453-4f91-b18b-81229ae9f636" name="CancelMessage" sslKeystore="john_smith_xta_tester.p12" useWsAddressing="true"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting><con:setting id="WsdlSettings@enable-mtom">true</con:setting><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@force_mtom">true</con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>https://localhost:8443/MB_XTA-WS/XTA210managementPort.svc</con:endpoint><con:request><![CDATA[<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tran="http://www.osci.eu/ws/2014/10/transport" xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:add="http://www.w3.org/2005/08/addressing">\r +</xs:schema>]]></con:content><con:type>http://www.w3.org/2001/XMLSchema</con:type></con:part></con:definitionCache><con:endpoints><con:endpoint>http://localhost:8080/xta/ws</con:endpoint><con:endpoint>https://localhost:8443/MB_XTA-WS</con:endpoint><con:endpoint>https://localhost:8881</con:endpoint></con:endpoints><con:operation id="638fc8ad-4e98-4cf6-be0c-e2638749cfe3" isOneWay="false" action="http://www.xta.de/XTA/CancelMessage" name="cancelMessage" bindingOperationName="cancelMessage" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="9e166713-c453-4f91-b18b-81229ae9f636" name="CancelMessage" sslKeystore="xta-test-client-john-smith_keystore.p12" useWsAddressing="true"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting><con:setting id="WsdlSettings@enable-mtom">true</con:setting><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@force_mtom">true</con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>https://localhost:8443/MB_XTA-WS/XTA210managementPort.svc</con:endpoint><con:request><![CDATA[<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tran="http://www.osci.eu/ws/2014/10/transport" xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:add="http://www.w3.org/2005/08/addressing">\r <soap:Header>\r <tran:Author>\r <tran:Identifier type="xoev" name="SoapUI" category="dbs:testumgebung">?</tran:Identifier> @@ -3368,7 +3368,7 @@ eine Nachricht für die synchrone Weiterleitung übergeben wurde, die nur für d <soap:Body>\r <add:MessageID>urn:de:xta:messageid:xta-tester:b9f971c1-133e-4c33-91da-117a668f4343</add:MessageID>\r </soap:Body>\r -</soap:Envelope>]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.xta.de/XTA/CancelMessage" addDefaultAction="true" addDefaultTo="true" generateMessageId="true"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation id="ed63891c-c43a-4476-8208-f37771b9a239" isOneWay="false" action="http://www.xta.de/XTA/CheckAccountActive" name="checkAccountActive" bindingOperationName="checkAccountActive" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="246c0286-5928-43a6-ab33-56b93f9308b3" name="CheckAccountActive" sslKeystore="john_smith_xta_tester.p12" useWsAddressing="true"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting><con:setting id="WsdlSettings@enable-mtom">true</con:setting><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@force_mtom">true</con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>https://localhost:9443/MB_XTA-WS/XTA210managementPort.svc</con:endpoint><con:request><![CDATA[<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tran="http://www.osci.eu/ws/2014/10/transport" xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">\r +</soap:Envelope>]]></con:request><con:credentials><con:authType>No Authorization</con:authType></con:credentials><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.xta.de/XTA/CancelMessage" addDefaultAction="true" addDefaultTo="true" generateMessageId="true"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation id="ed63891c-c43a-4476-8208-f37771b9a239" isOneWay="false" action="http://www.xta.de/XTA/CheckAccountActive" name="checkAccountActive" bindingOperationName="checkAccountActive" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call id="246c0286-5928-43a6-ab33-56b93f9308b3" name="CheckAccountActive" sslKeystore="xta-test-client-john-smith_keystore.p12" useWsAddressing="true"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting><con:setting id="WsdlSettings@enable-mtom">true</con:setting><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@force_mtom">true</con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>https://localhost:9443/MB_XTA-WS/XTA210managementPort.svc</con:endpoint><con:request><![CDATA[<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tran="http://www.osci.eu/ws/2014/10/transport" xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">\r <soap:Header>\r <tran:Author>\r <tran:Identifier type="xoev" name="SoapUI" category="dbs:testumgebung">?</tran:Identifier>\r @@ -10846,4 +10846,4 @@ if (action[0..1] == "\\\"") { </ns:ContentContainer> </ns:GenericContentContainer> </soapenv:Body> -</soapenv:Envelope>]]></con:responseContent><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxFetchRequest"/></con:response><con:dispatchConfig/></con:mockOperation></con:mockService><con:properties/><con:afterLoadScript/><con:wssContainer><con:crypto><con:source>../src/main/resources/store/john_smith_xta_tester.p12</con:source><con:password>password</con:password><con:type>KEYSTORE</con:type></con:crypto><con:crypto><con:source>../src/main/resources/store/xta-test-server_keystore.p12</con:source><con:password>password</con:password><con:type>TRUSTSTORE</con:type></con:crypto></con:wssContainer><con:oAuth2ProfileContainer/><con:oAuth1ProfileContainer/><con:sensitiveInformation/></con:soapui-project> \ No newline at end of file +</soapenv:Envelope>]]></con:responseContent><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxFetchRequest"/></con:response><con:dispatchConfig/></con:mockOperation></con:mockService><con:properties/><con:afterLoadScript/><con:wssContainer><con:crypto><con:source>../src/main/resources/store/xta-test-client-john-smith_keystore.p12</con:source><con:password>password</con:password><con:type>KEYSTORE</con:type></con:crypto><con:crypto><con:source>../src/main/resources/store/xta-test-server_keystore.p12</con:source><con:password>password</con:password><con:type>TRUSTSTORE</con:type></con:crypto></con:wssContainer><con:oAuth2ProfileContainer/><con:oAuth1ProfileContainer/><con:sensitiveInformation/></con:soapui-project> diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index abdee8f..8a3a8ab 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -17,10 +17,10 @@ server: key-store-password: password key-store-type: pkcs12 # Alias im KeyStore - key-alias: xta-test-application + key-alias: xta-test-server key-password: password # enthaelt alle vertrauenswuerdigen Zertifikate - trust-store: classpath:store/xta-test-server_truststore.jks + trust-store: classpath:store/xta-test_truststore.jks trust-store-password: password trust-store-type: JKS # want, need, none; see org.springframework.boot.web.server.ClientAuth diff --git a/src/main/resources/store/.gitignore b/src/main/resources/store/.gitignore new file mode 100644 index 0000000..e198011 --- /dev/null +++ b/src/main/resources/store/.gitignore @@ -0,0 +1,4 @@ +*.crt +*.csr +*.key +*.slr \ No newline at end of file diff --git a/src/main/resources/store/ca-openssl.cnf b/src/main/resources/store/ca-openssl.cnf new file mode 100644 index 0000000..63ba8d8 --- /dev/null +++ b/src/main/resources/store/ca-openssl.cnf @@ -0,0 +1,23 @@ +[req] +default_bits = 2048 +distinguished_name = req_distinguished_name +req_extensions = v3_ca +prompt = no + +[req_distinguished_name] +C = DE +ST = XTATestState +L = XTATestCity +O = XTATestOrg +OU = XTATestOrgUnit +CN = XTA Test Root CA + +[ v3_ca ] +# Basic Constraints +basicConstraints = critical, CA:true, pathlen:0 + +# Key Usage +keyUsage = critical, digitalSignature, keyCertSign, cRLSign + +# Netscape Cert Type +nsCertType = sslCA \ No newline at end of file diff --git a/src/main/resources/store/client-openssl.cnf b/src/main/resources/store/client-openssl.cnf new file mode 100644 index 0000000..2914eaa --- /dev/null +++ b/src/main/resources/store/client-openssl.cnf @@ -0,0 +1,20 @@ +[ req ] +default_bits = 2048 +distinguished_name = req_distinguished_name +req_extensions = req_ext +prompt = no + +[ req_distinguished_name ] +C = DE +ST = XTACity +L = XTACountry +O = XTAOrg +OU = XTAOrgUnit +CN = XTA Test Client + +[ req_ext ] +authorityKeyIdentifier=keyid,issuer +keyUsage = critical, digitalSignature, keyEncipherment, dataEncipherment, keyAgreement +extendedKeyUsage = clientAuth +basicConstraints=CA:FALSE +nsCertType = client \ No newline at end of file diff --git a/src/main/resources/store/generate.sh b/src/main/resources/store/generate.sh new file mode 100755 index 0000000..5906a97 --- /dev/null +++ b/src/main/resources/store/generate.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +set -e + +STORE_PASS=password +ISSUER_ALIAS=xta-test-root-ca +TRUST_STORE_JKS=xta-test_truststore.jks + +if [ ! -f $ISSUER_ALIAS.key ] || [ ! -f $ISSUER_ALIAS.crt ]; then + rm $TRUST_STORE_JKS || true + echo "[1.0] Generate key for the Xta-Root-CA (Root CA key or crt not found)" + openssl genrsa -out $ISSUER_ALIAS.key 2048 + echo "[1.1] Generate a self-signed certificate for the Xta-Root-CA" + openssl req -x509 -new -nodes -key $ISSUER_ALIAS.key -sha256 -days 4000 -out $ISSUER_ALIAS.crt -config ca-openssl.cnf -extensions v3_ca +else + echo "[1.0] Root CA found. Skipping generation." +fi + +if [ ! -f $TRUST_STORE_JKS ]; then + echo "[2.0] Import Root CA into Xta-Server-Truststore" + keytool -importcert -alias $ISSUER_ALIAS -keystore $TRUST_STORE_JKS -storetype JKS -storepass "$STORE_PASS" -file $ISSUER_ALIAS.crt -noprompt +else + echo "[2.0] Xta-Server-Truststore found. Skipping generation." +fi + +function generate_keystore_with_signed_certificate { + local step_num="$1" + local key_alias="$2" + local key_cn="$3" + local ext_config_file="$4" + local keystore_args=( -keystore "${key_alias}_keystore.p12" -storepass "$STORE_PASS" -storetype PKCS12 ) + rm "$key_alias"_keystore.p12 || true + echo "[$step_num.0] Generate a keystore for $key_cn" + keytool -genkeypair "${keystore_args[@]}" -alias "$key_alias" -keyalg RSA -keysize 2048 -validity 3900 -dname "CN=$key_cn, OU=XtaTestOrgUnit, O=XtaTestOrg, L=XtaTestCity, S=XtaTestState, C=DE" + keytool -importcert "${keystore_args[@]}" -alias $ISSUER_ALIAS -file $ISSUER_ALIAS.crt -noprompt + + echo "[$step_num.1] Generate a certificate signing request for $key_cn" + keytool -certreq "${keystore_args[@]}" -alias "$key_alias" -file "$key_alias.csr" + + echo "[$step_num.2] Sign the certificate with the Root CA using $ext_config_file" + openssl x509 -req -in "$key_alias.csr" -out "$key_alias.crt" -CA $ISSUER_ALIAS.crt -CAkey $ISSUER_ALIAS.key -CAcreateserial -days 3900 -sha256 -extfile "$ext_config_file" -extensions req_ext + rm "$key_alias.csr" || true + + echo "[$step_num.3] Import the signed certificate into the keystore with alias $key_alias" + keytool -importcert "${keystore_args[@]}" -alias "$key_alias" -file "$key_alias.crt" -noprompt + rm "$key_alias.crt" || true + keytool -delete "${keystore_args[@]}" -alias $ISSUER_ALIAS -noprompt +} + +generate_keystore_with_signed_certificate "3" xta-test-server "XTA Test Server" server-openssl.cnf +generate_keystore_with_signed_certificate "4" xta-test-client-john-smith "XTA Test Client John Smith" client-openssl.cnf +generate_keystore_with_signed_certificate "5" xta-test-client-jane-doe "XTA Test Client Jane Doe" client-openssl.cnf \ No newline at end of file diff --git a/src/main/resources/store/jane_doe_xta_tester.p12 b/src/main/resources/store/jane_doe_xta_tester.p12 deleted file mode 100644 index f745dc02ab3dc0e9bb25a83ee0e9542ad3851c65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2839 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 diff --git a/src/main/resources/store/john_smith_xta_tester.p12 b/src/main/resources/store/john_smith_xta_tester.p12 deleted file mode 100644 index a727395694185315016bfccc2fd42e17749e4592..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2851 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 N_V?swCT7OA1pu3bDyIMd diff --git a/src/main/resources/store/server-openssl.cnf b/src/main/resources/store/server-openssl.cnf new file mode 100644 index 0000000..7b1a0f2 --- /dev/null +++ b/src/main/resources/store/server-openssl.cnf @@ -0,0 +1,25 @@ +[req] +default_bits = 2048 +distinguished_name = req_distinguished_name +req_extensions = req_ext +prompt = no + +[req_distinguished_name] +C = YourCountry +ST = YourState +L = YourCity +O = YourOrg +OU = YourOrgUnit +CN = your.server.com + +[req_ext] +subjectAltName = @alt_names +keyUsage = critical, digitalSignature, nonRepudiation, keyEncipherment, keyAgreement +extendedKeyUsage = serverAuth +basicConstraints = CA:FALSE +subjectKeyIdentifier = hash + +[alt_names] +DNS.1 = localhost +IP.1 = 127.0.0.1 +DNS.2 = docker \ No newline at end of file diff --git a/src/main/resources/store/show_certs.sh b/src/main/resources/store/show_certs.sh new file mode 100755 index 0000000..3cc8bbb --- /dev/null +++ b/src/main/resources/store/show_certs.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +set -e + +ISSUER_ALIAS=xta-test-root-ca +STORE_PASS=password + +function show_cert_by_alias { + local key_alias="$1" + keytool -exportcert -alias "$key_alias" -keystore "${key_alias}_keystore.p12" -file "${key_alias}.crt" -storepass "$STORE_PASS" + openssl x509 -in "${key_alias}.crt" -text -noout + rm "${key_alias}.crt" || true +} + +openssl x509 -in "${ISSUER_ALIAS}.crt" -text -noout + +show_cert_by_alias xta-test-server +show_cert_by_alias xta-test-client-john-smith + diff --git a/src/main/resources/store/xta-test-client-jane-doe_keystore.p12 b/src/main/resources/store/xta-test-client-jane-doe_keystore.p12 new file mode 100644 index 0000000000000000000000000000000000000000..0c0a1b20ac2922debfbbb7d973ddcdf6ecf068fc GIT binary patch literal 4236 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/store/xta-test-client-john-smith_keystore.p12 b/src/main/resources/store/xta-test-client-john-smith_keystore.p12 new file mode 100644 index 0000000000000000000000000000000000000000..dab946317cc45fd93bf87b573e959fa86c0c1afa GIT binary patch literal 4240 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 F1OPlp!*l=u literal 0 HcmV?d00001 diff --git a/src/main/resources/store/xta-test-server_keystore.p12 b/src/main/resources/store/xta-test-server_keystore.p12 index da0a1928782d51ed779ccdd59f8fa0e55db88834..b8937afa04dd5fa9322ac86830f990bbe4ec6f48 100644 GIT binary patch literal 4202 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 Qjk~nqW8LYG#X(I(0R9)bY5)KL literal 2859 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 diff --git a/src/main/resources/store/xta-test-server_truststore.jks b/src/main/resources/store/xta-test-server_truststore.jks deleted file mode 100644 index 0935b1e776a77b5caa7e8cfc4a6a02a9881d03b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1136 zcmezO_TO6u1_mYu1_nkjEmTpGs8EtxT#{O(P?VovqL7@(z`$5r$hb9<fi*(U)WDK~ zfkoAziAB+%iJ5Z&GZP~d69?1k0G55_t0o!nvT<s)d9;1!Wn|=LWiV)5ZpdxG$;KSY z!Y0h*;%dlmzzgDV2(vk*7Ug8-!35ah0zw7?AQfD~oPPO5C5br-j_!ss22vm~Zed}! z%)G?B<jlkzh2Z?0(vr;lykbLX14)o9v#?M^h@(OX#N|OCmpeNesvD@nUBt;KCXtd^ zl&zOknw*i5UzF#N2ev{lIX~AxPMp`s(9qD>z|g?dz`!6%oYxqcJA{1F#HfTE4UDV| z%uS5^3<gb%Tue=jj113=OlHY>Nw;t{?wzXmJS<@M))dz?ZkN{Ik;(ZN-%Zlqt+l*P z?1SFpd7oBCum9fjg@LK}et_t7)j}4|B5N*7Ue}Xyo}V_=Z`i$nC#U7pY!!xxWlnEY z9$Gd}m2ypDY>3`|&wQ=;p7uRX%UO@M8!oT3N;EyjzroB@WNqTfJq|oc-wm0+Cb7Qy z_O<8ljCQZpE;B3VCgm!#g(h7nk6&<vDLl;XR`-JTj8Fw_pMDL-goU%jO1JTsN{G#V z<0R!%xLp6x9iNN~1)CN$pRfoN`+D}un$IFkUxOTKcDS=1)L6UeLi8TKlKs1PCkmaM zt#M>y<2A{w$3chw9bB(rG0&Xkh}J<SW=00a#r_7q20U!cp|Zj(tOm@CjQ<T}K|DSd zF%}V~*_r3pL>uH^sxnKBx1GGQ_PX$I18$HsKMM;p6Jwi!ARA{wn+Idt4<|-OkPrhq za*%U_gPf6Jr`4N0XPxTw+Nj0d=eJi)Gf!l=o_ej?PrhH&epz(B<l94%65YpBiZ6Y= z^JC2w%U-9?H^dlPijSXd$$Mk&zH7pjs@&KoZ5O+I&5!eJnl1Kmuf<sflX$InCfoML z+C0|&c2YE=?2dW<!=o?Xh&N6XpI0X{={QrCPwo}&hmxybXI<DM?y6zC+d^}}ro4X* zWs=j6_b%JJ@BMnI((Yx9M^DHzwq0Gm$IR>BoBsC`oA0i=ofg#KdwaL}<?qb1&ztFa zt$dl$=6*}F>yE6|$u~CkI!w{~IUmjGwBKd7%kR(DwEL@mEaCmsp{#SN;*|e&sWT$V syI&o@+tuv8{PG9mP!)OE%;|C3uc{s?JI~#pxb)6h&!-FrRJS+-0FB&{UjP6A diff --git a/src/main/resources/store/xta-test_truststore.jks b/src/main/resources/store/xta-test_truststore.jks new file mode 100644 index 0000000000000000000000000000000000000000..d3d62904abc6726da06f54b5cd083406e15d5444 GIT binary patch literal 1083 zcmezO_TO6u1_mYu1_nkjEl^RCs9Ta+T%uc)pI@SzoXEhyIC<LA;tB@V2t88+O9lq! zPX<lQ?+lult}S3@Vq{_xvD&}EHS*v4Gjr6B*3X;6@^qd-!VUvoHcqWJkGAi;jEvl@ z3<izOhTI06Y|No7Y{E<~u7;up!XOR@4^KphV@PUoNpMMGNvffUfe=WTorfDL?3`Ir zX(((U2omMu;ev|#7o{7D8;F7gxq0{yf}wetC5Dm);vflT9)XAuM+K1C3PJh#B?``t z26E!OMka<v2BwCFCgw(_QR2MDriO-w7EtaWab**u5_0e{vNA9?G4eAQG%<29H8C<W zoK~})zqj#HhDYFQzxf>t?upMYtkOAh>s!K^XJWQ_>Mc_b3EmNry7hiRpwq6Gt5P%1 zOc6iRY{wLOd_lQ|U&5bNjhasv^~)R0xGVN8nER^*_sk8&wa?gA@IJq~vVO&}EACfv z_HO?FMJ&H)x?Atbr3JIotaR%uLZbwK`D(tKwC#L?<-`3qbUe#uWj6h4biH9E*514- zYUZ4{ZqJpRN4A#+Xzwh4u<7ik)$3Y!l^^r&RGGXaZ0&;j6JMCLCS5cRu+!1<N>Y$2 z)tCLlBe_iQa>p%Q|2>))pYq6VI(+!5%B(XyD~dmKz2#(@q!ybO@iIeA<PFcZ*wfQi z$vmENe|uC!+X+J^W=00a#SsQ!;KU*;%*gnkg~Nc2k?}thBZC1S8*`{EKS+#)nTfH@ zK#+|yq0NJ_?S~U1BMS>N6BCPpEJz6-ix`VYf{gL9C7XP=UZ`IZtx<9$Ot$I69OSU) z28TT(!_f;St*hJ@t$Oi3VdlYRGbvSbr>@(g$LcaR%SA2D=~!p-@`}ivBVW4LgmUYf z-%v7FPDojrzD}^X^5&w6{zsA`xK>EqO;-QaRw?Rh#Kiey_0|`fKQ=I~e!j0%)Lutz z#R8^Awi#7t56+o9`(8<{Xs6`AjMq9`eN7>oCzm_T=lJ)mJBiu2jJ4xd4O8Z?FCxB& z)rDOa=6w05b!9!%#!1%xiI*=|obP4uHtjgH`s~J2=eG-eDPr`W<l=GVoZ``9eI}a# z*>*eg{-#&$XWt5yFaCPz4~K@xkBgV)E<91*)qTz;F5r{xa!sC&GkqV*%a`-YgnW+U nt*@w0f246e+>J&4#tUc82N8$84@D=lF{Gc)j=UObAeaUK_DF|o literal 0 HcmV?d00001 diff --git a/src/test/resources/application.yml b/src/test/resources/application.yml index 3b93649..bec9257 100644 --- a/src/test/resources/application.yml +++ b/src/test/resources/application.yml @@ -10,10 +10,10 @@ server: key-store-password: password key-store-type: pkcs12 # Alias im KeyStore - key-alias: xta-test-application + key-alias: xta-test-server key-password: password # enthaelt alle vertrauenswuerdigen Zertifikate - trust-store: classpath:store/xta-test-server_truststore.jks + trust-store: classpath:store/xta-test_truststore.jks trust-store-password: password trust-store-type: JKS # want, need, none; see org.springframework.boot.web.server.ClientAuth -- GitLab From 23a8eff64c81212e1095f16f90107a1fecc47da8 Mon Sep 17 00:00:00 2001 From: Jan Zickermann <jan.zickermann@dataport.de> Date: Fri, 6 Dec 2024 11:50:17 +0100 Subject: [PATCH 2/2] KOP-2850 POM: Support running spring-boot:build-image locally --- pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml index 1d99389..6e5a224 100644 --- a/pom.xml +++ b/pom.xml @@ -406,6 +406,12 @@ <additionalProperties> <wsdl.version>${wsdl.version}</wsdl.version> </additionalProperties> + <image> + <env> + <HTTP_PROXY>${env.HTTP_PROXY}</HTTP_PROXY> + <HTTPS_PROXY>${env.HTTP_PROXY}</HTTPS_PROXY> + </env> + </image> </configuration> <executions> <execution> -- GitLab