iframe 인증, 토큰 요청 폭탄을 postMessage로 막아보자!

by DD
5개월 전
조회수 2

iframe 환경에서 postMessage API를 활용하여 안전한 토큰 기반 인증 시스템을 구축함

동시 요청 문제 해결을 위해 Request QueuePromise 공유 패턴을 적용함

401 에러 발생 시 자동 재시도무한 루프 방지를 위한 쿨다운 메커니즘 도입

postMessage API를 활용한 인증 아키텍처

postMessage API는 서로 다른 origin 간 안전한 통신을 가능하게 한다. 구체적으로 Origin 검증을 통해 신뢰할 수 있는 출처만 허용한다. 따라서 iframe 환경에서 토큰 공유인증 시스템 구축에 적합하다.

동시성 문제 해결: Request Queue & Promise 공유

동시 다발적인 토큰 요청 문제를 해결하기 위해 Request Queue를 사용했다. Promise 공유 패턴을 통해 401 에러 발생 시 토큰 갱신을 동기화한다. 반면, 갱신 실패 시 무한 재시도를 방지하기 위해 쿨다운 메커니즘을 적용했다.

안전한 토큰 관리를 위한 보안 강화

보안 강화를 위해 Origin 검증Rate Limiting을 적용했다. 구체적으로, postMessage를 통해 전달되는 메시지의 출처를 검증한다. 따라서 악의적인 요청을 차단하고, 서버 부하를 줄여 서비스 안정성을 확보한다.

iframe으로 웹앱 통합했더니 토큰 요청이 폭발했다