Risolvi i problemi relativi alla chiave di crittografia

Questo articolo illustra come risolvere i problemi causati dal mancato spostamento della chiave di crittografia insieme all’immagine del database nell’altro ambiente.

Prodotti e versioni interessati

  • Adobe Commerce sull’infrastruttura cloud 2.4.x

Problema

Dopo aver importato un dump del database dalla produzione agli ambienti di gestione temporanea/integrazione, i numeri di carta di credito salvati appaiono errati e/o i pagamenti non riescono per le integrazioni di pagamento che richiedono l'utilizzo di credenziali esercente.

Causa

La chiave di crittografia utilizzata per crittografare i dati sensibili, come i numeri di carta di credito e le credenziali dell’esercente, non viene memorizzata nel database e pertanto non viene trasferita in un altro ambiente dopo l’importazione/esportazione del dump del database.

Soluzione

È necessario copiare la chiave di crittografia dall'ambiente di origine e aggiungerla all'ambiente di destinazione.

Per copiare la chiave di crittografia:

  1. SSH al progetto che era l'origine per l'immagine del database, come descritto in SSH all'ambiente nella documentazione per gli sviluppatori.
  2. Apri app/etc/env.php in un editor di testo.
  3. Copia il valore di key per crypt.
return array ('crypt' =>      array ('key' => '<your encryption key>', ),);

Per impostare il valore chiave per il progetto di destinazione:

  1. Apri Cloud Console e individua il progetto.
  2. Imposta il valore della variabile CRYPT_KEY (nella documentazione per gli sviluppatori), come descritto in Configura il progetto nella documentazione per gli sviluppatori. In questo modo verrà attivato il processo di distribuzione e CRYPT_KEY verrà sovrascritto nel file app/etc/env.php in ogni distribuzione.

Se necessario, è possibile sovrascrivere manualmente la chiave di crittografia nel file app/etc/env.php:

  1. SSH all’ambiente di destinazione.
  2. Apri app/etc/env.php in un editor di testo.
  3. Incolla i dati copiati come valore key per crypt.
  4. Salva env.php modificato.
  5. Pulire la cache nell'ambiente di destinazione eseguendo bin/magento cache:clean o nell'amministratore di Commerce in Sistema > Strumenti > Gestione cache.
recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a