Konfigurieren von IBM Transformation Advisor

Bei der Installation von Transformation Advisor werden die Standardwerte für die Konfigurationseinstellungen übernommen. Die Persistenz ist eine Konfiguration, die Sie selbst festlegen müssen, je nach den in Ihrer Umgebung verfügbaren Persistenzoptionen.

Weitere Einzelheiten finden Sie im Dokument Speicher konfigurieren. Je nach Ihrer Umgebung und Ihren Vorlieben können Sie Ihre Transformation Advisor installation weiter anpassen. Im Folgenden finden Sie eine Liste aller Konfigurationsoptionen, die in Transformation Advisor zur Verfügung stehen, auf die in der benutzerdefinierten Ressource YAML zugegriffen werden kann.

Siehe Installieren, um auf die benutzerdefinierte Ressource YAML zuzugreifen.

Viele dieser Optionen sind (wie angegeben) für die erweiterte Fehlerbehebung gedacht und sollten nur von Experten verwendet werden.

Parameter Beschreibung Standard
networkPolicy.enabled Aktiviert 'networkPolicy' im Cluster. Erweiterte Fehlerbehebung. Ja
networkPolicy.egress Aktivieren und konfigurieren Sie EgressNetworkpolicy. Automatische Deaktivierung, wenn OpenShift SDN CNI nicht verwendet wird. aktiviert, wobei Standard-Egress-Ziele zulässig sind.
route.enabled Ermöglicht den Weg zum Dienst. Erweiterte Fehlerbehebung. Ja
route.hostname Der Hostname für die Route. Durch den TA-Operator erkannt und festgelegt
tls.enabled Aktiviert TLS zwischen Containern. Erweiterte Fehlerbehebung. Ja
tls.caCert CA-Zertifikat für TLS (siehe Anleitung zur Erstellung eines Kundenzertifikats ) Wird von icpa-installer festgelegt
authentication.disabled.liberty Deaktivieren Sie die Authentifizierung für den Liberty-Server. Erweiterte Fehlerbehebung. Falsch
authentication.disabled.ui Inaktiviert die Authentifizierung für die Benutzerschnittstelle (UI, User Interface). Erweiterte Fehlerbehebung. Falsch
authentication.ocp.authIssuerEndpoint Endpunkt des Authentifizierungsausstellers. Durch den TA-Operator erkannt und festgelegt
authentication.ocp.apiEndpoint Endpunkt der Authentifizierungs-API. Durch den TA-Operator erkannt und festgelegt
authentication.ocp.secretName Name des geheimen Schlüssels für die interne Authentifizierung. transformation-advisor-secret
authentication.oidc.endpointPort Port für OIDC-Authentifizierungsendpunkt Durch den TA-Operator erkannt und festgelegt
authentication.thirdparty.identityRequestEndpoint Endpunkt für Identitätsanfragen von Drittanbietern Nicht festgelegt
authentication.thirdparty.identityRequestEndpointPath Endpunktpfad für Identitätsanfragen von Drittanbietern Nicht festgelegt
authentication.thirdparty.identityRequestEndpointScope Endpunktumfang der Identitätsanforderung eines Drittanbieters Nicht festgelegt
authentication.thirdparty.identityRequestEndpointStatePrefix Präfix für den Status des Endpunkts für Identitätsanfragen von Dritten Nicht festgelegt
authentication.thirdparty.tokenRequestEndpoint Endpunkt für Token-Anforderungen von Drittanbietern Nicht festgelegt
authentication.thirdparty.tokenRequestEndpointPath Endpunktpfad für Token-Anforderungen von Drittanbietern Nicht festgelegt
authentication.thirdparty.tokenVerificationEndpoint Endpunkt für die Überprüfung durch Dritte Nicht festgelegt
authentication.thirdparty.tokenVerificationEndpointPath Endpunktpfad für die Überprüfung durch Dritte Nicht festgelegt
couchdb.image CouchDB-Image-Tag Durch den TA-Operator erkannt und festgelegt
couchdb.imagePullSecret Geheimer Schlüssel für die Image-Übertragung per Pull-Operation. Dient zum Zugriff auf die berechtigte Registrierung. Der Name muss ibm-entitlement-key sein. Weitere Details finden Sie unter Planung. Keine
couchdb.security.cipherSuites Cipher-Suites, die unterstützt werden sollen (durch Leerzeichen getrennt) ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES128-GCM-SHA256 TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256
couchdb.security.tlsVersions Liste der zulässigen SSL/TLS-Protokollversionen (Leerzeichen getrennt) tlsv1.2
couchdb.resources.requests.memory Fordert Speicher an (Ressourcen werden je nach Verfügbarkeit ggf. geändert. Die Standardwerte sind minimal) 1Gi
couchdb.resources.requests.cpu Fordert CPU an 500m
couchdb.resources.limits.memory Begrenzt Speicher 8Gi
couchdb.resources.limits.cpu Begrenzt CPU 16000m
couchdb.livenessProbe.initialDelaySeconds Stichprobe der Containeraktivität, Anfangsverzögerung in Sekunden (Stichproben können je nach Leistung des Clusters geändert werden. In den meisten Fällen funktionieren jedoch die Standardeinstellungen. Erweiterte Fehlerbehebung.) 60
couchdb.livenessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 3
couchdb.livenessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 5
couchdb.livenessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 6
couchdb.readinessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
couchdb.readinessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 3
couchdb.readinessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
couchdb.readinessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 6
neo4j.image NEO4J -Image-Referenz Durch den TA-Operator erkannt und festgelegt
neo4j.imagePullSecret Geheimer Schlüssel für die Image-Übertragung per Pull-Operation. Dient zum Zugriff auf die berechtigte Registrierung. Der Name muss ibm-entitlement-key sein. Weitere Details finden Sie unter Planung. Keine
neo4j.resources.requests.memory Fordert Speicher an (Ressourcen werden je nach Verfügbarkeit ggf. geändert. Die Standardwerte sind minimal) 1Gi
neo4j.resources.requests.cpu Fordert CPU an 500m
neo4j.resources.limits.memory Begrenzt Speicher 8Gi
neo4j.resources.limits.cpu Begrenzt CPU 16000m
neo4j.livenessProbe.initialDelaySeconds Stichprobe der Containeraktivität, Anfangsverzögerung in Sekunden (Stichproben können je nach Leistung des Clusters geändert werden. In den meisten Fällen funktionieren jedoch die Standardeinstellungen. Erweiterte Fehlerbehebung.) 60
neo4j.livenessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 3
neo4j.livenessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 5
neo4j.livenessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 6
neo4j.readinessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
neo4j.readinessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 3
neo4j.readinessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
neo4j.readinessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 6
persistence.enabled Persistenz aktiviert (wenn deaktiviert, gehen alle Daten verloren, wenn der DB-Container neu gestartet wird). Ja
persistence.couchdb.accessMode Modus für den Zugriff auf CouchDB. ReadWriteOnce
persistence.couchdb.size Größe des CouchDB-Speichers. 8Gi
persistence.couchdb.useDynamicProvisioning Es wird die dynamische Bereitstellung verwendet. Ändern Sie diese Einstellung nicht. Ja
persistence.couchdb.existingClaim Bestehender pv-Anspruch (In der Regel wird bestehendes PVC verwendet, um auf bestehende Daten hinzuweisen) ""
persistence.couchdb.storageClassName CouchDB-Speicherklassenname, z.B. "rook-ceph-cephfs-internal" ""
persistence.couchdb.supplementalGroups Zusätzliche CouchDB-Gruppen (normalerweise für NFS verwendet) []
persistence.neo4j.accessMode Neo4j zugriffsmodus. ReadWriteOnce
persistence.neo4j.size Neo4j speichergröße. 8Gi
persistence.neo4j.useDynamicProvisioning Es wird die dynamische Bereitstellung verwendet. Ändern Sie diese Einstellung nicht. Ja
persistence.neo4j.existingClaim Bestehender pv-Anspruch (In der Regel wird bestehendes PVC verwendet, um auf bestehende Daten hinzuweisen) ""
persistence.neo4j.storageClassName Neo4j name der Speicherklasse (z. B. "rook-ceph-cephfs-internal") ""
persistence.neo4j.supplementalGroups Neo4j ergänzende Gruppen (in der Regel für NFS verwendet) []
transadv.image Tag für das Liberty-Server-Image von Transformation Advisor (Transadv). Erweiterte Fehlerbehebung.
transadv.imagePullSecret Geheimer Schlüssel für die Image-Übertragung per Pull-Operation. Dient zum Zugriff auf die berechtigte Registrierung. Der Name muss ibm-entitlement-key sein. Weitere Details finden Sie unter Planung.
transadv.security.cipherSuites Cipher-Suites, die unterstützt werden sollen (durch Leerzeichen getrennt) TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
transadv.publicUrl Öffentliche URL des Transadv-Servers Durch TA erkannt und festgelegt
transadv.image.logLevel Protokollierungsstufe des Transadv-Servers info
transadv.resources.requests.memory Fordert Speicher an 1Gi
transadv.resources.requests.cpu Fordert CPU an 500m
transadv.resources.limits.memory Begrenzt Speicher 8Gi
transadv.resources.limits.cpu Begrenzt CPU 16000m
transadv.livenessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 60
transadv.livenessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 3
transadv.livenessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 5
transadv.livenessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 6
transadv.readinessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 60
transadv.readinessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 3
transadv.readinessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
transadv.readinessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 6
transadvui.image Tag für das Image der Benutzerschnittstelle (UI) von Transformation Advisor (Transadv). Erweiterte Fehlerbehebung.
transadvui.imagePullSecret Geheimer Schlüssel für die Image-Übertragung per Pull-Operation. Dient zum Zugriff auf die berechtigte Registrierung. Der Name muss ibm-entitlement-key sein. Weitere Details finden Sie unter Planung.
transadvui.image.logLevel Protokollierungsstufe der Transadv-Benutzerschnittstelle info
transadvui.useSecureCookie Verwenden Sie ein sicheres Cookie für Transadv UI Ja
transadvui.resources.requests.memory Fordert Speicher an 1Gi
transadvui.resources.requests.cpu Fordert CPU an 500m
transadvui.resources.limits.memory Begrenzt Speicher 4Gi
transadvui.resources.limits.cpu Begrenzt CPU 16000m
transadvui.livenessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 60
transadvui.livenessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 5
transadvui.livenessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 30 Stunden
transadvui.livenessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containeraktivität. Erweiterte Fehlerbehebung. 6
transadvui.readinessProbe.initialDelaySeconds Anfangsverzögerung (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
transadvui.readinessProbe.timeoutSeconds Zeitlimit (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 5
transadvui.readinessProbe.periodSeconds Dauer (in Sekunden) des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 30 Stunden
transadvui.readinessProbe.failureThreshold Schwellenwert für Fehler des Testmonitors für Containerbereitschaft. Erweiterte Fehlerbehebung. 6

Konfiguration des Installationsprogramms CASE

Optionen für die Installationsaktion:

oc ibm-pak launch \
    $CASE_NAME \
    --version $CASE_VERSION \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action install \
    --args "[OPTIONS]"
 
--licenseType <true|false>          : REQUIRED: Must be used and set to a valid license type.
--acceptLicense <true|false>        : REQUIRED: Must be used and set to true to proceed with install.
--installIbmCatalog <true|false>    : OPTIONAL: If set to true, the IBM operator catalog will be installed if it is not already. Default is false.
--secret <secret>                   : OPTIONAL: Specify a secret to use to pull the Tranformation Advisor images from entitle registry.
--registry <registry>               : OPTIONAL: Specified entitled registry, e.g. cp.icr.io.
--user <user>                       : OPTIONAL: Specify user to access the entitled registry.
--pass <password>                   : OPTIONAL: Specify password for user to access entitled registry.
--persistence <true|false>          : OPTIONAL: If persistence is required for Transformation Advisor (Default is true).
--accessMode <accessMode>           : OPTIONAL: storage accessMode. Default is ReadWriteOnce.
--persistenceClaimCouchDB <claim>   : OPTIONAL: Use an existing persistence claim for CouchDB.
--persistenceClaimNeo4j <claim>     : OPTIONAL: Use an existing persistence claim for Neo4j.
--storageClass <storage class>      : OPTIONAL: Recommended way use persistence with Transformation Advisor. Specify a valid storage class to use.
--supplementalGroups [gid,...]      : OPTIONAL: May be used if using file system based storage to ensure database container has read/write permission for the storage.
--hostName <hostname>               : OPTIONAL: hostname to access cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--apiEndpoint <apiEndpoint>         : OPTIONAL: API url for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--authIssuerEndpoint <aiEndpoint>   : OPTIONAL: Auth issuer endpoint for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlServer                   : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlUI                       : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--customCACert <file path>          : OPTIONAL: Specify file to use as custom CA cert.
--authConfigFile <file path>        : OPTIONAL: Specify file to use to configure third party authentication.
--namespaceScoped <true|false>      : OPTIONAL: If ommitted, defaults to false. This will make the operator to be insalled into openshift-operators namespace and manage all the namespaces, operand will go into namespace specified by --namespace attribute. If set to true, operator and operand are installed into namespace specified by --namespace attribute.
--taHelp                            : OPTIONAL: Display options available
 

Optionen für die Deinstallationsaktion:

oc ibm-pak launch \
    $CASE_NAME \
    --version $CASE_VERSION \
    --case ibm-transadv \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action uninstall \
    --args "[OPTIONS]"
 
--uninstallIbmCatalog <true|false>    : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
--uninstallTaCatalog <true|false>     : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
 

Konfigurieren der Authentifizierung von Drittanbietern

Um die Authentifizierung von Drittanbietern zu konfigurieren, folgen Sie bitte den hier beschriebenen Anweisungen:

Aktualisieren Sie Drittanbieter OAuthClient oder OAuthApp

Sie müssen die Umleitung URL so konfigurieren, dass die OAuthClient oder OAuthApp Umleitung zu Transformation Advisor UI-Route.

Die URL lautet ' your-ta-ui-route/auth/callback

Zum Beispiel: https://ta.apps.ken.cp.fyre.ibm.com/auth/callback, wobei https://ta.apps.ken.cp.fyre.ibm.com die Transformation Advisor UI-Route ist.

Sie können diese Route über die OCP-Benutzeroberfläche in der Navigation aufrufen: ' Networking -> Routes -> ta-ui-route -> Location

MFA konfigurieren

Die Integration der Multi-Faktor-Authentifizierung (MFA) in Red Hat OpenShift Container Platform erhöht die Sicherheit, indem Benutzer aufgefordert werden, ihre Identität mit mehreren Methoden zu verifizieren, z. B. mit einem Passwort, einem Einmal-Passcode (OTP) oder anderen unterstützten Verifizierungsfaktoren. Red Hat OpenShift erzwingt von Haus aus keine MFA. Weitere Informationen finden Sie unter Integration der Multi-Faktor-Authentifizierung für die Authentifizierung in OpenShift 4.

Client-ID und geheimer Schlüssel

Vor Transformation Advisor 3.4.0 müssen Sie die OAuthClient's oder OAuthApp's Client-ID und das Geheimnis in der Transformation Advisor instanzkonfiguration mit Hilfe der Eigenschaften authentication.oidc.clientId und authentication.oidc.clientSecret aktualisieren.

Transformation Advisor 3.4.0 oder danach, müssen Sie die Client-ID und das Client-Geheimnis in einem geheimen transformation-advisor-secret angeben, bevor Sie installieren Transformation Advisor. Hier ist der Befehl:

oc create secret generic transformation-advisor-secret \
--from-literal=clientId=your-clientId-value \
--from-literal=clientSecret=your-clientSecret-value
 

Alternativ können Sie Ihr Geheimnis auch nach der Installation von Transformation Advisor. Hier ist der Befehl:

oc patch secret transformation-advisor-secret \
-p '{"data":{"'"clientId"'": "'"your-clientId-value"'", "'"clientSecret"'": "'"your-clientSecret-value"'"}}' --type=merge
 

Anschließend müssen Sie möglicherweise die Server- und UI-Pods löschen, damit die neuen geheimen Werte auf die Pods angewendet werden können.

Hinweis: Die Adresse transformation-advisor-secret wird für andere interne Berechtigungsnachweise verwendet. Diese anderen Berechtigungsnachweise werden automatisch generiert, wenn sie nicht bereits im Geheimnis enthalten sind, wenn die Transformation Advisor instanz erstellt wird.

Aktualisierung der Egress-Netzwerk-Richtlinie

Stellen Sie sicher, dass Sie die Endpunkte, die von dem Drittanbieter verwendet werden, zur Egress-Netzrichtlinie hinzufügen. Anweisung verfügbar unter: Egress Network Policy (ENP)

Konfigurieren der Authentifizierung von Drittanbietern - UI-Installation

IAM

Transformation Advisor kann für die Verwendung von IBM Identity and Access Management (IAM) als Authentifizierungsquelle konfiguriert werden.

  1. Führen Sie die OpenID Connect (OIDC)-Registrierung gemäß den Anweisungen hier durch: https://www.ibm.com/docs/en/cpfs?topic=sign-automated-client-registration-method-3

  2. Nach dem Verfahren in Schritt 1 wird ein Geheimnis erstellt, das die clientId und clientSecret enthält. Fügen Sie clientId und clientSecret zu dem Transformation Advisor (wie in Eigenschaft: authentication.ocp.secretName angegeben).

  3. Aktualisieren Sie die Transformation Advisor konfigurationswerte wie folgt:

      description: "IAM"
      identityRequestEndpoint: "https://cp-console.<OCP domain>:443"
      identityRequestEndpointPath: "/idprovider/v1/auth/authorize"
      identityRequestEndpointScope: "openid+profile+email"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://cp-console.<OCP domain>:443"
      tokenRequestEndpointPath: "/idprovider/v1/auth/token"
      tokenVerificationEndpoint: "https://cp-console.<OCP domain>:443"
      tokenVerificationEndpointPath: "/idprovider/v1/auth/userInfo"
 

Github-OAuth

Das nachfolgende Beispiel veranschaulicht, welche Konfiguration im Konfigurationsobjekt thirdparty erforderlich ist, damit Github-OAuth verwendet wird:

      description: "github"
      identityRequestEndpoint: "https://github.com"
      identityRequestEndpointPath: "/login/oauth/authorize"
      identityRequestEndpointScope: "openid+offline"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://github.com"
      tokenRequestEndpointPath: "/login/oauth/access_token"
      tokenVerificationEndpoint: "https://api.github.com"
      tokenVerificationEndpointPath: "/user"
 

Box-OAuth

Das nachfolgende Beispiel veranschaulicht, welche Konfiguration im Konfigurationsobjekt thirdparty erforderlich ist, damit Box-OAuth verwendet wird:

      description: "box"
      identityRequestEndpoint: "https://account.box.com"
      identityRequestEndpointPath: "/api/oauth2/authorize"
      identityRequestEndpointScope: "root_readonly"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://api.box.com"
      tokenRequestEndpointPath: "/oauth2/token"
      tokenVerificationEndpoint: "https://api.box.com"
      tokenVerificationEndpointPath: "/2.0/users/me"
 

Konfigurieren der Authentifizierung von Drittanbietern - CASE install

Geben Sie eine Konfigurationsdatei für die Authentifizierung eines Drittanbieters an, indem Sie die Option --authConfigFile mit der Aktion CASE install verwenden.

Es folgt ein Beispiel für diese Datei, die GitHub OAuth verwendet:

Ändern Sie das Format der Datei nicht.

# set to true to disable authentication on UI server
TA_AUTH_UI_DISABLED=false
# set to true to disable authentication on Liberty server
TA_AUTH_LIBERTY_DISABLED=false

# OAuth2 Server client id
TA_AUTH_OIDC_CLIENT_ID=xxx
# OAuth2 Server client secret
TA_AUTH_OIDC_CLIENT_SECRET=xxx

# endpoint to request identity of the OAuth2 Server, no tailing /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request identity to OAuth2 Server, with heading /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_PATH=/login/oauth/authorize
# OAuth2 scope
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_SCOPE=openid+offline
# some OAuth2 state requires minimum length, default to empty
TA_AUTH_CALLBACK_STATE_PREFIX_PADDING=

# endpoint to request token of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request token of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_REQUEST_ENDPOINT_PATH=/login/oauth/access_token

# endpoint to verify tokens of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT=https://api.github.com
# path to the endpoint to verify tokens of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT_PATH=/user
 

Bring Your Own Key (BYOK) aktivieren

Sie können Ihr eigenes Zertifikat (im weiteren Verlauf des Abschnitts als "cert" bezeichnet) und den für das interne TLS verwendeten Schlüssel mitbringen.

Voraussetzung:

  1. Das öffentliche Zertifikat heißt public.crt und der private Schlüssel heißt private.pem.
  2. Transformation Advisor im Namespace ta installiert ist oder installiert werden soll.

Im Folgenden finden Sie ein Beispiel, wie ein Zertifikat und Schlüsselpaar abgerufen werden kann. Dabei sollten Ihr eigenes Zertifikat und Ihr Schlüssel das gleiche Format aufweisen:

openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 730 -out public.crt -subj "/C=IE/ST=Cork/L=Cork/O=IBM/CN=internal.ta.ibm.com" -addext "subjectAltName=DNS:ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc.cluster.local,DNS:ta-couchdb.<namespace>.svc.cluster.local
 

Nachdem Sie Ihr eigenes Zertifikat und Schlüsselpaar abgerufen haben, sollten Sie die folgenden Schritte ausführen, um Ihr eigenes Zertifikat und Ihren eigenen Schlüssel zu aktivieren:

  1. Wechseln Sie in den Namespace ta , oder erstellen Sie einen, wenn Sie keinen installiert haben Transformation Advisor.

       # switch the project
       oc project ta
     

    oder

       # create ta ns if it's not already there
       oc create ns ta
     
  2. Löschen Sie das Transformation Advisor geheimnis transformation-advisor-secret, falls es existiert.

    oc delete secret transformation-advisor-secret
     
  3. Wenn die Installation über das CASE -Installationsprogramm erfolgt, übergeben Sie --customCACert <public.crt> , wobei <public.crt> der vollständige Pfad zur Datei public.crt ist.

    Wenn Sie die Installation mit der Benutzerschnittstelle (UI) von OpenShift durchführen, aktualisieren Sie den Wert für die Eigenschaft caCert in der YAML-Datei für die angepasste Ressource. Weitere Einzelheiten zum Zugriff auf die benutzerdefinierte Ressource YAML über die Benutzeroberfläche finden Sie unter Installieren.

    Nachfolgend ist ein Beispiel der Angabe für caCert in der YAML-Datei für die angepasste Ressource zu sehen:

          tls:
            enabled: true
            caCert: |
              -----BEGIN CERTIFICATE-----
              MIIDKjCCAhICCQCjbqTC95dw+jANBgkqhkiG9w0BAQsFADBXMQswCQYDVQQGEwJJ
              RTENMAsGA1UECAwEQ29yazENMAsGA1UEBwwEQ29yazEMMAoGA1UECgwDSUJNMRww
              GgYDVQQDDBNpbnRlcm5hbC50YS5pYm0uY29tMB4XDTIwMDEyMDEzMjkxMVoXDTIy
              MDExOTEzMjkxMVowVzELMAkGA1UEBhMCSUUxDTALBgNVBAgMBENvcmsxDTALBgNV
              BAcMBENvcmsxDDAKBgNVBAoMA0lCTTEcMBoGA1UEAwwTaW50ZXJuYWwudGEuaWJt
              LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMIGfSptUnimmxZ
              IdVK6uLscJQetel+MX7u4viIaBwdd/IGDE7GHDHEYYFmEfv+gYbVT1+EAkdiLtHG
              SutUMPxpbUyv1xCW+9z3nDInHKzZxHMJJwB5j4+oVq+XkdXzZu2hwuoc0aA7Ek3r
              L6FFPIQi9bcmayuOa7HRpH43+86JuJF8tcx1MrDxWzBJraZNuvDVLs574qr/eM2d
              x5N+qkJqwOy94k0eH+x7kAKRp6vBEcVR+I/HHYDZSnC4UNEX8I/NbCS3wMUXysC9
              lcC2vsIKrCRSn9Fu/ixWwlGy6QV1my4H6ZPtvJV56fcS42523KTDbT628Xa9B3/p
              cX0WZWMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEADIyp9A4p46DZ6brEbL0e+wWf
              bnnymf1QZWcz4xrrMW2CcKBmRqFIPFPBpSEbCKlsFaZex5863z7dsa5SU7fHRdHF
              Yk9t8mGu2B+yZF6nW4biPmezaDLPi9VUomxcd+/rxWKhZJIufWXxs22AOhNQHeeK
              PSjP8RPCh1Gny7kC3jUz1Q/wd4QF/OGeu+Xf5jhERpJPfjKMtPMPJPGiPYSqhYQM
              VA6G83nZVlPDtnFJ28AzZU2/YtvCzhU66Ua5PjbSG1w6QsXZt/lE3E9utcJ+MNQi
              3JwrLp4/97cupXsGmPPmkvH50LB8ex/N/ra6QOLGLm0gU218yXu7KezOfZNkTw==
              -----END CERTIFICATE-----
     

    Sie können die Position manuell kopieren und einfügen. Denken Sie daran, dass die Einrückung wichtig ist. In jeder Zeile des Zertifikats sind 2 Leerzeichen mehr vorhanden als in der Zeile von caCert.

  4. Wiederholen Sie das Transformation Advisor geheimnis.

        # create key.p12
        openssl pkcs12 -export -inkey private.pem -in public.crt -name default -out key.p12 -passout pass:plain-text-password
    
        # base64 encode private.pem and public.crt
        base64 -w 0 ./private.pem > private-base64
        base64 -w 0 ./public.crt > public-base64
        # on Mac
        # base64 ./private.pem > private-base64
        # base64 ./public.crt > public-base64
    
        # create key and initial vector for AES-CBC-256 (P)
        # key length for aes256 is 256 bits around 32 characters
        TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
        # key length for aes256 is 128 bits around 16 characters
        TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`
    
        # create transformation-advisor-secret
        oc create secret generic transformation-advisor-secret \
        --from-literal=db_username='plain-text-username' --from-literal=secret='plain-text-password' \
        --from-file=ta_public_key=./public-base64 --from-file=ta_private_key=./private-base64 \
        --from-literal=ta_aes_key=$TA_TEMP_KEY --from-literal=ta_aes_iv=$TA_TEMP_IV \
        --from-file=key.p12=key.p12
     

Sie können jetzt mit Ihrer Installation fortfahren.

Hinweis: Die Adresse transformation-advisor-secret wird für andere interne Berechtigungsnachweise verwendet. Diese anderen Berechtigungsnachweise werden automatisch generiert, wenn sie nicht bereits im Geheimnis enthalten sind, wenn die Transformation Advisor instanz erstellt wird.

Erstellen Sie ein Image-Pull-Geheimnis, um die berechtigten Registry-Images abzurufen

Um die Unterstützung für Transformation Advisor zu nutzen, muss man der Entitled Registry Zugriffsrechte erteilen - dies geschieht durch die Erstellung eines Image Pull Secret und den Verweis auf dieses bei der Installation. Der Name des Geheimnisses muss ibm-entitlement-key lauten. Ein Geheimnis muss in demselben Namespace erstellt werden, in dem die Produktinstanz installiert ist, oder global.

Weitere Einzelheiten hierzu finden Sie im Dokument Image Registry Images Access. So zeigen Sie auf das Geheimnis von der Transformation Advisor instanz-Konfigurationsseite:

couchdb:
  imagePullSecret: ibm-entitlement-key

neo4j:
  imagePullSecret: ibm-entitlement-key
  
transadv:
  imagePullSecret: ibm-entitlement-key

transadvui:
  imagePullSecret: ibm-entitlement-key
 

Geben Sie Ihre eigenen Anmeldeinformationen für den Zugriff auf Transformation Advisor 's interne DB's

Transformation Advisor erstellt bei der Erstinstallation zufällige Anmeldeinformationen für die Kommunikation mit den internen DBs ( CouchDB und Neo4j ).

Es ist jedoch möglich, zu diesem Zweck Ihre eigenen Anmeldedaten anzugeben.

Die Anmeldeinformationen werden in einem Objekt Kubernetes secret (standardmäßig transformation-advisor-secret genannt) gespeichert, das wie folgt erstellt werden kann:

TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`

oc -n <YOUR_TA_INSTANCE_NAMESPACE> create secret generic <YOUR_SECRET_NAME> \
  --from-literal=db_username=<YOUR_COUCHDB_USERNAME> \
  --from-literal=secret=<YOUR_COUCHDB_PASSWORD> \
  --from-literal=db_nonadmin_user=<YOUR_COUCHDB_NONADMIN_USERNAME> \
  --from-literal=db_nonadmin_secret=<YOUR_COUCHDB_NONADMIN_PASSWORD> \
  --from-literal=neo4j_username=<YOUR_NEO4J_USERNAME> \
  --from-literal=neo4j_secret=<YOUR_NEO4J_PASSWORD> \
  --from-literal=neo4j_auth=neo4j/<YOUR_NEO4J_PASSWORD>
 

Lesen Sie den Abschnitt Re-create the TA secret in diesem Dokument, um zu erfahren, wie Sie die Dateien public-base64 und private-base64 erstellen.

Sie können Ihren geheimen Namen zum Zeitpunkt der Installation einer Transformation Advisor instanz angeben: .authentication.ocp.secretName

Chiffriersuiten und TLS-Versionen bearbeiten

Cipher Suites werden automatisch für Neo4j und den UI-Container eingestellt.

Für die Container "Server" und " CouchDB " können Sie diese Variablen manuell setzen, indem Sie sie bei der Installation ändern: couchdb.security.cipherSuites und transadv.security.cipherSuites.

Schlagen Sie die Standardwerte in der vorherigen Tabelle nach. Fügen Sie Ihre eigenen Angaben als durch Leerzeichen getrennte Zeichenfolge hinzu.

Ebenso können die TLS-Versionen für den Container CouchDB manuell eingestellt werden. Die Variable dafür ist " couchdb.security.tlsVersions. Die Standardwerte finden Sie in der vorherigen Tabelle.