MicroStrategy ONE
Konfigurieren Sie SSL für PostgreSQL und den Storage Service
Die Kommunikation zwischen dem MicroStrategy Storage Service und einer PostgreSQL-Datenbank kann zur Verwendung von SSL zur Verschlüsselung und Authentifizierung konfiguriert werden. Siehe die PostgreSQL-Dokumentation für weitere Informationen.
Servermäßige PostgreSQL-Konfiguration
OpenSLS Version 1.1.0 oder höher muss installiert sein.
Wenn Sie PostgreSQL bereits serverseitig für Platform Analytics oder Collaboration Service konfiguriert haben, fahren Sie mit fort Client-Seiten-Setup unter Verwendung eines generierten server.key
und root.crt
-
Führen Sie die OpenSLS-Anwendung als Administrator aus, um einen privaten Schlüssel zu generieren. Beim Generieren des privaten Schlüssels müssen Sie eine Passphrase angeben.
openssl
steht nicht am Anfang jeder Zeile, da die Befehle mit der OpenSLS-Anwendung ausgeführt werden. Wenn die Zertifikate und Schlüssel auf einem Unix-System oder einer Windows-Befehlszeile generiert werden, müssen Sie möglicherweise „“ einschließenopenssl
vor jeder Zeile.Kopierengenrsa -out server.key 1024
-
Erstellen Sie das Serverzertifikat.
Die OpenSLS-Anwendung muss möglicherweise neu gestartet werden, um das Serverzertifikat erfolgreich zu erstellen.
-subj
ist eine Verknüpfung, um Eingabeaufforderungen zur Eingabe von Informationen zu vermeiden.-x509
erstellt ein selbstsigniertes Zertifikat statt einer Zertifikatsanforderung.Kopierenreq -new -key server.key -days 3650 -out server.crt -x509 -subj "/CN=your.domain.com"
-
Öffnen Sie eine Eingabeaufforderung oder den Datei-Explorer und navigieren Sie zum Serverzertifikat.
-
Kopieren Sie das neu erstellte Serverzertifikat, um die Zertifizierungsstelle zu erstellen.
Kopierencopy server.crt root.crt
-
Fügen Sie die unten gezeigte Zeile zu hinzu
postgres.conf
.Kopierenlisten_addresses = '*' # what IP address(es) to listen on;
-
Entfernen Sie den Kommentar und ändern Sie den Code unten.
Kopierenssl = on
ssl_ca_file = '\\LOCATION_OF_FILE\\root.crt'
ssl_cert_file = '\\LOCATION_OF_FILE\\server.crt'
ssl_key_file = '\\LOCATION_OF_FILE\\server.key'
ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed SSL ciphers
ssl_prefer_server_ciphers = on -
In
pg_hba.conf
, fügen Sie den Code unten hinzu oder ändern Sie ihn.Möglicherweise müssen Sie Host-Einträge auskommentieren.
hostssl
erzwingt SSL für DB_USERNAME.clientcert=1
erzwingt die Client-Authentifizierung (bidirektuelle Authentifizierung).Kopierenhostssl mstr_library DB_USERNAME CLIENT_IP/32 cert clientcert=1
-
Speichern Sie Ihre Änderungen in beiden Dateien.
-
Auswählen Starten > Dienste and restart PostgreSQL or MicroStrategy Repository.
Client-Seiten-Setup
Nach Abschluss der serverseitigen PostgreSQL-Konfiguration können Sie mit der clientseitigen Konfiguration und Einrichtung beginnen. Dadurch werden Zertifikate und Schlüssel für den Storage Service generiert.
Sie müssen zwei Paar Schlüssel und Zertifikate für erstellen mstr_library
Benutzer und der mstr_library_application
Benutzer.
-
Erstellen Sie den privaten Schlüssel und das Zertifikat für
mstr_library
Benutzer:Kopierengenrsa -out mstr_library.key 1024
req -new -key mstr_library.key -out mstr_library.csr -subj "/CN=mstr_library"
x509 -req -in mstr_library.csr -CA root.crt -CAkey server.key -out mstr_library.crt -CAcreateserialWenn Sie eine Fehlermeldung erhalten, müssen Sie diese möglicherweise auskommentieren
tsa_policy1
inopenssl.cnf
. Speichern und starten Sie openssl als Administrator neu.Kopieren# Policies used by the TSA examples.
#tsa_policy1 = 1.2.3.4.1
tsa_policy2 = 1.2.3.4.5.6
tsa_policy3 = 1.2.3.4.5.7 -
Konvertieren Sie den privaten Schlüssel mit dem folgenden Befehl in das DER-Format.
Der vom Storage Service verwendete JDBC-PostgreSQL-Treiber erfordert, dass die Schlüsseldatei im DER-Format statt im PEM-Format vorliegen.
Kopierenpkcs8 -topk8 -inform PEM -outform DER -in mstr_library.key -out mstr_library.pk8 -nocrypt
-
Erstellen Sie ähnlich wie in den Schritten 1 und 2 den privaten Schlüssel und das Zertifikat für
mstr_library_application
Benutzer:Kopierengenrsa -out mstr_library_application.key 1024
req -new -key mstr_library_application.key -out mstr_library_application.csr -subj "/CN=mstr_library_application"
x509 -req -in mstr_library_application.csr -CA root.crt -CAkey server.key -out mstr_library_application.crt -CAcreateserial
pkcs8 -topk8 -inform PEM -outform DER -in mstr_library_application.key -out mstr_library_application.pk8 -nocrypt -
Kopieren Sie die Dateien, die auf dem Library Server erstellt wurden, und aktualisieren Sie sie
configOverride.properties
mit dem absoluten Pfad zum Zertifikat und zum Schlüssel.Der/die/das
configOverride.properties
Datei befindet sich in:Windows:
<DEPLOY_LOCATION>\webapps\MicroStrategyLibrary\WEB-INF\classes\config\ConfigOverride.properties
Linux:
<DEPLOY_LOCATION>/webapps/MicroStrategyLibrary/WEB-INF/classes/config/configOverride.properties
Kopieren#postgresql database connection config
datasource.url=jdbc:postgresql://YOUR_HOST:5432/mstr_library
datasource.tlsEnabled=true
datasource.sslMode=require
datasource.sslRootCert=/LOCATION_OF_FILE/root.crt
#for Windows: datasource.sslRootCert=Z:\LOCATION_OF_FILE\root.crt
datasource.username=mstr_library_application
datasource.password=<any string>
datasource.sslCert=/LOCATION_OF_FILE/mstr_library_application.crt
datasource.sslKey=/LOCATION_OF_FILE/mstr_library_application.pk8
datasource.admin.username=mstr_library
datasource.admin.password=<any string>
datasource.admin.sslCert=/LOCATION_OF_FILE/mstr_library.crt
datasource.admin.sslKey=/LOCATION_OF_FILE/mstr_library.pk8