Beheben von Problemen mit dem Verschlüsselungsschlüssel

Wenn Sie einen Datenbank-Dump in eine andere Umgebung importieren, verbleibt der Verschlüsselungsschlüssel in der Quellumgebung. In diesem Artikel wird erläutert, wie Sie den Verschlüsselungsschlüssel übertragen, um Probleme mit Zahlungen und gespeicherten Daten zu beheben.

Beschreibung description

Umgebung

Adobe Commerce auf Cloud-Infrastruktur 2.4.x

Problem/Symptome

Nach dem Import Datenbank-Dump aus der Produktion in Staging-/Integrationsumgebungen treten eine oder mehrere der folgenden Situationen auf:

  • Gespeicherte Kreditkartennummern erscheinen falsch
  • Fehlgeschlagene Zahlungen für Zahlungsintegrationen, für die die Anmeldedaten eines Händlers erforderlich sind
  • Gespeicherte Zahlungsmethodendaten sind beschädigt

Ursache

Der zum Verschlüsseln sensibler Daten (z. B. Kreditkartennummern und Händleranmeldeinformationen) verwendete Verschlüsselungsschlüssel wird nicht in der Datenbank gespeichert. Daher wird er beim Importieren oder Exportieren eines Datenbank-Dump nicht in andere Umgebungen übertragen.

Lösung resolution

Sie müssen den Verschlüsselungsschlüssel aus der Quellumgebung kopieren und der Zielumgebung hinzufügen.

So kopieren Sie den Verschlüsselungsschlüssel:

  1. SSH zu Ihrem Projekt, das die Quelle für den Datenbank-Dump war, wie unter SSH zur Umgebung in unserer Entwicklerdokumentation beschrieben.
  2. Öffnen Sie app/etc/env.php in einem Texteditor.
  3. Kopieren Sie den Wert von key für crypt.
return array(
    'crypt' => array(
        'key' => '',
    ),
);

So legen Sie den Schlüsselwert für das Zielprojekt fest:

  1. Öffnen Sie die Cloud-Konsole und suchen Sie Ihr Projekt.
  2. Legen Sie den Wert der Variablen CRYPT_KEY (in unserer Entwicklerdokumentation) fest, wie unter Konfigurieren Ihres Projekts in unserer Entwicklerdokumentation beschrieben. Dadurch tritt ein Trigger beim Bereitstellungsprozess auf, und CRYPT_KEY wird bei jeder Bereitstellung in der app/etc/env.php-Datei überschrieben.

Optional können Sie den Verschlüsselungsschlüssel in der app/etc/env.php-Datei manuell überschreiben:

  1. SSH in die Zielumgebung.
  2. Öffnen Sie app/etc/env.php in einem Texteditor.
  3. Fügen Sie die kopierten Daten als key für crypt ein.
  4. Speichern Sie die bearbeiteten env.php.
  5. Bereinigen Sie den Cache in der Zielumgebung, indem Sie bin/magento cache:clean oder im Commerce Admin unter System ausführen. > Tools > Cache-.
recommendation-more-help
experience-cloud-kcs-help-kbarticles