セッションリプレイはPendoのプロダクトで、アプリ内での訪問者の行動を視覚的に確認して、プロダクトでの訪問者の体験をよりよく理解できる機能です。
この記事では、セッションリプレイで利用できるプライバシー設定について説明します。
注:Pendo Replayは現在、非公開ベータ版プログラムを通じて一部のお客様に提供されています。
プライバシーの概要
管理者ユーザーは、[リプレイ設定(Replay Settings)]ページでアプリごとにリプレイのプライバシー設定を構成できます。このページにアクセスするには、[設定(Settings)]>[サブスクリプション設定(Subscription Settings)]>[アプリケーション(Applications)]>[リプレイ設定]に移動します。
当社では、個人情報(PII)や財務情報など、機密性が高い可能性のあるデータを保護するために、積極的なアプローチを取ることを強く推奨します。アプリのプライバシー要件を満たし、貴社のポリシーに準拠するために、リプレイのプライバシーを効果的に構成するためのオプションが複数備わっています。
- 初期プライバシー構成。貴社のアプリを異なるレベルでテキストをマスキングできる、3種類の初期プライバシー設定から選択します。これにより、PIIおよび秘密コンテンツが、アプリとユーザーの個別のニーズに基づいて適切に処理されるようになります。
- 詳細なプライバシールール。初期プライバシー構成を選択した後、CSSセレクタールールを利用してリプレイのプライバシー設定を微調整できます。マスク、マスク解除、またはブロックする特定の要素を定義できるため、リプレイでキャプチャされ表示される情報を正確に制御できます。
- オーディエンスキャプチャ。Pendoセグメントビルダーを使用して、リプレイのオーディエンスを定義できます。定義することで、必ず訪問者の特定のグループまたはサブセットのみが、リプレイで操作をキャプチャされるようになります。
この記事の次のセクションでは、各プライバシーオプションと、それらを活用してリプレイから貴重なインサイトを取得するのと同時にプライバシーを最大限保護する方法について詳しく説明します。
以下のサンプル画像では、テキストが表示されている箇所はマスキングされていない要素を、アスタリスクはマスキングされた要素を表しており、青緑色のプレースホルダー要素はブロックされた要素を表しています。
このプライバシー設定を補完するものとして、Pendoの厳格なセキュリティ基準とプライバシー基準もセッションリプレイに適用されます。弊社のセキュリティ慣行、コンプライアンス、およびプライバシー規約に関する詳細情報は、トラストセンター(Trust Center)でご確認いただけます。
重要:すべてのリプレイは14日後に自動的に削除されます。ただし、削除する必要がある機密データをセッションリプレイがキャプチャしたことが判明した場合は、セッションリプレイチームにお知らせください。
プライバシー構成の開始
セッションリプレイを有効にする前に、初期プライバシー構成(最大プライバシー、入力のみ、または最小プライバシー)を選択する必要があります。この初期プライバシーオプションは一度しか選択できません。選択したら、CSSセレクタールールを作成して、リプレイのプライバシーをさらに細かく構成できます。
それぞれの初期プライバシー構成について学ぶには、[Replay設定(Replay Settings)]ページで[例を表示(View example)]を選択するか、以下をお読みください。
アプリに最も適したプライバシー構成を決定したら、[選択(Select)]を選択します。この[プライバシー構成(Privacy Configuration)]セクションでは、対応するセレクタールールをテーブルに入力し、必要に応じて新しいCSSセレクタールールを作成できるようにします。
注:開始にどのプライバシーオプションを選択しても、タイプ属性に電話番号
、メールアドレス
、またはパスワード
が使用されているテキストのマスクを解除することはできません。
最大プライバシー
最大プライバシー(Maximum Privacy)設定では、画面上のすべてのテキストがアスタリスク(*)に置き換えられます。これは、このプライバシー構成を使用して、すべてのPII、入力フィールド、ユーザーが入力したテキストをマスクすることを意味します。
以下は、セレクタールールを作成しない場合の最大プライバシーの例です。
最大プライバシーは、当社が提供する最もプライバシーを重視したオプションであり、アプリに機密性の高いコンテンツが表示される場合にお勧めします。
入力のみ
[入力のみ(Inputs Only)]の構成では、入力内容に含まれるテキストがアスタリスク(*)に置き換えられます。つまり、ほとんどの入力ではテキストがすべてマスクされ、その他のテキストはすべて表示されるように処理されます。セレクタールールを使用して、追加のテキストをマスクまたはマスク解除することもできます。
以下の表は、[入力のみ]でマスクされるすべての入力タイプと、セレクタールールを使用してマスクを解除できるフィールドの詳細を示しています。
入力タイプ | マップされた要素 | マスク解除可否 |
color | <input type="color" /> |
可 |
date | <input type="date" /> |
可 |
日時-ローカル | <input type="datetime-local" /> |
可 |
<input type="email" /> |
いいえ | |
月 | <input type="month" /> |
可 |
number | <input type="number" /> |
可 |
パスワード | <input type="password" /> |
いいえ |
範囲 | <input type="range" /> |
可 |
検索 | <input type="search" /> |
可 |
select | <select><select/> |
可 |
電話番号 | <input type="tel" /> |
いいえ |
text | <input type="text" /> |
可 |
以下は、セレクタールールを作成しない場合の入力のみの例です。
入力のみは、入力に含まれるすべての機密コンテンツを保持するアプリ、または入力に含まれないすべての機密情報をマスクするセレクタールールを作成する予定の場合に推奨されます。
最小プライバシー
最小プライバシー(Minimum Privacy)設定では、メールアドレス、電話番号、およびパスワードに入力されたテキストのみがアスタリスク(*)に置き換えられます。これは、入力の内外に含まれる他のすべてのテキストが公開されることを意味します。セレクタールールを使用して、追加のテキストをマスクすることもできます。
以下の表は、[最小プライバシー]でマスクされるすべての入力タイプと、セレクタールールを使用してマスクを解除できるフィールドの詳細を示しています。
入力タイプ | マップされた要素 | マスク解除可否 |
<input type="email" /> |
いいえ | |
パスワード | <input type="password" /> |
いいえ |
電話番号 | <input type="tel" /> |
いいえ |
以下は、セレクタールールを作成しない場合の最小プライバシーの例です。
機密性の高いコンテンツがほとんどないアプリ、またはすべての機密性の高い情報をマスクするセレクタールールを作成する予定がある場合は、最小プライバシーをお勧めします。
セレクタールール
初期プライバシーオプションを選択したら、CSSセレクターを使用してニーズに合うセレクタールールを作成できます。セレクタールールを使用すると、[Replay設定]ページの[プライバシー構成]セクションを使用して、ブロックされた領域内の操作を含む要素をマスク、マスク解除するか、ブロックしてまったくキャプチャされないようにできます。
この表には、マスクを解除できないパスワード、電話番号、メールアドレスの入力タイプのCSSセレクターと、選択した初期プライバシーオプションに基づくその他のセレクターが事前に設定されています。
- まず、表の上にある[セレクタールールを作成(Create Selector Rule)]を選択し、[ルールを作成(Create Rule)]ダイアログを開きます。
- [セレクター]に、関連するCSSセレクターを入力します。ここに入力する値を理解するのに支援が必要な場合は、Mozillaの[CSSセレクター]のページが役に立ちます。
- 適用するルールの種類を選択します。
- 要素のマスク解除。セッションリプレイでは、指定されたCSSセレクターに関連付けられた操作をキャプチャし、テキストが訪問者に表示されるとおりに表示します。
- 要素をマスク。セッションリプレイは、指定されたCSSセレクターに関連付けられた操作をキャプチャし、テキストをアスタリスク(*)に置き換えます。
- 要素をブロック。セッションリプレイは、指定されたCSSセレクターに関連付けられた操作をキャプチャせず、要素を青緑色のプレースホルダーブロックに置き換えます。
- [ルールを保存(Save Rule)]を選択します。一度保存されると、そのルールはテーブルに入力され、以降のすべてのリプレイに適用されます。
- 新しいセレクタールールごとに手順1~4を繰り返します。
すべての新しいセレクタールールとルールの更新が完全に処理されるまでに約10分かかります。新しいルールまたはルールの更新が処理されるときに訪問者がアプリケーションを使用している場合、訪問者が現在のページを更新するか、新しいページに移動するまでルールが有効にならない可能性があります。
重要:攻撃者は、アプリのドキュメントオブジェクトモデル(DOM)を変更して、訪問者のIPアドレスを抽出する目的で外部URLを含む画像をロードする可能性があります。これにより、セキュリティの脆弱性が生じます。
これを防ぐには、上記の手順に従ってCSSセレクターに「img」と入力し、ルールタイプに[要素をブロック(Block Element)]を選択することで、セッションリプレイによる画像のキャプチャをブロックできます。
セグメント化
大勢のオーディエンスに対してセッションリプレイを有効にする前に、パフォーマンスを監視し、プライバシールールが貴社のポリシーと一致していることを確認できるよう、少数のユーザーまたはアカウントに対してのみ有効にすることをお勧めします。
セグメンテーションに関しては、[Replay設定]ページの[オーディエンスキャプチャ(Audience Capture)]セクションに2つのオプションがあります。
- カスタムセグメントを作成。このセグメントをセグメントリストに表示せずに、社内の管理者以外のユーザーが編集できるようにしたい場合は、この方法をお勧めします。
- 既存のセグメントを選択。このセグメントをPendo全体の一般セグメントリストに表示したくない場合は、このオプションはお勧めできません。
デフォルトのセグメントは訪問者全員に設定されています。セグメントを更新する準備ができたら、[全員(Everyone)]を選択し、ドロップダウンメニューからオプションを選択します。Pendo全体のセグメントリストにセッションリプレイのセグメントを表示したくない場合は、[カスタムセグメント(Custom Segment)]にカーソルを合わせ、[編集(Edit)]アイコンを選択してカスタムセグメントを作成します。
適切なセグメントを適用し、ニーズに合ったプライバシー構成が設定されていることを確認したら、セッションリプレイを有効にする準備は完了です。段階的なガイダンスおよびセッションリプレイ有効化後の動作については、セッションリプレイを参照してください。
既存のプライバシー設定
Pendoには、セッションリプレイに関連する既存のプライバシー構成と設定があります。
コンテンツセキュリティポリシー(CSP)の構成
アプリがCSPを使用している場合、以下の2つのディレクティブを使用して設定を更新することが不可欠です。これにより、すべての訪問者のアクティビティをキャプチャし、CSPとセッションリプレイの競合によるアプリの品質低下を防ぐことができます。
ディレクティブ | ホスト | 説明 |
connect-src |
CNAMEが設定されていない場合は、 CNAMEが設定されている場合は、data.pendo.example.comのように |
このエントリにより、イベント通信が可能になります。 |
worker-src |
blob: |
このエントリにより、Pendoエージェントはworkerスレッドを開始して、リプレイのキャプチャデータを圧縮して送信できるようになり、アプリケーションのパフォーマンスへの影響が最小限に抑えられます。 |
除外リスト
セッションリプレイは、サブスクリプション設定で定義された既存の除外リストエントリに従います。訪問者やアカウントがサブスクリプションレベルの除外リストに含まれている場合、その訪問者やアカウントのリプレイデータはキャプチャされますが、Pendoアプリケーションには表示されません。
処理禁止(Do Not Process)設定
セッションリプレイは、[訪問者の詳細(Visitor Details)]および[アカウントの詳細(Account Details)]ページの[詳細(Details)]セクションで、特定の訪問者とアカウントに対して設定された[処理禁止(GDPR)(Do Not Process (GDPR))]設定に従います。この設定は、Pendoが特定の訪問者やアカウントのイベントを収集したり、ガイドを表示したりすることを防止します。この設定を有効にすると、Pendoはその訪問者やアカウントのリプレイをキャプチャしません。