암호화 키 관련 문제 해결

데이터베이스 덤프를 다른 환경으로 가져오면 암호화 키는 소스 환경에 그대로 유지됩니다. 이 문서에서는 결제 및 저장된 데이터 문제를 해결하기 위해 암호화 키를 전송하는 방법에 대해 설명합니다.

설명 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을(를) 실행하거나 System의 Commerce 관리자에서 캐시를 정리합니다. > 도구 > 캐시 관리.
recommendation-more-help
experience-cloud-kcs-help-kbarticles