cors의 아주 쉬운 이해

루카소·2021년 3월 25일
0

웹개발

목록 보기
2/11

브라우저에서 사용 되는 api는 특징이 있다.
1. 현재 웹페이지의 url과 api의 주소의 도메인이 다르면 보안상의 이유로 특정 장치가 제공 된다. (cors)
2. 브라우저는 현재 도메인과 api가 응답해주는 허용하는 도메인을 확인 후 허용 된다고 판단되면 api를 사용한다.
3. 즉 브라우저라는 중간 관리자가 있는 것이다.
4. 브라우저가 현재 홈페이지의 도메인과 api 응답값에 있는 access-control-allow-origin을 비교하여 api에서 허용하는 도메인이 아닐경우 웹사이트에서 요청한 api는 보안에 위배 된다고 판단 하는 것이다.

관리자(브라우저)와 a(특정 홈페이지)집과 b(api 서버)집이 있을 때
관리자는 a 집에서 내에서 쓰이는 api들에는 검열을 하지 않는다. 그러나 a집에서 b집으로 요청하는 api에는 b집에서 a집에서 쓸 수 있도록 허가 했는지를 확인한다. 쓸 수 있는지 여부는 b집에서 응답하는 api header에 명시되어 있다. "이 api는 a 집에서 쓸 수 있음. " 혹은 모든 집에서 쓸 수 있음도 있다. 그러나 c 집에서 쓸 수 있음이라고 명시 되어있다면 a 집에선 쓸 수 없는 것이고 그것이 cors에러인 것이다.

이 문제는 b집 (서버)에서 a 집에서 쓸 수 있도록 명시를 하거나 모든 집에서 쓸 수 있음 (*)으로 처리해서 처리할 수 있다.

profile
rukkasso

0개의 댓글