ざっくり説明
- 同一オリジンポリシー : ブラウザの機能の一つで、異なるサイトからのアクセスをブロック。
- CORS : 異なるサイト間でリソースを共有するための仕様。
同一オリジンポリシー
- Javascriptなどであるサイトから他のホストにアクセスしようとするとWebブラウザがそれを阻止する。
- 同一オリジンの条件は、FQDN・プロトコル・ポート番号が一致していること。それ以外は別のホストとみなされる。
CORS(Cross-Origin Resource Sharing)
- 同一オリジンポリシー下でも、異なるホスト間でリソースを共有するための仕様。
- サイトA(http://aaaa.com) からサイトB(http://bbbb.com) のリソースにアクセスする例で考える。
(1) AがBのコンテンツにアクセスしようとすると以下のようなHTTP HEADERが付与される。
Origin:http://aaaa.com
(2) Bはレスポンスヘッダに以下を付与してAからのアクセスを許可できる。
Access-Control-Allow-Origin:http://aaaa.com