TacJS

tarteaucitron.js JavaScriptライブラリを使用した、Drupal向けGDPR準拠のCookie同意管理。

tacjs
1,707 sites
23
drupal.org

インストール

Drupal 11, 10 v7.0.1
composer require 'drupal/tacjs:^7.0'
Drupal 9, 8 v8.x-6.7
composer require 'drupal/tacjs:8.x-6.7'

概要

TacJSは、DrupalウェブサイトがヨーロッパのCookie法(GDPR)に準拠するための人気ライブラリtarteaucitron.jsを統合します。このモジュールは、訪問者がアナリティクス、広告、ソーシャルメディアウィジェット、埋め込み動画などのサードパーティサービスを選択的に承認または拒否できる、カスタマイズ可能なCookie同意バナーを提供します。

モジュールは3つの設定タブで構成される包括的な管理インターフェースを提供します:ダイアログ管理(バナーの外観と動作)、サービス追加(個別のサードパーティサービスの有効化/設定)、テキスト編集(すべてのユーザー向けテキストラベルのカスタマイズ)。すべてのテキストは動的コンテンツのためのトークン置換をサポートしています。

TacJSは、Google Analytics、Google Tag Manager、Facebook Pixel、YouTube、Vimeo、Dailymotion、Twitter、LinkedInなど、数百のサードパーティサービスをすぐに利用できる状態でサポートしており、広告、アナリティクス、ソーシャル、動画サービスなど多岐にわたります。各サービスは個別に有効化でき、言語ごとに設定可能で、追加情報リンクでカスタマイズできます。

Features

  • カスタマイズ可能な外観と位置を備えたGDPR準拠のCookie同意バナー
  • 広告、アナリティクス、ソーシャルメディア、動画、コメント、サポート、APIカテゴリにわたる100以上の事前設定済みサードパーティサービスのサポート
  • 自動検出とサービスごとの言語制限を備えた多言語サポート
  • 動的コンテンツのためのトークンサポートを備えたカスタマイズ可能な同意ダイアログテキスト
  • 自動同意を無効化し、明示的なユーザーアクションを必要とする高プライバシーモード
  • ブラウザのDo Not Track(DNT)リクエスト処理
  • 設定可能なCookie有効期限(1〜365日)
  • 再訪問者が設定を変更できるフローティングCookie管理アイコン
  • より整理された同意パネルのためのカテゴリ別サービスグループ化
  • オプションのサブモジュール(TacJS Log)による同意証明のログ記録
  • オプションのサブモジュール(TacJS Media)によるYouTube、Vimeo、Dailymotion埋め込みのCookie同意付きリモートメディア統合
  • アクティブなサービスのみを含む最適化されたJavaScriptファイルを生成する実験的機能
  • カスタムサードパーティサービスを追加するためのフックによる拡張性

Use Cases

基本的なGDPR Cookie同意

TacJSとtarteaucitronライブラリをインストールし、バナーの位置と外観を設定します。明示的な同意を必要とするためにハイプライバシーモードを有効にします。Cookieバナーは管理者以外のすべてのページに自動的に表示されます。

Cookie同意付きGoogle Analytics

「サービス追加」タブで「Google Analytics」サービスを有効にします。表示されるフィールドにGAトラッキングIDを入力します。訪問者が同意するまで、GAスクリプトの読み込みとトラッキングは開始されません。

同意付きYouTube動画

TacJS Mediaサブモジュールと「YouTube」サービスを有効にします。動画フィールドで「oEmbed content (TacJS integration)」フォーマッターを使用するように設定します。埋め込みYouTube動画は、訪問者が動画サービスを許可するまで同意プレースホルダーを表示します。

多言語Cookie同意

各サービスの設定で特定の言語ボックスをチェックすることで、言語ごとに異なるサービスを設定できます。設定翻訳システムを使用して、各言語の同意テキストをカスタマイズします。

監査用の同意証明

TacJS Logサブモジュールを有効にして同意イベントを記録します。概要タブでタイムスタンプとIPアドレス付きのすべての同意記録を表示し、GDPRコンプライアンス監査に使用できます。

カスタムサードパーティサービス

hook_tacjs_content_alter()を実装して設定フォームにカスタムサービスを追加し、hook_tacjs_services_alter()を実装してJavaScript実装を提供します。サービスは「サービス追加」タブに表示されます。

Tips

  • GDPRコンプライアンスのためにハイプライバシーモードを有効にします。これにより、スクロールやクリックによる暗黙の同意が無効になります
  • 実験的なアクティブサービスJavaScript生成機能を使用している場合は、サービスの有効化/無効化後にDrupalキャッシュをクリアしてください
  • ハッシュタグ機能(デフォルトは#tarteaucitron)を使用すると、訪問者がURLから任意のページでCookie設定にアクセスできます
  • 「Administer TacJS」権限はフィルタリングされていないテキスト入力を許可するため、信頼できる管理者にのみ付与してください
  • Cookieの有効期限をユーザー体験とプライバシー要件のバランスを考慮して設定します。デフォルトは365日です
  • Tokenモジュール統合を使用して、同意テキストに動的なサイト情報を含めることができます

Technical Details

Admin Pages 4
ダイアログ管理 /admin/config/system/tacjs/manage-dialog

Cookie同意バナーの外観、動作、詳細設定を構成します。これは訪問者への同意ダイアログの表示方法を制御するための主要な設定ページです。

サービスを追加 /admin/config/system/tacjs/add-services

Cookie同意管理用の個々のサードパーティサービスを有効化および構成します。サービスはカテゴリ別(広告、アナリティクス、ソーシャル、動画、コメント、サポート、API、その他)に整理されています。

テキストを編集 /admin/config/system/tacjs/edit-texts

Cookie同意バナーと管理パネルに表示されるすべてのユーザー向けテキストラベルをカスタマイズします。すべてのフィールドは動的コンテンツ用のDrupalトークンをサポートしています。

概要(TacJS Logサブモジュール) /admin/config/system/tacjs/overview

タイムスタンプ、IPアドレス、許可されたサービスを含む保存された同意証明記録を表示します。TacJS Logサブモジュールを有効にする必要があります。

権限 1
TacJS の管理

Cookie 同意ダイアログの設定管理、サードパーティサービスの有効化/無効化、同意テキストのカスタマイズを行います。この権限はフィルタリングされていないテキスト入力へのアクセスを許可します。信頼できる管理者にのみ割り当ててください。

Hooks 2
hook_tacjs_content_alter

カスタムのサードパーティサービスをTacJS設定フォームに追加できるようにします。デフォルトのtarteaucitron.jsライブラリに含まれていないサービスを追加する場合に、このフックを使用してください。

hook_tacjs_services_alter

生成されるアクティブサービスファイルに含まれるカスタムサービスのJavaScript定義を追加できるようにします。tarteaucitron.jsサービスの実装コードを提供する場合に、このフックを使用してください。

Security Notes 3
  • 「Administer TacJS」権限は、訪問者に出力されるフィルタリングされていないテキストの入力を許可します。XSS攻撃を防ぐため、この権限は完全に信頼できる管理者にのみ付与してください。
  • TacJS Logサブモジュールの同意ログには訪問者のIPアドレスが保存されます。プライバシーポリシーでこのデータ収集を開示し、適切なデータ保持ポリシーを実装してください。
  • サービス固有の識別子(トラッキングIDなど)は設定に保存され、ブラウザに渡されます。これらは秘密情報ではありませんが、プライバシーへの影響を考慮してください。