HTML5 のコンテンツ セキュリティ ポリシー (CSP)
前書き:
Cordova不支持内联事件,所以点击事件必须提取到js里面. 以下是从官网摘抄下来,希望对您有所帮助
多くの潜在的なクロスサイト スクリプティングの問題を軽減するために、Chrome の拡張機能システムにはコンテンツ セキュリティ ポリシー (CSP) の一般的な概念が組み込まれています。 これにより、デフォルトで拡張機能の安全性が高まり、拡張機能やアプリケーションによってロードおよび実行できるコンテンツの種類を管理するルールを作成および強制できるようにする、いくつかのかなり厳格なポリシーが導入されています。
一般的に言えば、CSP は、拡張プログラムがロードまたは実行するリソースのハッキング/ホワイトリスト メカニズムとして機能します。 拡張機能に賢明なポリシーを定義することで、拡張機能が必要とするリソースを慎重に検討し、拡張機能がアクセスできるリソースがこれらのみであることをブラウザーに確認することができます。 これらのポリシーは、拡張機能によって要求されたホスト権限を超えたセキュリティを提供します。これらは追加の保護層であり、置き換えるものではありません。
ウェブでは、そのようなポリシーは HTTP ヘッダーまたは要素を通じて定義されます。 どちらも Chrome の拡張システムには適切なメカニズムではありません。 代わりに、拡張機能のポリシーは、次のように拡張機能の manifest.json ファイルによって定義されます:
{ … “content_security_policy”:“[POLICY STRING GOES HERE]” … }
CSP 構文の詳細については、コンテンツ セキュリティ ポリシーの仕様と、HTML5 Rocks の記事「コンテンツ セキュリティ ポリシーの概要」を参照してください。
デフォルトのポリシー制限
manifest_version パッケージが定義されていません デフォルトのコンテンツ セキュリティ ポリシーはありません。 マニフェスト バージョン 2 を選択したものには、デフォルトのコンテンツ セキュリティ ポリシーが適用されます:
script-src'self'; object-src'self'
このポリシーは、次の 3 つの方法で拡張機能とアプリケーションを制限することでセキュリティを強化します:
(1) 評価および関連機能は無効になります
次のコードは機能しません:
alert(eval("foo.bar.baz"));
window.setTimeout(“alert(’hi’)”,10); window.setInterval(“alert(’hi’)”,10); new Function(“return foo.bar.baz”);
このような JavaScript 文字列の評価 は、一般的な XSS 攻撃ベクトルです。 代わりに、次のようなコードを記述する必要があります:
alert(foo && foo.bar && foo.bar.baz); window.setTimeout(function(){alert(’hi’);},10); window.setInterval(function(){alert(’hi’);},10); function(){return foo && foo.bar && foo.bar.baz};
(2) インライン JavaScript は実行されません
インライン JavaScript は実行されません。 この制限により、インライン ブロックとインライン イベント ハンドラー プログラム (例: ) が禁止されます。
最初の制限は、悪意のあるサードパーティが提供するスクリプトを誤って実行することを防ぐことで、多数のクロスサイト スクリプティング攻撃を排除します。 ただし、コードの記述内容とコードの実行内容を明確に分離する必要があります (これは必ず行うべきです) ですよね? 例を挙げると、これがより明確になるかもしれません。 次の内容を含む単一の Popup.html としてブラウザー アクション ポップアップを作成してみるとよいでしょう:
<!doctype html> My Awesome Popup! function awesome(){ //做某事真棒! } function totalAwesome(){ //做某事真棒! } 函数clickHandler(element){ setTimeout( “awesome();getherAwesome()” ,1000); } function main(){ //初始化工作在这里。 } </ SCRIPT>
(1) インラインスクリプト
Chrome 45 までは、インライン JavaScript の実行に関する制限を緩和するメカニズムはありませんでした。 特に、「unsafe-inline」を含むスクリプト ポリシーを設定しても効果はありません。 Chrome 46 以降では、ポリシーでソース コードの Base64 エンコードされたハッシュを指定することで、インライン スクリプトをホワイトリストに登録できるようになりました。 ハッシュには、使用するハッシュ アルゴリズム (sha256、sha384、または sha512) をプレフィックスとして付ける必要があります。例について
以上がHTML5 のコンテンツ セキュリティ ポリシー (CSP)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









HTML の表の境界線に関するガイド。ここでは、HTML でのテーブルの境界線の例を示しながら、テーブル境界線を定義する複数の方法について説明します。

これは、HTML でのネストされたテーブルのガイドです。ここでは、テーブル内にテーブルを作成する方法をそれぞれの例とともに説明します。

HTML マージン左のガイド。ここでは、HTML margin-left の概要とその例、およびそのコード実装について説明します。

HTML テーブル レイアウトのガイド。ここでは、HTML テーブル レイアウトの値と例および出力について詳しく説明します。

HTML 入力プレースホルダーのガイド。ここでは、コードと出力とともに HTML 入力プレースホルダーの例について説明します。

HTML でのテキストの移動に関するガイド。ここでは、概要、マーキー タグが構文でどのように機能するか、および実装例について説明します。

HTML オンクリック ボタンのガイド。ここでは、それらの紹介、動作、例、およびさまざまなイベントでの onclick イベントについてそれぞれ説明します。
