暗号化キーに関する問題の解決
この記事では、暗号化キーが DB ダンプと一緒に他の環境に移動されないことによって発生する問題を修正する方法について説明します。
影響を受ける製品とバージョン
- クラウドインフラストラクチャー 2.4.x 上のAdobe Commerce
問題
実稼動環境からステージング環境または統合環境に データベースダンプを読み込むと、保存されたクレジットカード番号が間違って表示されるか、マーチャント資格情報の使用が必要な支払い統合で支払いが失敗します。
原因:
クレジットカード番号や加盟店資格情報などの機密データの暗号化に使用される暗号化キーは、データベースには格納されないので、データベースダンプのインポート/エクスポート後に他の環境に転送されません。
解決策
ソース環境から暗号化キーをコピーし、宛先環境に追加する必要があります。
暗号化キーをコピーするには:
- 開発者向けドキュメントの 環境への SSH に記載されているように、データベースダンプのソースとなったプロジェクトに SSH で接続します。
app/etc/env.php
をテキストエディターで開きます。crypt
のkey
の値をコピーします。
return array ('crypt' => array ('key' => '<your encryption key>', ),);
宛先プロジェクトのキー値を設定するには:
- Cloud Console を開き、プロジェクトを探します。
- 開発者向けドキュメントの プロジェクトの設定の説明に従って、(開発者向けドキュメントの CRYPT_KEY 変数の値を設定します。 これにより、デプロイメントプロセスがトリガーさ
CRYPT_KEY
、デプロイメントのたびにapp/etc/env.php
ファイルで上書きされます。
オプションで、app/etc/env.php
ファイルの暗号化キーを手動で上書きできます。
- 宛先環境に SSH で接続します。
app/etc/env.php
をテキストエディターで開きます。- コピーしたデータを
crypt
のkey
値として貼り付けます。 - 編集した
env.php
を保存します。 bin/magento cache:clean
を実行するか、Commerce管理の システム/ツール/キャッシュ管理 で、宛先環境のキャッシュをクリーンアップします。
recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a