Google Cloud IAP (Identity Aware Proxy) を使用して保護されている Google APP エンジンにアクセスしようとしています。ID トークンを使用して、postman や (Node または Python) などのバックエンド サービスを使用してリソースにアクセスできます。しかし、同じ ID トークンを使用してブラウザーからアクセスしようとするとすぐに、401 無許可エラーが発生します。
この記事に従って ID トークンを取得しています: https://engineering.q42.nl/google-identity-aware-proxy/
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if (this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "<appengine_url>", true);
xhr.setRequestHeader("Accept", "text/html,*/*");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("Authorization", "Bearer <identity_token>");
xhr.send(data);
エラー メッセージ: OPTIONS my_url
401
my_url
オリジン ' http://localhost:4200 ' からのXMLHttpRequest へのアクセスがCORS ポリシーによってブロックされました: プリフライト要求への応答がアクセス制御チェックに合格しません: 要求されたヘッダーに 'Access-Control-Allow-Origin' ヘッダーが存在しません資源