プライバシー規制の変更にも慌てない。New Relic Browser Consent Modeで、実装をより柔軟に、スマートに。

ビジネスを展開する地域を問わず、テレメトリデータの収集およびNew Relicへの送信の可否を、ユーザー自身が選択できる環境を提供します。

最終更新日 所要時間:約 5分

New Relicは、ビジネスを支える重要なWebサイトの安定稼働とパフォーマンス維持において、多くのお客様から信頼をいただいています。我々のブラウザ監視(Browser monitoring)ソリューションは、ブラウザにおけるユーザー体験全体を可視化することで、フロントエンドのパフォーマンス改善の優先順位付けを容易にし、ユーザーに影響を与える問題の迅速なデバッグと解決を可能にします。この高度な可視化により、ページの読み込み時間の短縮、スムーズな操作性、そしてコンバージョン率の向上が実現します。

これらの機能は、New Relic Browser のエージェントによって提供されています。本エージェントは、個人を特定できる機密データを収集・保存することなく、Webサイトが正常に稼働しているかを確認できるよう設計されています。そのため、ユーザーのプライバシー保護やコンプライアンス要件が厳格化する昨今においても、安全にWebサイト監視をご活用いただけます。

今回新たに提供を開始した「Browser Consent Mode」は、コンプライアンスを重視するお客様向けの機能です。本機能を利用することで、ブラウザエージェントの実装をカスタマイズし、適切なコンプライアンスを維持した状態でデータを収集することが可能になります。

具体的には、Consent Modeはブラウザ監視の設定オプションとして機能し、Webサイトのユーザー自身が、自分のセッションに関するテレメトリデータの送信を開始、または停止できるようにします。プライバシーポリシーのオプトイン画面や同意管理モーダル、各種プラグインと連携することで、「ブラウザエージェントによるデータの収集・送信・処理を許可するかどうか」のコントロール権をユーザーに提供できます。

プライバシー保護を前提としたConsent Modeは、サイト訪問者の「同意ステータス(パフォーマンスデータをNew Relicに送信することへの同意状況)」をNew Relic側へ連携する仕組みを備えています。これにより、絶えず変化する法規制のなかでも、ビジネス要件に合わせた柔軟な実装が可能となります。各地域の規制を遵守するために「同意(コンセント)メカニズム」を導入する必要がある場合、本機能がその要件を満たす強力な手段となります。

New Relicの目的は、お客様のビジネス要件を満たすために必要なツールと設定オプションを提供することです。本記事では、フロントエンドエンジニアの皆様に向けて、このBrowser Consent Modeの具体的な活用方法(実装手順)を解説します。

ステップ1:アプリケーション設定でConsent Modeを有効にする

対象となるブラウザアプリケーションの「App settings(アプリケーション設定)」ページにアクセスし、「Turn on consent(同意機能)」をオンにして有効化します。

または、New RelicのGraphQL APIである「NerdGraph」経由でこの設定を有効化することも可能です。その場合は、browserSettingsオブジェクトのbrowser_consent_modeプロパティに対してミューテーションクエリ(mutation query)を実行します。具体的なクエリの例は以下の通りです。

ステップ2:オプトインの仕組みを実装する

ユーザーにデータの送信可否(オプトイン)を選択してもらうためのUIは、ご利用のフレームワークや要件に合わせて、プラグイン、モーダル、各種コンポーネントなどから選択・実装していただく必要があります。一般的には、Webサイトに同意管理バナーのツールを導入し、ユーザーの選択状態を表示・保存する形が一般的です。

このようなUIを組み込んだ後、ユーザーの選択結果に応じて、New Relicの新しいブラウザAPIである consent() を引数とともに呼び出します。

具体的には、実装した画面を通じて「テレメトリデータの送信に同意するか」をユーザーに尋ね、ユーザーが「同意する」ボタンをクリックしたとします。この場合、その同意状態をNew Relicに伝えるために consent() APIを実行します(※このAPIの引数である accept パラメータは、デフォルトで true に設定されています)。

同意(オプトイン)が完了した後の挙動は、Browser Agent自身のautoStartオプション設定状態によって異なります。

  • autoStart: true の場合: 同意が得られた後、対象のブラウザ機能は自動的にNew Relicへのデータ送信を開始します(データのハーベストサイクル(収集間隔)についてはこちらをご参照ください)。
  • autoStart: false の場合: データ送信が保留(遅延)されている状態のため、エージェント機能を動かしてデータ送信を開始するには、別途 start() APIを呼び出す必要があります。

逆に、ユーザーが「同意しない(拒否する)」ボタンをクリックした場合は、consent(false) を呼び出します。これにより、ブラウザエージェントはネットワーク経由でのテレメトリデータ送信を一切行わなくなります。

Temp css fix