[ACS-4459] Investigate and extend/universalize current custom Solr mTLS implementation in Repository (#1735)

* ACS-4459 Add new HttpClient Factory for Mutual TLS and implement it for Transform Service
* ACS-4462 Add e2e for MTLS
This commit is contained in:
Kacper Magdziarz
2023-03-30 13:43:42 +02:00
committed by GitHub
parent 5bb96729fc
commit fab591eb9b
18 changed files with 634 additions and 65 deletions

View File

@@ -10,7 +10,7 @@ services:
- "8090:8090"
postgres:
image: postgres:14.4
profiles: ["default", "with-transform-core-aio", "postgres"]
profiles: ["default", "with-transform-core-aio", "postgres", "with-mtls-transform-core-aio"]
environment:
- POSTGRES_PASSWORD=alfresco
- POSTGRES_USER=alfresco
@@ -19,8 +19,41 @@ services:
ports:
- "5433:5432"
activemq:
profiles: ["default", "with-transform-core-aio", "activemq"]
profiles: ["default", "with-transform-core-aio", "activemq", "with-mtls-transform-core-aio"]
image: alfresco/alfresco-activemq:5.17.1-jre11-rockylinux8
ports:
- "5672:5672" # AMQP
- "61616:61616" # OpenWire
- "61616:61616" # OpenWire
mtls-transform-core-aio:
profiles: ["with-mtls-transform-core-aio"]
image: quay.io/alfresco/alfresco-transform-core-aio:${TRANSFORMERS_TAG}
hostname: transform-core-aio
ports:
- 8090:8090
volumes:
- ${GITHUB_WORKSPACE}/keystores/tengineAIO/tengineAIO.truststore:/tengineAIO.truststore
- ${GITHUB_WORKSPACE}/keystores/tengineAIO/tengineAIO.keystore:/tengineAIO.keystore
environment:
ACTIVEMQ_URL: "nio://activemq:61616"
ACTIVEMQ_USER: "admin"
ACTIVEMQ_PASSWORD: "admin"
LOG_LEVEL: debug
SERVER_SSL_ENABLED: "true"
SERVER_SSL_KEY_PASSWORD: "password"
SERVER_SSL_KEY_STORE: "file:/tengineAIO.keystore"
SERVER_SSL_KEY_STORE_PASSWORD: "password"
SERVER_SSL_KEY_STORE_TYPE: "JCEKS"
SERVER_SSL_CLIENT_AUTH: "need"
SERVER_SSL_TRUST_STORE: "file:/tengineAIO.truststore"
SERVER_SSL_TRUST_STORE_PASSWORD: "password"
SERVER_SSL_TRUST_STORE_TYPE: "JCEKS"
CLIENT_SSL_KEY_STORE: "file:/tengineAIO.keystore"
CLIENT_SSL_KEY_STORE_PASSWORD: "password"
CLIENT_SSL_KEY_STORE_TYPE: "JCEKS"
CLIENT_SSL_TRUST_STORE: "file:/tengineAIO.truststore"
CLIENT_SSL_TRUST_STORE_PASSWORD: "password"
CLIENT_SSL_TRUST_STORE_TYPE: "JCEKS"

View File

@@ -0,0 +1,27 @@
#! /bin/bash
#! /bin/bash
# SETTINGS
# Alfresco Format: "classic" / "current" is supported only from 7.0
ALFRESCO_FORMAT=current
#Contains directory settings
source ${GITHUB_WORKSPACE}/alfresco-ssl-generator/ssl-tool/utils.sh
# Cleanup previous output of script
rm -rd $CA_DIR
rm -rd $KEYSTORES_DIR
rm -rd $CERTIFICATES_DIR
# SETTINGS
# Alfresco Format: "classic" / "current" is supported only from 7.0
ALFRESCO_FORMAT=current
#CA
${GITHUB_WORKSPACE}/alfresco-ssl-generator/ssl-tool/run_ca.sh -keysize 2048 -keystorepass password -certdname "/C=GB/ST=UK/L=Maidenhead/O=Alfresco Software Ltd./OU=Unknown/CN=Custom Alfresco CA" -servername localhost -validityduration 1
#Alfresco
${GITHUB_WORKSPACE}/alfresco-ssl-generator/ssl-tool/run_additional.sh -servicename alfresco -rootcapass password -keysize 2048 -keystoretype JCEKS -keystorepass password -truststoretype JCEKS -truststorepass password -certdname "/C=GB/ST=UK/L=Maidenhead/O=Alfresco Software Ltd./OU=Unknown/CN=Custom Alfresco Repository" -servername localhost -alfrescoformat $ALFRESCO_FORMAT
#Alfresco Metadata encryption
${GITHUB_WORKSPACE}/alfresco-ssl-generator/ssl-tool/run_encryption.sh -subfoldername alfresco -servicename encryption -encstorepass mp6yc0UD9e -encmetadatapass oKIWzVdEdA -alfrescoformat $ALFRESCO_FORMAT
#T-Engine AIO
${GITHUB_WORKSPACE}/alfresco-ssl-generator/ssl-tool/run_additional.sh -servicename tengineAIO -rootcapass password -keysize 2048 -keystoretype JCEKS -keystorepass password -truststoretype JCEKS -truststorepass password -certdname "/C=GB/ST=UK/L=Maidenhead/O=Alfresco Software Ltd./OU=Unknown/CN=T-Engine AIO" -servername localhost -alfrescoformat $ALFRESCO_FORMAT