개발자

아임포트 결제 API 환불 요청 시 액세스 토큰 발급 문제

2024년 07월 25일조회 448

안녕하세요, 제가 현재 쇼핑몰 프로젝트를 개발 중입니다. 우선, 아임포트 API로 결제 서비스를 개발한 다음, 환불 기능도 추가하려고 찾아보던 도중, 환불 요청을 보내기 위해서는 액세스 토큰을 따로 발급해야 한다고 합니다. 액세스 토큰을 따로 발급을 받기 위해서는 API키와 비밀키를 통해 가져와야 하는데, 보안 상 문제로 서버 사이드에서 액세스 토큰을 발급 받아야한다는 것을 알았습니다. 그러나 react는 클라이언트 사이드 라이브러리인데 그러면 서버 사이드 환경을 만들기 위해 Express 서버를 설치해야만 이 문제를 해결할 수 있나요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

강병진님의 프로필 사진

결제는 보안상 서버에서 이루어지는게 맞습니다. 클라이언트에서 결제 api를 직접 호출하면 header에 있는 토큰이라던지 기타 정보들이 모두 유출될 수 있고, 사용자가 3만원짜리 물건을 3원에 구매하는 요청을 바로 보낼수도 있게 되는 위험이 있습니다.

profile picture

익명

작성자

2024년 07월 27일

답변 감사합니다. 서버를 따로 만들거나 서버리스를 활용해야겠네요!

백승훈님의 프로필 사진

네 무조건 서버에서 처리하셔야 합니다. 절대 클라이언트에서 하시면 안됩니다. 미니 프로젝트라면 간이 서버 만들어서 하나 다셔서 하시면 될 것 같습니다.

profile picture

익명

작성자

2024년 07월 27일

넵 답변 감사합니다 :)

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 07월 25일

네, 맞습니다. 보안 상의 이유로 API 키와 비밀 키는 서버 측에서 관리되어야 합니다. 따라서, 클라이언트 사이드에서 직접 키를 사용할 경우, 이를 노출시킬 위험이 있습니다. 따라서, 서버측에서 액세스 토큰을 생성하고 클라이언트 측으로 보내도록 하는 것이 좋습니다. Express.js 같은 백엔드 서버를 설치하면 API키와 비밀키를 안전하게 관리할 수 있고, 이를 사용하여 아임포트에 대한 액세스 토큰을 요청합니다. 그런 다음에 액세스 토큰을 클라이언트 사이드로 전달하여 결제 환불 엔드포인트에 대한 요청에 사용될 수 있습니다. 따라서, Express 서버 등의 백엔드 환경 설정을 통해 이 문제를 해결할 수 있습니다. 그 외에도 Node.js, Django 등 다른 백엔드 프레임워크도 고려해볼 수 있습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!