ホームページ  >  記事  >  ウェブフロントエンド  >  JS同一生成元ポリシーとは何ですか

JS同一生成元ポリシーとは何ですか

anonymity
anonymityオリジナル
2019-05-29 15:16:094879ブラウズ

あらゆる WEB ベースのアプリケーションにとって、最も重要なことはセキュリティです。悪意のあるスクリプトによるマシンの攻撃を防ぐために、JS にはさまざまなセキュリティ チェックがあります。これらの特定のセキュリティ方法のいくつかは、さまざまなブラウザで使用されています。たとえば、Mozilla は次のようにします。スクリプトへの署名と権限の強制を含む、完全に独自の完全なモデルです。どのセキュリティ メソッドがすべてのブラウザに共通で、どのセキュリティ メソッドがブラウザ固有であるかを知る必要があります。これにより、より安全な JS スクリプトを作成できます。

JS同一生成元ポリシーとは何ですか

同一生成元ポリシー;

JS は、同じドメイン内のページとのみ通信できます。例: http:// で実行されるスクリプト、ドメイン:ポート/ app1/page.html; は、ブラウザ ウィンドウまたは http://domain:port/app3/page.html; の iframe と対話できません。Cookie にアクセスしたり、HTTP 応答を受信したりすることはできません (ただし、HTTP 要求を送信することはできます)。他のソースへ); AJAX と Web サービスもこのポリシーによって管理されます。この方法は同一生成元ポリシーと呼ばれます;

2 つのスクリプトが同じ生成元のものであるとみなされる条件は次のとおりです:

プロトコルは同じです (たとえば、両方とも http://)

#ポートは同じです (通常は 80)

#ドメイン名は同じです

これら 3 つの条件のいずれかが満たされていない場合、2 つのスクリプトは対話できません。例: www.mydomain.com のスクリプトは video.mydomain.com のページにアクセスできません。ドメイン名は異なりますが、後者は前者のドメインの子です。同様に、ポートが異なるため www.mydomain.com:8080 のページにアクセスできず、プロトコルが異なるため about:blank にアクセスできません。 (後者は http:// ではありません)

同一生成元ポリシーの影響:

BOM および DOM との対話に影響します。例: ドキュメント異なるソースからのページのオブジェクトにはアクセスできません。これは、どの DOM にもアクセスできないことを意味します。構造例:

ページには、異なるソースを参照する 2 つの iframe があります。

アラート(frames[1].location.href);

alert(frames[1].document.location.href);//Failed

ウィンドウとドキュメントの両方に location オブジェクト属性があります。フレーム ページと同じではないページでこれら 2 行のコードを実行すると、2 行目でエラーが報告されます。

以上がJS同一生成元ポリシーとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。