サブリソースインテグリティ公開ワークフロー
この記事では、訪問がTealium CDNを通じて有効なutag.jsファイルを受け取ることを保証するために、サブリソースインテグリティを実装する方法について説明します。
仕組み
SRI(Subresource Integrity)がTealiumプロファイルで有効になっている場合、ユーザーはハッシュコードを生成し、ブラウザはそれをTealium CDNが提供するutag.js
ファイルと照合します。
以下の例は、新しいintegrity
パラメータを示しています:
<script src="https://tags.tiqcdn.com/utag/account/profile/PROD-A/utag.v202012030630.js" integrity="sha256-9/abcdefghijklmnopqrstuvwx/abcdefghijklmnopq0=" crossorigin="anonymous" async></script>
訪問がブラウザを通じてutag.js
ファイルをロードすると、ハッシュはファイルの検証に使用されます。ハッシュがファイルの内容と一致する場合、utag.js
ファイルは有効であり、ページにロードされます。ハッシュが一致しない場合、これはファイルがソースから変更されたことを示し、予防措置として、ブラウザはutag.js
ファイルのロードをブロックします。
SRIについての詳細は、Mozillaの開発者向けドキュメンテーションのSubresource Integrityを参照してください。
前提条件
- すべてのタグをバンドルする必要があります。
- 公開権限を持つすべてのユーザーにDevへの公開の権限を付与し、カスタム環境に公開できるようにします。
- 新しい
integrity
パラメータと正しいプロファイル名を含めるように、すべての影響を受けるページのソースコードを更新します。例えば、DEV-A、QA-2、PROD-BETA1などです。詳細は、以下のNaming conventionを参照してください。 - 公開環境を変更するプロセス(例えば、PROD-AからPROD-Bへ)を開発し、トラッキングのギャップを避けるために、同時に
integrity
パラメータを更新します。詳細は、以下のHash coordinationを参照してください。
命名規則
プロファイルにSRIを実装するには、各プロファイルの公開URLで特定の命名規則に従う必要があります。また、この命名規則に従ったカスタム環境を各プロファイルで作成する必要があります。
SRI用に作成するカスタム公開環境は、以下の命名規則を使用する必要があります:
-
次のいずれかのプレフィックスで始めます:
- DEV-
- QA-
- PROD-
-
上記のプレフィックスに続いて、任意の大文字(A-Z)または数字(0-9)を使用できます。例えば、DEV-A、QA-2、PROD-BETA1などです。
有効な公開URLは以下のようになり、PROD-C
はカスタム公開環境名を表します:
https://tags.tiqcdn.com/utag/account/profile/PROD-C/utag.js
ベストプラクティスとして、必要な数のSRI環境を各環境カテゴリーごとに作成し、公開時にそれらをローテーションさせることをお勧めします。例えば、プロファイルをDEV-A、QA-A、PROD-Aに公開した場合、次回の公開ではDEV-B、QA-B、PROD-Bに公開し、アクティブなプロファイルを操作してSRIチェックを無効にしないようにします。
ハッシュの調整
プロファイルを公開し、ライブサイトを更新するときは、utag
パスとintegrity
パラメータのSRIハッシュを同時に更新して、正しいカスタム環境を使用する必要があります。そうしないと、パスとSRIハッシュが競合し、ブラウザはutag
をロードしません。
ベストプラクティスとして、開発チームと協力して、これをCMSワークフローに組み込み、一緒に更新できるようにすることをお勧めします。
SRIのプロファイル構成
SRIのプロファイルを構成するには、以下の手順を実行します:
ステップ1 - カスタム環境を有効にする
プロファイルでカスタム環境を有効にするには、Custom publish environmentsを参照してください。
ステップ2 - カスタム環境を作成する
SRIのために必要なカスタム公開環境を作成するには:
- 管理メニューで、Code Centerをクリックします。
- Add Environmentをクリックします。
- Environment Nameの下に、有効なプレフィックス(DEV-、QA-、またはPROD-)で始まる命名規則に従った名前を入力します。
- 新しいカスタム環境をすべて作成した後、プロファイルのEnvironmentsリストは次のようになります:
- OKをクリックします。
- 新しいカスタム環境をすべて作成するために、プロファイルを任意の環境でSave/Publishします。
詳細については、Custom publish environmentsを参照してください。
ステップ3 - カスタム環境に公開する
SRI環境を持つプロファイルへの保存と公開のプロセスは、デフォルトの公開ワークフローとほぼ同じですが、一度に公開できる環境は1つだけです。
詳細については、Custom publish environmentsを参照してください。
最終更新日 :: 2024年March月29日