getsentry / getsentry/sentry-react-native

Mobile App Session Replay: Ability to disable or mask touch capture per screen

オープン
#6,299 コメント 8 件 リアクション 0 件 担当者 0 名 GitHub で見る
Feature React-Native Replays Security
主要言語
TypeScript
スター
1.8k
フォーク
366
平均マージ
1日 5時間
マージ済み PR(30日)
93

説明

### Problem Statement

Currently, mobile Session Replay captures raw tap and drag gesture coordinates globally via the native touch tracker. While this is incredibly useful for debugging user flows, it introduces security/privacy risk on sensitive screens. Even when the mask strategy is strict and the keyboard doesn't show, the global touch overlay still records and displays the exact coordinates of user taps/drags over the relay. If a user is typing on a standard QWERTY keyboard or a fixed-layout numeric keypad, an observer can easily deduce inputs (passwords, PINs, or PII etc) just by looking at the tap indicator positions on the masked replay.

I would like to see the ability to drop touches for components/views.

Image

### Solution Brainstorm

- Extend `Sentry.Mask` with a prop to disable touches? Or maybe a new wrapper `Sentry.MaskTouches`?
- Failing that, we'd be better off with a global way to pause/unpause or just don't record any at all

### Are you willing to submit a PR?

None

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、ネイティブのタッチトラッカーと既存の Sentry.Mask API を追跡します。コンポーネント単位でのマスキング案、Sentry.MaskTouches ラッパー、グローバルな一時停止オプションを比較します。影響を受けるモバイルプラットフォームで動作が検証され、機密性の高い画面やコンポーネントが Session Replay にタップおよびドラッグの座標を公開しなくなれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
react-native, typescript
領域
mobile-dev, security
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
48/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。