3.4.3.4 APEXでのコンテンツ・セキュリティ・ポリシー(CSP)の使用
アプリケーションのCSPを構成する方法について学習します。
APEXでは、HTTPレスポンス・ヘッダーを使用することでCSPがサポートされます。アプリケーション・レベルでCSPを有効にすると、アプリケーション全体が厳密なリソース・ロード・ルールに準拠し、よりセキュアで堅牢なアプリケーションを構築できるようになります。
- アプリケーションでのCSPの有効化
アプリケーションのCSPを有効にするには、セキュリティ属性を編集します。 - Content-Security-PolicyとContent-Security-Policy-Report-Onlyについて
Content-Security-Policy
ヘッダーとContent-Security-Policy-Report-Only
ヘッダーについて学習します。 - サポートされている置換文字列
CSPヘッダーでサポートされている置換文字列について学習します。
親トピック: コンテンツ・セキュリティ・ポリシー(CSP)の構成
3.4.3.4.1 アプリケーションでのCSPの有効化
アプリケーションのCSPを有効にするには、セキュリティ属性を編集します。
Oracle APEXでは、HTTPレスポンス・ヘッダーを使用することでCSPがサポートされます。アプリケーション・レベルでCSPを有効にすると、アプリケーション全体が厳密なリソース・ロード・ルールに準拠し、よりセキュアで堅牢なアプリケーションを構築できるようになります。
APEXアプリケーションでCSPを有効にするには:
3.4.3.4.2 Content-Security-PolicyとContent-Security-Policy-Report-Onlyについて
Content-Security-Policy
ヘッダーとContent-Security-Policy-Report-Only
ヘッダーについて学習します。
コンテンツ・セキュリティ・ポリシー(CSP)ヘッダーを実装するとき、Content-Security-Policy
ヘッダーとContent-Security-Policy-Report-Only
ヘッダーのいずれかを選択できます。
CSPヘッダーを追加すると:
-
CSPはアプリケーション全体でグローバルに適用されます。
-
指定されたポリシーに一致するリソースのみをロードできます。
-
明示的に許可されていないスクリプトまたはリソース(たとえば、適切なnonce/ハッシュのないインライン・スクリプト)は、ブラウザによってブロックされます。
ヒント:
これにより、CSPに準拠していない場合に特定の機能(またはプラグイン)が最初は機能しない可能性があるため、テストと適応が必要になる場合があります。
CSPを有効にすることで、クライアント側の攻撃に対するアプリケーションの強化に向けて重要な一歩を踏み出すことになります。ベスト・プラクティスを強制適用し、コードベースがクリーンかつセキュアで信頼できる状態を維持します。
3.4.3.4.3 サポートされている置換文字列
CSPヘッダーでサポートされている置換文字列について学習します。
CSPヘッダーで使用可能な置換文字列は次のとおりです:
#APEX_CSP_NONCE#
- HTTPヘッダーに使用され、現在のページ・リクエストのnonce値('nonce-random123'
など)に解決されます。nonceを持つインライン・スクリプトおよびスタイルを許可するために使用されます。#APEX_CSP_HASHES#
- 承認されたインライン・スクリプトまたはスタイルのハッシュに解決されます。#APEX_DISPLAY_NONE#
-display: none
に解決され、要素を動的に非表示にします。コンテンツが完全にロードされる前に表示/非表示を管理するためによく使用されます。#APEX_CSP_NONCE_ATTRIBUTE#
- nonce値(nonce="random123"
など)を含むhtml属性。#APEX_CSP_NONCE_VALUE#
- 正確なnonce値。