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:
- SSH zu Ihrem Projekt, das die Quelle für den Datenbank-Dump war, wie unter SSH zur Umgebung in unserer Entwicklerdokumentation beschrieben.
- Öffnen Sie
app/etc/env.phpin einem Texteditor. - Kopieren Sie den Wert von
keyfürcrypt.
return array(
'crypt' => array(
'key' => '',
),
);
So legen Sie den Schlüsselwert für das Zielprojekt fest:
- Öffnen Sie die Cloud-Konsole und suchen Sie Ihr Projekt.
- 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_KEYwird bei jeder Bereitstellung in derapp/etc/env.php-Datei überschrieben.
Optional können Sie den Verschlüsselungsschlüssel in der app/etc/env.php-Datei manuell überschreiben:
- SSH in die Zielumgebung.
- Öffnen Sie
app/etc/env.phpin einem Texteditor. - Fügen Sie die kopierten Daten als
keyfürcryptein. - Speichern Sie die bearbeiteten
env.php. - Bereinigen Sie den Cache in der Zielumgebung, indem Sie
bin/magentocache:cleanoder im Commerce Admin unter System ausführen.>Tools>Cache-.