SOP(Same-Origin Policy)
CORS ๋ฅผ ์ค๋ช
ํ๊ธฐ์ ์์ ๋ฐ๋(?) ๊ฐ๋
์ธ SOP(Same-Origin Policy)๊ฐ ์๋ค.
๋์ผํ ์ถ์ฒ์์ ์จ ์์ฒญ๋ง ์ฒ๋ฆฌํ๋ ๊ฒ์ด๋ค. ๊ฐ๋ฐ์ ๊ด์ ์์ ๋ณด๋ฉด ์ด๋ ํ๋ก ํธ์์ ์ผ์ด๋๋ ๋ฌธ์ . ๋ธ๋ผ์ฐ์ ์ ๋ฌธ์ ์ด๋ค. (๋ณด์์ด ๋ถ์ผ๋ฉด ๊ฐ๋ฐ์๋ ๋ถํธํด์ง๊ฒ ๋๋ค.. ํํ)
์ฌ์ค ๋ฌธ์ ๋ ์๋๊ณ , ๋ธ๋ผ์ฐ์ ๋จ์์ ์ฌ์ฉ์๋ฅผ ๋ณดํธํ๋ ๊ฒ์ด๋ผ๊ณ ์ค๋ช
ํ ์ ์๊ฒ ๋ค.
์๋ฅผ ๋ค๋ฉด ๋ด๊ฐ ์ฌ์ดํธ A์ ๋ด ๋ก๊ทธ์ธ ์ ๋ณด(์ธ์ฆ)๋ฅผ ๊ธฐ์ตํ๋๋ก ํ๋ค. ์
์์ ์ธ ์ฌ์ดํธ B๋ ์ธ๊ด์์ผ๋ก ์ฌ์ดํธ A์ ์ฐจ์ด์ ์ด ์์ด ๋ณด์ธ๋ค. ์
์์ ์ธ ์ฌ์ดํธ B์์ ์ฌ์ดํธ A์ ์๋ ๋ด ์ธ์ฆ ์ ๋ณด๋ฅผ ํ์ทจํด ๋์ ์ธ์ฆ์ ๋ณด๋ฅผ ์ด์ฉํด ๋ด๊ฐ ์ฌ์ดํธ B์ ๋ก๊ทธ์ธ์ ํ๊ฒ ๋๋ฉด ํฐ ํผํด๋ก ์ด์ด์ง ์ ์๋ค. ๋ฐ๋ผ์ ๋ธ๋ผ์ฐ์ ์์๋ ์๋ก ๋ค๋ฅธ ์ถ์ฒ ๊ฐ ์์ฒญ์ ์ฃผ๊ณ ๋ฐ๋ ๊ฒ์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ง์ ๋๋ค.
CORS(Cross-Origin Resource Sharing)
CORS(Cross-Origin Resource Sharing)๋ ๋ค๋ฅธ ์ถ์ฒ ๊ฐ์ ๋ฆฌ์์ค๋ฅผ ๊ณต์ ํ ์ ์๊ฒ ํ๋ ๊ฒ์ด๋ค.
์ฌ์ดํธ C์ ์ฌ์ดํธ D๊ฐ ์๋ก ์ ๋ขฐํ ์ ์๋ ์ฌ์ดํธ๋ผ๋ฉด, HTTP ์ ๋ณด ์์ฒญ๊ณผ ๋ฐํ์ด ๊ฐ๋ฅํ๋๋ก ํ๋ ๊ฒ์ด๋ค.
์์ฒญ์ origin ์ด๋ผ๋ header ๋ฅผ ์ถ๊ฐํด ํน์ ๋๋ฉ์ธ์ด๋ *(๋ชจ๋ ๋๋ฉ์ธ)์ ์ ์ด ์ค๋ค.
๋ ์ธ์ฆ์ ๋ณด/ํ ํฐ ๋ฑ์ ์ฃผ๊ณ ๋ฐ๋ ์ฌ์ดํธ๋ค ๊ฐ์ CORS ๋ฅผ ํ์ฉํ๋ ค๋ฉด credentials ์ true ๋ก ์ค์ ํด์ผ ํ๋ค.
์ฐธ๊ณ :
https://developer.mozilla.org/ko/docs/Web/HTTP/CORS
์ดํด ์์ ์์:
https://youtu.be/bW31xiNB8Nc
๋๊ธ