서비스에 적용하실 DDos 공격에 대한 방지는 redirectUri 라고해서 특별한 점은 없을 것 같아요.
redirectUri로 직접 들어온 요청과 Kakao.Auth.authorize 함수를 통해서 들어온 요청을 구분하는 방법은 state로도 가능할 것 같아요.
(Kakao.Auth.authorize 함수 요청 시 전달한 state는 인증코드 전달 시 query string으로 함께 전달 됩니다.)
@dan.jwp 님 답변 감사합니다. 다른 리퀘스트는 CDN에서 캐시로 막아주는데 oauth는 매번 서버를 방문하여 연산을 하게 되거든요. State 파라미터는 이미 많이 이용하고 있는데요. 그렇다 해도 리퀘스트하는 걸 본 후에 공격자가 state, code도 모방해서 분당 수십만 리퀘스트를 보낸다면 서버를 다운시킬 수 있지 않을까요? CDN에서모두 여과해주지 못하니…
ajax+ backend curl로 주고받을 땐 이런 문제를 쉽게 피할 수 있었는데 이번에 authoriz를 구현하실 때 redirect 가 끼어서 여러 경우의 수를 방지하는데 좀 애를 먹고 있습니다.(지난 번 login api는 이런 문제는 없었으나 3자 웹뷰가 잘 안 되서 안내해주신대로 포기했습니다)