セッションリプレイを設定する際は、個人情報(PII)や財務情報など、機密性の高い可能性のあるデータを保護するために、積極的なアプローチを取ることを強くお勧めします。
アプリのプライバシー要件を満たして貴社のポリシーに準拠するために、リプレイのプライバシー構成オプションは複数備わっています。
- 初期プライバシー構成。ウェブアプリには3種類のプライバシー設定、モバイルアプリには2種類のプライバシー設定があり、それぞれがアプリに対して異なるレベルのテキストマスキングを提供します。これにより、PIIおよび秘密コンテンツが、アプリとユーザーの個別のニーズに基づいて適切に処理されるようになります。
- 詳細なプライバシールール。ウェブアプリの場合、開始時のプライバシー設定を選択した後に、CSSセレクタールールを使用して特定の要素をマスク、マスク解除、またはブロックします。これらのルールは「Pendoリプレイ設定]から作成するか、Visual Design Studioでフィーチャーにタグ付けしながら直接作成することができます。モバイルアプリでは、画像キャプチャをブロックするか許可するかを選べます。CSSセレクタールールを細かくマスキングやブロッキングするためのサポートはウェブアプリのみです。
- オーディエンスキャプチャ。Pendoセグメントビルダーを使用して、リプレイのオーディエンスを定義できます。定義することで、必ず訪問者の特定のグループまたはサブセットのみが、リプレイで操作をキャプチャされるようになります。
この記事の以下のセクションでは、各プライバシーオプションとその設定方法について説明します。
以下のサンプル画像では、テキストが表示されている箇所はマスキングされていない要素を、アスタリスクはマスキングされた要素を、ストライプのプレースホルダー要素はブロックされた要素を表しています。
このプライバシー設定を補完するものとして、Pendoの厳格なセキュリティ基準とプライバシー基準もセッションリプレイに適用されます。弊社のセキュリティ慣行、コンプライアンス、およびプライバシー規約に関する詳細情報は、トラストセンター(Trust Center)でご確認いただけます。
重要:セッションリプレイで機密データを取得し、有効期限が切れる前に削除する必要がある場合は、サポートチームにお問い合わせください。リプレイは30日後に自動的に削除されます。ただし、サブスクリプションに延長リテンションが含まれている場合は、90日後に削除されます。リプレイをクリップとして保存すると、手動で削除しない限り、1年間利用可能です。
リプレイ設定ページにアクセスする
サブスクリプション管理者は、個々のアプリケーションごとにほとんどのセッションリプレイプライバシー設定を「Pendoリプレイ設定」ページで設定します。このページにアクセスする手順は以下のとおりです。
- [設定(Settings)]>[サブスクリプション設定(Subscription Settings)]の順に進みます。
- [アプリケーション(Applications)]タブを選択し、リストからアプリを開きます。
- [リプレイ設定]タブを選択します。
プライバシー構成の開始
セッションリプレイを有効にする前に、初期プライバシー構成(最大プライバシー、入力のみ、または最小プライバシー)を選択する必要があります。この初期プライバシーオプションは一度しか選択できません。
選択した後、リプレイのプライバシーをさらに設定することができます。ウェブアプリの場合はCSSセレクタールールを作成します。モバイルアプリの場合は画像をキャプチャするかどうかを選択します。
それぞれの初期プライバシー構成について学ぶには、[リプレイ設定(Replay Settings)]ページで[例を表示(View example)]を選択するか、以下をお読みください。
Pendoのデータフィルタリングはクライアント側でローカルに実行されます。セッションリプレイが訪問者のインタラクションを収集する際、選択したプライバシー設定を即座に適用し、関連データをマスクまたはブロックします。これにより、データがPendoに送信される前に確実に機密情報が削除されます。
どのプライバシー設定を選択した場合でも、以下の例外が適用されます。
-
HTML属性はマスクされません。これには、
placeholder、alt、titleの属性が含まれます。これらの属性に機密データが含まれている場合は、セレクタールールを使用して要素を明示的にマスクまたはブロックする必要があります。 -
特定の入力タイプのマスクは解除できません。
tel、email、password、またはnumberタイプの属性を持つ入力欄に入力されたテキストは常にマスクされ、セレクタールールを使用してもマスクを解除することはできません。 - 音声と動画の要素はデフォルトでブロックされます。それらの要素をリプレイに含めるには、関連する要素をブロックしているセレクタールールを削除する必要があります。
アプリに最も適したプライバシー構成を決定したら、[選択]を選択します。ウェブアプリのプライバシーを管理している場合、[プライバシー設定]セクションの対応するセレクタールールで表を埋め、新しいCSSセレクタールールを必要に応じて作成することができます。
最大プライバシー
最大プライバシー(Maximum Privacy)設定では、画面上のすべてのテキストがアスタリスク(*)に置き換えられます。これは、このプライバシー構成を使用して、すべてのPII、入力フィールド、ユーザーが入力したテキストをマスクすることを意味します。
以下は、セレクタールールを作成しない場合の最大プライバシーの例です。
最大プライバシーは、当社が提供する最もプライバシーを重視したオプションであり、アプリに機密性の高いコンテンツが表示される場合にお勧めします。
入力のみ
[入力のみ(Inputs Only)]の構成では、入力内容に含まれるテキストがアスタリスク(*)に置き換えられます。つまり、ほとんどの入力ではテキストがすべてマスクされ、その他のテキストはすべて表示されるように処理されます。ウェブアプリのセレクタールールを使用して、追加のテキストをマスクまたはマスク解除できます。
以下の表は、[入力のみ]でマスクされるすべての要素と、セレクタールールを使用してマスクを解除できるフィールドの詳細を示しています。
| 要素タイプ | マッピングされたセレクター | マスク解除可否 |
| 色入力 | input[type='color'] |
可 |
| 日付入力 | input[type='date'] |
可 |
| 日時入力 | input[type='datetime-local'] |
可 |
| 編集可能なコンテンツ領域 | [contenteditable=true] |
可 |
| メール入力 | input[type='email'] |
いいえ |
| 月入力 | input[type='month'] |
可 |
| 数字入力 | input[type='number'] |
いいえ |
| パスワード入力 | input[type='password'] |
いいえ |
| 範囲入力 | input[type='range'] |
可 |
| 検索入力 | input[type='search'] |
可 |
| ドロップダウン選択 | select |
可 |
| 電話番号入力 | input[type='tel'] |
いいえ |
| 単一行のテキスト入力 | input[type='text'] |
可 |
| 複数行のテキスト入力 | textarea |
可 |
| 時間入力 | input[type='time'] |
可 |
注:数値入力欄は数値のみを受け付けるため、マスクされたテキストはPendoリプレイではアスタリスクではなく0000000000と表示されます。値は引き続きマスクされています。
以下は、セレクタールールを作成しない場合の入力のみの例です。
入力のみは、入力に含まれるすべての機密コンテンツを保持するアプリ、または入力に含まれないすべての機密情報をマスクするセレクタールールを作成する予定の場合に推奨されます。
最小プライバシー(ウェブアプリのみ)
最小プライバシー(Minimum Privacy)設定では、メールアドレス、電話番号、およびパスワードに入力されたテキストのみがアスタリスク(*)に置き換えられます。これは、入力の内外に含まれる他のすべてのテキストが公開されることを意味します。セレクタールールを使用して、追加のテキストをマスキングすることもできます。最小プライバシーはウェブアプリでのみ利用可能です。
以下の表は、[最小プライバシー]でマスクされるすべての入力タイプと、セレクタールールを使用してマスクを解除できるフィールドの詳細を示しています。
| 入力タイプ | マッピングされたセレクター | マスク解除可否 |
<input type="email" /> |
いいえ | |
| パスワード | <input type="password" /> |
いいえ |
| 電話番号 | <input type="tel" /> |
いいえ |
以下は、セレクタールールを作成しない場合の最小プライバシーの例です。
機密性の高いコンテンツがほとんどないアプリ、またはすべての機密性の高い情報をマスクするセレクタールールを作成する予定がある場合は、最小プライバシーをお勧めします。
セレクタールール(ウェブアプリのみ)
開始プライバシーオプションを選択した後、Pendoリプレイのプライバシー設定をさらに細かくするためにセレクタールールを作成できます。セレクタールールを使えば、特定の要素をマスク、アンマスク、またはブロックできます。セレクタルールは以下の2つの方法で作成できます。
- Visual Design Studioからタグ付けされたFeatureを選択することで、(CSSの知識は必要ありません。)
- 「Pendoリプレイ設定」ページから、CSSセレクターを手動で入力します。
CSSセレクタにあまり馴染みがない場合は、Visual Design Studioから始めてみてください。フィーチャーのタグルールに関連付けられたセレクターを自動的に生成するため、手動で作成する必要はありません。
すべての新しいセレクタールールは、完全に処理されるまでに約10分かかります。新しいルールが処理された時点で訪問者がアプリケーションを使用している場合、訪問者が現在のページを更新するか、新しいページに移動するまで、ルールは有効にならない可能性があります。
注:セレクタールールはウェブアプリ専用です。モバイルアプリはCSSセレクタをサポートしていません。モバイルPendoリプレイで画像を許可またはブロックするには、「画像のブロック」設定を使用してください。ウェブ上では、ブロックされた要素はティール色のプレースホルダーブロックとして表示されます。モバイルでは、ブロックされた画像がグレーのボックスとして表示されます。
ビジュアルデザインスタジオでタグ付け
Webアプリにタグを付ける際に、Visual Design Studioから直接Pendoリプレイプライバシールールを作成できます。フィーチャーにプライバシールールを適用すると、Pendoはそのフィーチャーの既存のタグルールをセレクターとして使用します。CSSセレクターを直接記述したり編集することはありません。フィーチャーのタグルールが変更されると、プライバシールールもそれに合わせて更新されます。
注:このオプションはウェブアプリでのみ利用可能です。一部のフィーチャーセレクターはリプレイプライバシールールに対応していません。:contains()ステートメントやシャドウDOMセレクターなどです。フィーチャーがサポートされていないセレクターを使用している場合、その要素に対して「リプレイプライバシー設定」セクションは利用できません。
Visual Design Studioからリプレイプライバシールールを作成するには:
- Visual Design Studio を開くには、[プロダクト(Product)]>[フィーチャー(Features)]に移動し、右上の[タグ付け(Tag Features)]を選択して、使用する起動モードを選択します。詳細については、フィーチャーのタグ付けを参照してください。
- 新しいフィーチャーを作成するか、タグ付けされたフィーチャーのリストから既存のフィーチャーを選択し、[フィーチャーの編集(Edit feature)]を選択します。
- [リプレイのプライバシー設定(Replay privacy configuration)]フィールドまでスクロールし、要素のプライバシールールを選択します。
- 要素のマスク解除。セッションリプレイは、やり取りを記録し、訪問者に見せるテキストを表示します。
- 要素をマスク。セッションリプレイはやり取りを記録しますが、テキストはアスタリスク(*)に置き換えられます。
- 要素をブロック。セッションリプレイはその要素をプレースホルダーブロックに置き換え、インタラクションを記録しません。
- [保存(Save)]または[変更を保存(Save changes)]を選択します。
重要:そのフィーチャーが特定のページにのみ適用されるようにタグ付けされている場合、このルールはタグ付けしたページだけでなく、その要素が存在するすべてのページに適用されます。セーブ前にリプレイプライバシー設定欄に警告が表示されます。
CSSセレクターによるルールの作成
この表には、マスクを解除できないパスワード、電話番号、メールアドレスの入力タイプのCSSセレクターと、選択した初期プライバシーオプションに基づくその他のセレクターが事前に設定されています。
Visual Design Studioで作成されたルールとは異なり、CSSセレクタルールではタグ付けされたフィーチャーに依存しないカスタムセレクターを定義できます。
- テーブルの右上で、テーブル上部の[+ セレクタールールを作成(+ Create selector rule)]を選択し、[ルールの作成(Create rule)]ダイアログを開きます。
- [セレクター]に、関連するCSSセレクターを入力します。ここに入力する値を理解するのに支援が必要な場合は、Mozillaの[CSSセレクター]のページが参考になるかもしれません。
- 適用するルールの種類を選択します。
- 要素のマスク解除。セッションリプレイでは、指定されたCSSセレクターに関連付けられた操作をキャプチャし、テキストが訪問者に表示されるとおりに表示します。
- 要素をマスク。セッションリプレイは、指定されたCSSセレクターに関連付けられた操作をキャプチャし、テキストをアスタリスク(*)に置き換えます。
- 要素をブロック。セッションリプレイは、指定されたCSSセレクターに関連付けられた操作をキャプチャせず、要素を青緑色のプレースホルダーブロックに置き換えます。
-
[ルールを保存(Save Rule)]を選択します。保存した後、そのルールはテーブルに入力され、以降のすべてのリプレイに適用されます。
- 新しいセレクタールールごとに手順1~4を繰り返します。
注: 画像要素によるIPアドレス露出のリスクを減らすために、CSSセレクタールールを使って画像キャプチャをブロックできます。CSSセレクターにimgと入力し、ルールタイプとして「ブロック要素」を選択します。
ルールの優先順位付け
Pendoでは、特定の優先順位付け手法を使用して、さまざまなルールとDOMツリーの要素とを一致させるような事例に対応しています。この場合、優先順位は以下のようになります。
- ブロック(Block):最優先されるルールです。特定の要素をブロックするルールがある場合、他の競合するルールよりも優先され、条件に一致するコンテンツは必ずブロックされます。
- マスク(Mask):ブロックの次に優先されるルールです。複数のルールが同じ要素に対して設定され、そのうちの1つがマスクルールである場合、より優先度の高いブロックルールが存在する場合を除き、マスクルールが適用されます。
- マスク解除(Unmask):最も優先度の低いルールです。ある要素に対してマスクルールとマスク解除ルールの両方が設定されている場合、ブロックルールが存在する場合を除き、マスクルールが優先的に適用され、要素はマスクされたままになります。
画像キャプチャ(モバイルアプリのみ)
初期プライバシーオプションを選択した後、[プライバシー構成]セクションの[画像をブロック]トグルを使用して、モバイルアプリのセッションリプレイに画像を含めるかどうかを決定してください。
オンにすると、画像はブロックされ、Pendoリプレイでは灰色のボックスとして表示され、ブロックされた領域内のインタラクションは収集されません。
オフのとき、画像は許可され、Pendoリプレイで正常に表示されます。
セグメント化
大勢のオーディエンスに対してセッションリプレイを有効にする前に、パフォーマンスを監視し、プライバシールールが貴社のポリシーと一致していることを確認できるよう、少数の訪問者またはアカウントに対してのみキャプチャすることをお勧めします。
セグメンテーションに関しては、[リプレイ設定]ページの[リプレイキャプチャ設定(Replay capture settings)]セクションに、オーディエンスを指定するための2つのオプションがあります。
- カスタムセグメントを作成。このセグメントをセグメントリストに表示せずに、社内の管理者以外のユーザーが編集できるようにしたい場合は、この方法をお勧めします。
- 既存のセグメントを選択。Pendo全体のセグメントリストに表示してほしくない場合は、このオプションはおすすめしません。
デフォルトのセグメントは訪問者全員に設定されています。セグメントを更新する準備ができたら、[全員(Everyone)]を選択し、ドロップダウンメニューからオプションを選択します。セッションリプレイセグメントをPendo全体のセグメントリストに表示したくない場合は、[カスタムセグメント(Custom Segment)]にカーソルを合わせて[編集(Edit)]アイコンを選択し、カスタムセグメントを作成します。対象者の更新が完全に処理されるまでに最大10分かかることがあります。
適切なセグメントを適用し、ニーズに合ったプライバシー構成が設定されていることを確認したら、セッションリプレイを有効にする準備は完了です。段階的なガイダンスについては、「セッションリプレイを有効にする」を参照してください。
注意:Pendoリプレイを視聴するには、ユーザーの役割にPendoリプレイユーザー権限が割り当てる必要があります。管理者以外のユーザーがPendoリプレイライブラリにアクセスするには、この権限が必要です。管理者は「設定」 > 「ユーザーとチーム」でこの権限を割り当てることができます。
オーディエンスキャプチャの精度についてご質問がある場合は、リプレイが見つからないおよび想定外のリプレイの記事を参照してください。
既存のプライバシー設定
Pendoには、リプレイのキャプチャおよび可視性に影響する可能性のあるプライバシーおよびその他の設定があります。
コンテンツセキュリティポリシー(CSP)の構成
アプリがCSPを使用している場合、以下の2つのディレクティブを使用して設定を更新することが不可欠です。これにより、すべての訪問者のアクティビティをキャプチャし、CSPとセッションリプレイの競合によるアプリの品質低下を防ぐことができます。
| ディレクティブ | ホスト | 説明 |
connect-src |
CNAMEが設定されていない場合は、 CNAMEが設定されている場合は、 |
このエントリにより、イベント通信が可能になります。 |
worker-src |
blob: |
このエントリにより、Pendo Web SDKはworkerスレッドを開始して、リプレイのキャプチャデータを圧縮して送信できるようになり、アプリケーションのパフォーマンスへの影響が最小限に抑えられます。 |
除外リストのエントリ
セッションリプレイは、サブスクリプション設定で定義された既存の除外リストエントリを尊重します。訪問者やアカウントがサブスクリプションレベルの除外リストに含まれている場合、除外されたアカウントや訪問者を含むセグメントを使用しない限り、それらの訪問者やアカウントのリプレイデータは収集されますが、Pendoアプリケーションには表示されません。
処理禁止(Do Not Process)設定
セッションリプレイは、[訪問者の詳細(Visitor Details)]および[アカウントの詳細(Account Details)]ページの[詳細(Details)]セクションで、特定の訪問者とアカウントに対して設定された[処理禁止(GDPR)(Do Not Process (GDPR))]設定に従います。この設定は、Pendoが特定の訪問者やアカウントのイベントを収集したり、ガイドを表示したりすることを防止します。この設定を有効にすると、Pendoはその訪問者やアカウントのリプレイをキャプチャしません。
詳細については、DNPを使用して追跡からオプトアウトするを参照してください。
収集を特定のドメインに制限する
セッションリプレイセグメントを「最新のサーバー名」ルールを追加するように修正してください。セッションリプレイは、そのルールに合致するドメインからのイベントのみをキャプチャします。
セグメントの設定が間違っていたり、意図せず変更された場合、セッションリプレイは不要なドメインからのイベントをキャプチャすることがあります。これを避けるために、インストールスクリプトでセッションリプレイをオフにすると良いですが、これは開発者の時間が必要です。
特定のページや環境での取得を防ぐ
特定のページや環境でセッションリプレイをオフにするには、 WebSDKドキュメントに記載されているオプションを使ってPendoのインストールスクリプトを修正できます。