私のサービスの一部のユーザーは、ブラウザーで JavaScript を介して REST API (ユーザー資格情報が必要) にアクセスできるようにしたいと考えています。同一生成元ポリシーへの違反に関連するすべての脆弱性のため、一般的にこれは許可しません。しかし、特定のユーザーがそれを必要とし、何が起こっているのかを理解している場合...「クロスオリジンリクエストを作成できる」ホワイトリストに彼を追加したいと思います。
ただし、http 認証情報に基づいて Access-Control-Allow-Origin ヘッダーを選択的に返す方法がわかりません。
これをJavaScriptで行う場合:
$.ajax({'url':'url', 'beforeSend': function (xhr) { xhr.setRequestHeader("Authorization", "Basic " + 'base64encodedcreds' ) } })
ブラウザはまず、Authorization ヘッダーなしで ORIGIN METHOD リクエストを送信します。したがって、応答に Access-Control-Allow-Origin を含める必要があるかどうかを知る方法はありません。
xmlhttprequest に ORIGIN を認証とともに送信するための設定はありますか? または、クロスオリジン アクセスを選択的に許可する別の方法はありますか?