kginicis-ts / INICIS_Stdpay

【 일반결제 】 :: PC/모바일 모듈 소통 공간입니다.
6 stars 0 forks source link

페이북 ISP 인증 실패 관련 문의 #127

Closed CodeMath closed 11 months ago

CodeMath commented 11 months ago

포트원(구 아임포트) 모듈을 통해 결제 요청 진행하였습니다.

다른 카드사(현대, 삼성, 우리, 신한 등)는 정상적으로 앱카드 창이 노출되었으나, (로컬(http) 및 서버 상(https)

비씨카드(페이북) 부분만 유일하게 팝업창이 정상적으로 노출되지 않고 있습니다.

팝업차단을 해제한 뒤 시도하여도 동일한 증상을 보이고 있어 개발자도구를 통해 확인해보니,

ISP 페이지(팝업)에서는 코드는 정상적으로 불러와지고 대다수 결제 통신에서 200 호출로 정상적으로 나오고 있으나

ISP 팝업 페이지의 결제부분이 하얀색 바탕으로 나오고 있는 상황입니다.

error

환경: 윈도우 10, 크롬 브라우저(116.0.5845.140)

개발환경: Django(4.2.2)

ts-inicis commented 11 months ago

로컬에서 진행해 봤지만 문의주신 현상은 확인되지 않습니다. 팝업 설정 관련된 사항은 브라우저 설정에 따른 영향을 받습니다.

필요 시 브라우저 설정을 변경해 보시거나 초기화 후 테스트 바랍니다. 다른 브라우저에서도 추가 테스트를 진행하고 동일한 현상이 발생되는지 체크 바랍니다.

CodeMath commented 11 months ago

django 사용하시는 분들 중 해당 오류 사항을 겪으시는 분들을 위해 코멘트를 달아두겠습니다.

CORS 정책 상 same-origin의 경우에서만 팝업을 허용하고 있습니다.

SECURE_CROSS_ORIGIN_OPENER_POLICY Link

Default: 'same-origin'

Unless set to None, the SecurityMiddleware sets the Cross-Origin Opener Policy header on all responses that do not already have it to the value provided.

ISP 통신 특성 상 SSL 통신으로 팝업이 열리기 때문에 CORS 정책이 *.example.com 인 경우 same-origin 에서만 팝업이 허용되므로, ISP 쪽 도메인인 vp.co.kr 의 팝업이 아무리해도 열리지 않게 됩니다.

따라서 django 설정(settings.py) 에서 다음 문구를 추가하시면 ISP 팝업이 열립니다.

SECURE_CROSS_ORIGIN_OPENER_POLICY = None

한 2주간 고생했네요...