CspTrustedSite
CSP 信頼済みサイトを表します。Lightning コンポーネントフレームワークは、コンテンツセキュリティポリシー (CSP) を使用してコンテンツに制約を��用します。主な目的は、クロスサイトスクリプト (XSS) 攻撃や他のコードインジェクション攻撃を阻止することです。外部 (Salesforce 以外の) サーバに対する要求を実行するサードパーティ API や、WebSocket 接続を使用するには、CSP 信頼済みサイトを追加します。Metadata メタデータ型を拡張し、その fullName 項目を継承します。
宣言的なメタデータファイルのサフィックスおよびディレクトリの場所
CspTrustedSite コンポーネントは、対応するパッケージディレクトリの cspTrustedSites ディレクトリに保存されます。ファイル名は信頼済みサイトの一意の名前に一致し、拡張子は .cspTrustedSite です。
バージョン
CspTrustedSite コンポーネントは、API バージョン 39.0 以降で使用できます。
項目
| 項目 | 項目の型 | 説明 |
|---|---|---|
| context | CspTrustedSiteContext (string 型の列挙) | 示されたサードパーティホストの信頼の範囲を宣言します。
この項目は、API バージョン 44.0 以降で使用できます。 |
| description | string | この信頼済みサイトの使用目的を解説する説明。 |
| endpointUrl | string | 必須。信頼済みサイトの URL。 |
| isActive | boolean | 必須。信頼済みサイトが有効であるか (true)、否か (false) を示します。 |
| isApplicableToConnectSrc | boolean | Lightning コンポーネントでこのサイトのスクリプトインターフェースを使用して URL を読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| isApplicableToFontSrc | boolean | Lightning コンポーネントでこのサイトのフォントを読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| isApplicableToFrameSrc | boolean | Lightning コンポーネントでこのサイトの <iframe> 要素に含まれるリソースを読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| isApplicableToImgSrc | boolean | Lightning コンポーネントでこのサイトの画像を読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| isApplicableToMediaSrc | boolean | Lightning コンポーネントでこのサイトの音声と動画を読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| isApplicableToStyleSrc | boolean | Lightning コンポーネントでこのサイトのスタイルシートを読み込むことができるか (true)、否か (false) を示します。この項目のデフォルト値は false です。 この項目は、API バージョン 48.0 以降で使用できます。 |
| mobileExtension | string | 将来の使用のために予約されています。 |
宣言的なメタデータの定義のサンプル
信頼済みサイトの XML 定義のサンプルを以下に示します。
1<?xml version="1.0" encoding="UTF-8"?>
2<CspTrustedSite xmlns="http://soap.sforce.com/2006/04/metadata">
3 <description>Used for Lightning component callout to mapping web service</description>
4 <endpointUrl>https://www.maptestsite.net/</endpointUrl>
5 <isActive>true</isActive>
6 <isApplicableToConnectSrc>true</isApplicableToConnectSrc>
7 <isApplicableToFontSrc>true</isApplicableToFontSrc>
8 <isApplicableToFrameSrc>false</isApplicableToFrameSrc>
9 <isApplicableToImgSrc>true</isApplicableToImgSrc>
10 <isApplicableToMediaSrc>false</isApplicableToMediaSrc>
11 <isApplicableToStyleSrc>true</isApplicableToStyleSrc>
12 <context>LEX</context>
13</CspTrustedSite>使用方法
CSP は、ページに読み込むコンテンツのソースを制御するためのルールを定義する W3C 標準です。すべての CSP ルールはページレベルで機能し、すべてのコンポーネントに適用されます。デフォルトでは、フレームワークのヘッダーに読み込むことができるコンテンツは安全な (HTTPS) URL からのみで、JavaScript からの XHR 要求は禁止されています。
CSP 信頼済みサイトを定義すると、そのサイトの URL を CSP ヘッダーの次に示すディレクティブの許可サイト一覧に追加できます。
- connect-src
- frame-src
- img-src
- style-src
- font-src
- media-src
マニフェストファイル内のワイルドカードのサポート
このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。