PHP8.1 リリース: CSP (コンテンツ セキュリティ ポリシー) をサポート
インターネットの発展に伴い、ネットワーク セキュリティの問題がますます注目を集めるようになりました。ユーザーのプライバシーとセキュリティを保護するために、実行できるコンテンツと Web ページにロードできるリソースを制限するコンテンツ セキュリティ ポリシー (CSP) を採用する Web サイトが増えています。 PHP 8.1 の最新リリースでは、CSP のネイティブ サポートが導入され、Web ページのセキュリティを強化するためのより優れたツールが開発者に提供されます。
CSP を使用すると、Web ページの開発者は、読み込みが許可されるリソース ソースを指定することで Web ページ内で実行できるコードを制限し、XSS (クロスサイト スクリプティング攻撃) やその他の悪意のある攻撃を防ぐことができます。 PHP8.1 は、CSP ポリシーを定義および実装するためのシンプルかつ強力な方法を提供します。以下にサンプル コードをいくつか見てみましょう。
まず、CSP ポリシーがどのように機能するかを知る必要があります。ポリシーは、どのタイプのリソースを Web ページにロードできるか、またどのスクリプトとスタイルが許可されるかを定義します。開発者は、PHP が提供する新しい関数を使用して、次のように CSP ポリシーを設定できます。
<?php header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline';"); ?>
上の例では、header()
関数を使用して Content を設定しました。 -Security-Policy
応答ヘッダー。このヘッダー ファイルは、デフォルトでロードされるリソース (default-src 'self'
) を指定し、ロードが許可されるスクリプト (script-src 'self' 'unsafe-inline' 'unsafe) をそれぞれ指定します- eval'
) およびスタイル (style-src 'self' 'unsafe-inline'
)。こうすることで、同じドメインのリソースのみが読み込まれるため、インライン スクリプトとスタイルが可能になります。
一般的な読み込み戦略に加えて、CSP は、読み込まれるリソースのタイプを制御するための他の命令 (image-src
、font-src
、# など) も提供します。 # #media-src など。開発者は、独自のニーズに応じてこれらの命令を設定できます。
<?php header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js; style-src 'self' 'unsafe-inline';"); ?>
を渡します。 script-src jQuery の CDN リンクを ディレクティブのパラメーターに追加して、ライブラリのロードを可能にします。このようにして、読み込みポリシーで同じドメイン名からのリソースの読み込みのみが許可されている場合でも、他のドメイン名のリソースを使用できます。
Content-Security-Policy 応答ヘッダーと対応する命令を使用することで、開発者は Web ページにロードできるリソースと実行できるコードを柔軟に制限でき、Web ページのセキュリティを強化できます。 。 Web ページを開発するときは、ユーザーのプライバシーとセキュリティを保護するために、これらの新機能を最大限に活用する必要があります。
以上がPHP8.1リリース:CSP(コンテンツセキュリティポリシー)をサポートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。