解決加密金鑰的問題

將資料庫傾印匯入到另一個環境時,加密金鑰會保留在來源環境中。 本文說明如何轉移加密金鑰以解決付款和儲存資料的問題。

說明 description

環境

雲端基礎結構上的Adobe Commerce 2.4.x

問題/症狀

資料庫傾印從生產環境匯入到暫存/整合環境後,您會遇到以下一或多個情況:

  • 儲存的信用卡號碼顯示不正確
  • 需要商家憑證的付款整合的付款失敗
  • 儲存的付款方法資料已損毀

原因

用來加密敏感資料(例如信用卡號碼和商家認證)的加密金鑰不會儲存在資料庫中。 因此,當您匯入或匯出資料庫傾印時,不會將其傳輸到其他環境。

解決方法 resolution

您必須從來源環境複製加密金鑰,並將其新增至目的地環境。

若要複製加密金鑰:

  1. SSH至您的專案,此專案是資料庫傾印的來源,如開發人員檔案中的SSH至環境所述。
  2. 在文字編輯器中開啟app/etc/env.php
  3. 複製cryptkey值。
return array(
    'crypt' => array(
        'key' => '',
    ),
);

若要設定目標專案的索引鍵值:

  1. 開啟雲端主控台並找出您的專案。
  2. 設定CRYPT_KEY (在開發人員檔案中)變數的值,如開發人員檔案中的設定您的專案所述。 這將觸發部署程式,而且每次部署時app/etc/env.php檔案中的CRYPT_KEY都會被覆寫。

您可以選擇手動覆寫app/etc/env.php檔案中的加密金鑰:

  1. SSH連線至目的地環境。
  2. 在文字編輯器中開啟app/etc/env.php
  3. 將複製的資料貼上為cryptkey值。
  4. 儲存已編輯的env.php
  5. 執行bin/magento cache:clean或在 系統 下的Commerce管理員中,清除目的地環境上的快取 > 工具 > 快取管理
recommendation-more-help
experience-cloud-kcs-help-kbarticles