ホーム
おまかせ表示
ログイン
設定
MonoBookについて
免責事項
MonoBook
検索
「
Cross Origin Resource Sharing (CORS)
」を編集中
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
クロスオリジン・リソース・シェアリング(CORS)は、ウェブページを提供したドメインのサーバーとは異なるドメインのサーバー上のリソースに安全にアクセスできるようにする仕組みです。 ウェブページは、クロスオリジンの画像、スタイルシート、スクリプト、iframe、動画を自由に埋め込むことができます。特定の「クロスドメイン」リクエスト、特にAjaxリクエストは、同一オリジンセキュリティポリシーによってデフォルトで禁止されています。 CORSは、ブラウザとサーバーが相互作用して、クロスオリジン・リクエストを許可しても安全かどうかを判断する方法を定義しています。これは、純粋に同一オリジンのリクエストよりも自由度と機能性を高めますが、単純にすべてのクロスオリジンリクエストを許可するよりも安全です。 CORSの仕様はWHATWGの「Fetch Living Standard」の一部として含まれている。この仕様は、CORSが現在どのようにブラウザに実装されているかを説明しています。以前の仕様はW3C勧告として発表された。 == 概要 == 別のドメインを指す <form> タグを使ったり、セーフリストに載っていないヘッダを含んだりすることができない JavaScript からの HTTP リクエストに対して、この仕様ではブラウザがリクエストを「プリフライト」し、HTTP OPTIONS リクエストメソッドでサーバーからサポートされているメソッドを要求し、サーバーからの「承認」があれば実際の HTTP リクエストメソッドで実際のリクエストを送信することを義務付けています。サーバーはまた、"クレデンシャル"(クッキーや HTTP 認証データを含む)をリクエストと一緒に送るべきかどうかをクライアントに通知することができます。 == 簡単な例 == ユーザーがhttp://www.example.com、ページがhttp://service.example.com からデータをフェッチするためにクロスオリジン・リクエストを試みたとする。CORS対応ブラウザは、以下のようにservice.example.comへのクロスオリジン・リクエストを試みる。 # ブラウザは、親ページを提供したドメインを含むservice.example.comへの余分なOrigin HTTPヘッダーを持つGETリクエストを送信します: <pre><nowiki>Origin: http://www.example.com</nowiki></pre> # service.example.comのサーバーは、これら3つのレスポンスのいずれかを送信する: #* リクエストされたデータは、オリジンからのリクエストが許可されてい ることを示す応答中の<code>Access-Control-Allow-Origin</code> (ACAO)ヘッダーとともに送られる。例えば、この場合はこうなる:<pre><nowiki>Access-Control-Allow-Origin: http://www.example.com</nowiki></pre> #* リクエストされたデータは、<code>Access-Control-Allow-Origin</code> (ACAO)ヘッダーと 共に、すべてのドメインからのリクエストが許可されることを示す ワイルドカードを持つ: <pre><nowiki>Access-Control-Allow-Origin: *</nowiki></pre> #* サーバーがクロスオリジン・リクエストを許可しない場合のエラー・ページ。 ワイルドカードの同一生成元ポリシーは、ページやAPIのレスポンスが、どのサイトのどのコードからもアクセスできることを意図している場合に適切です。Google Fontsのようなパブリック・ホスティング・サービスで自由に利用できるウェブ・フォントがその例です。 ワイルドカードの同一オリジン・ポリシーは、ページが推測不可能なURLを持ち、秘密を知っている人なら誰でもアクセスできることを意味する、オブジェクト・キャパビリティ・モデルでも広く適切に使用されている。 つまり、HTTP認証、クライアント側SSL証明書、クッキーをクロスドメインリクエストで送ることを許可しない。 CORSアーキテクチャでは、Access-Control-Allow-Originヘッダーは、元のWebアプリケーションサーバー(www.example.com)ではなく、外部のWebサービス(service.example.com)によって設定されることに注意してください。ここで、service.example.comはCORSを使用して、ブラウザがwww.example.com、service.example.comへのリクエストを許可する。 サイトがヘッダ "Access-Control-Allow-Credentials:true "を指定すると、サードパーティのサイトが特権的なアクションを実行し、機密情報を取得できる可能性があります。
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)