1. 程式人生 > >Sentry過濾敏感資料

Sentry過濾敏感資料

與任何第三方服務一樣,瞭解向Sentry傳送的資料非常重要,並且在相關時確保敏感資料永遠不會到達Sentry伺服器,或者至少不會儲存。我們解決這個問題的主要方法是一種悲觀的觀點:你不小心將資料傳送到Sentry,你想要刪除它,或者你想確保它不被儲存。

一、服務端過濾

在專案設定中,您將找到Data Scrubber選項。預設情況下啟用此功能,我們強烈建議您保持這種狀態。啟用它後,Sentry將清除以下內容:

  • 看起來像包含信用卡的值(使用基本正則表示式)
  • 包含以下任何值的鍵:password,secret,passwd,api_key,apikey,access_token,auth_token,credentials,mysql_pwd,stripetoken,card[number]
  • 任何與您已新增到“專案設定”中的其他欄位列表中的值匹配的鍵。

您可以選擇擴充套件伺服器清理的金鑰,以及防止儲存IP地址。如果您關注PII並使用我們的瀏覽器JavaScript SDK,後者尤其重要。

此外,某些SDK還允許您在類似模式之後提前過濾資料。

二、限制電子郵件

公司內部的合規性通常意味著資料只能通過SSL傳輸並以安全的方式儲存,這一點很常見。這出現的一個常見區域是電子郵件通知。預設情況下,Sentry將傳送大量資料作為問題通知的一部分。在某些情況下,該資料可以是原始碼或其他使用者資料。

要解決此問題,您可以在組織中啟用“增強隱私”設定。這可以通過訪問組織的儀表板,單擊“設定”,然後在那裡勾選選項來完成。完成後,系統的一部分(主要是電子郵件通知)將立即反映此更改,並開始將資料限制為僅基本屬性,例如問題標題和說明。

三、刪除資料

如果您不小心將敏感資料傳送到伺服器,那麼您可能不會想要將其留在那裡。刪除時需要注意以下幾點:

  • 如果將其作為標記值傳送,則刪除事件是不夠的。您可以訪問專案設定,在標籤下,您將找到永久刪除給定標籤的任何相關資料的方法。
  • 如果您只需要擦除單個事件,則可以通過訪問彙總詳細資訊頁面並選擇“刪除”來批量刪除彙總下的所有抽樣事件。
  • 如果將稀疏事件傳送到專案(可能是所有專案),則唯一的選擇是刪除專案並重新建立它。請記住,這將撤消API憑據,因此您可能希望以相反的順序執行此操作。

四、SDK中的自定義事件處理

在SDK中,您還可以設定傳送前的函式,該函式在傳送事件之前呼叫,可用於修改事件和刪除錯誤資料。有關更多資訊,請參閱篩選事件。

五、使用中繼進行自定義事件處理

此外,您還可以選擇在應用程式和Sentry之間放置代理,以便從事件中刪除敏感資料。