1. 遺跡

クロスオリジンリクエストに認証情報を含める

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

ウェブアプリケーションは、異なる起源(ドメイン、プロトコル、ポート)を持つリソースを要求した際にクロスオリジンHTTPリクエストを実行します。クロスオリジンリソース共有(CORS)は、追加のHTTPヘッダーを使ってブラウザに、あるオリジン(ドメイン)で動作するウェブアプリケーションに対し、異なるオリジンのサーバーから選ばれたリソースへのアクセス権限を与える仕組みです。

デフォルトでは、CORSはクロスオリジンリクエストにクッキーを含みません。クロスオリジンリクエストに認証情報を含めるには、CORSの設定を変更する必要があります。

クロスオリジンリクエストに認証情報を含めるには:

  1. サイトの定義項目「 /sitecore/content///Settings/Site Grouping/Site/CORS 」に移動し、「 デフォルト」をクリックします。

  2. CORSセクションの**「Allow Origin**」欄で、サイトのURLを入力します。

    !注Allow Originフィールドの値が空または「*」と等しい場合、SXAはAllow Credentialsのチェックボックスを無視します。

  3. 認証 情報の確認 チェックボックスを選択してください。

    Go to Site, CORS and click default to select the Allow Credentials check box.

例えば:

http://fakeからhttp://sxaにアクセスすると、**Allow CredentialsおよびAllow Origin**フィールドを設定しずに、以下のスクリプトで行います。

その答えは次の通りです:

CORSポリシーにより、元の「http://fake」から「http://sxa/?sc_device=json」のXMLHttpRequestへのアクセスがブロックされています。リクエストされたリソースには「Access-Control-Allow-Origin」ヘッダーが存在しません。

Allow Credentials 」と 「Allow Origin 」フィールドを設定する際:

SXA-CORS-allow.png

応答は有効であり、エラーのない適切な応答ヘッダーが適用されます:

SXA-CORS-response.png
この記事を改善するための提案がある場合は、 お知らせください!