Résoudre les problèmes liés à la clé de chiffrement

Lorsque vous importez une image mémoire de base de données dans un autre environnement, la clé de chiffrement reste dans l’environnement source. Cet article explique comment transférer la clé de chiffrement pour résoudre les problèmes de paiement et de données enregistrées.

Description description

Environnement

Adobe Commerce sur l’infrastructure cloud 2.4.x

Problème/Symptômes

Après avoir importé un image mémoire de base de données de la production vers des environnements d’évaluation/d’intégration, vous rencontrez un ou plusieurs des problèmes suivants :

  • Les numéros de carte de crédit enregistrés apparaissent incorrects
  • Les paiements échouent pour les intégrations de paiements qui nécessitent des informations d’identification de commerçant
  • Les données de mode de paiement stockées sont endommagées

Cause

La clé de chiffrement utilisée pour chiffrer des données sensibles (telles que les numéros de carte de crédit et les informations d’identification des commerçants) n’est pas stockée dans la base de données. Par conséquent, il n’est pas transféré à d’autres environnements lorsque vous importez ou exportez une image mémoire de base de données.

Résolution resolution

Vous devez copier la clé de chiffrement de l’environnement source et l’ajouter à l’environnement de destination.

Pour copier la clé de chiffrement :

  1. SSH vers votre projet qui était la source de l’image mémoire de la base de données, comme décrit dans SSH vers l’environnement dans notre documentation destinée aux développeurs.
  2. Ouvrez app/etc/env.php dans un éditeur de texte.
  3. Copiez la valeur de key pour crypt.
return array(
    'crypt' => array(
        'key' => '',
    ),
);

Pour définir la valeur de clé du projet de destination :

  1. Ouvrez la console cloud et recherchez votre projet.
  2. Définissez la valeur de la variable CRYPT_KEY (dans notre documentation destinée aux développeurs), comme décrit dans Configurer votre projet dans notre documentation destinée aux développeurs. Cela déclenchera le processus de déploiement et CRYPT_KEY sera remplacé dans le fichier app/etc/env.php à chaque déploiement.

Vous pouvez éventuellement remplacer manuellement la clé de chiffrement dans le fichier app/etc/env.php :

  1. SSH vers l’environnement de destination.
  2. Ouvrez app/etc/env.php dans un éditeur de texte.
  3. Collez les données copiées en tant que valeur key pour crypt.
  4. Enregistrez le env.php modifié.
  5. Nettoyez le cache de l’environnement de destination en exécutant bin/magento cache:clean ou dans l’Administration Commerce sous Système. > Outils > Gestion du cache.
recommendation-more-help
experience-cloud-kcs-help-kbarticles