由 AI 翻譯,尚未經過社群審閱。 閱讀英文版

部落格 · 2023年10月20日 · Steve Simpson · 安全

Salesforce 欄位級安全(FLS):細節與策略

歡迎來到安全系列的又一期。今天,我們將深入探討 Salesforce 欄位級安全(FLS)這一概念。當你已經授予了對某個物件的存取權限,但又想控制該物件中特定欄位的可見性時,這項功能必不可少。

1. 引言

欄位級安全是關於控制誰可以看到物件上的某些欄位。設想一個物件上有一個存放機密資料的欄位。我們如何確保只有特定的使用者能看到這些資料?

2. 場景

為了說明,我們用一個關於「飛行員 Paul」的假設例子。我們有一個名為「Airport」的物件。在這個物件中,有一個叫「Security Status」的欄位。我們的目標是隻允許 Paul 存取這個欄位,並限制其他人。

圖示:Airport 物件上 Security Status 欄位的欄位級安全策略:只通過需要它的權限集授予存取權限;使用條件欄位可見性(欄位仍會出現在清單檢視、報表和搜尋中);或者把欄位鎖住,通過一個 Lightning Web 元件來顯示它

3. 授予存取權限

首先,在「Airport」的物件管理員中,我們建立一個新欄位。在我們的例子中,它是一個名為「Security Status」的挑選清單,選項有「Normal」、「Elevated」和「Lockdown」。

不要在設定檔層面授予存取權限,而是轉向權限集層面的安全。唯一的例外是系統管理員,他仍然可以擁有設定檔層面的存取權限。

因此,預設情況下,只有系統管理員能看到這個新欄位。

4. 權限集

要給 Paul 授予存取權限:

  1. 進入權限集。
  2. 檢視 Paul 的權限集群組。在裡面,你會找到一個名為「Airport View」的組(這是在之前的一次演示中建立的)。
  3. 調整這個組中的物件設定,提供對「Security Status」欄位的讀取權限(使用標準的欄位級安全)。

按照這些步驟操作後,Paul 以及任何擁有「Airport View」權限集的人,現在都能在他們有權存取的任何機場記錄上看到安全狀態了。

5. 用動態表單有條件地顯示欄位

[caption id="" align=“alignnone” width=“3002”]可以在單個欄位層面新增一個篩選條件 可以在單個欄位層面新增一個篩選條件 [/caption]

如果你想有條件地顯示這個欄位:

  1. 進入 Lightning 頁面生成器。
  2. 升級為使用動態表單。
  3. 給「Security Status」欄位新增一個篩選條件。例如,只在機場類型為「Large」時才顯示這個欄位。

請記住,這種方法只會在使用者介面上隱藏欄位,但這個欄位仍然可以在清單檢視、報表、儀表板和全域搜尋中被存取。所以,這並不是一種能確保資料絕對保密的萬無一失的方法。

6. 用 Lightning Web 元件(LWC)實現更高階的安全

如果確實需要嚴格的欄位級安全:

不要授予標準的欄位級安全。因為如果使用者對這個欄位擁有 FLS(欄位級安全)存取權限,他們就可能通過其他途徑存取它,比如:

截圖:一個 Airports 清單檢視,仍然顯示 Security Status 欄位

設計一個在系統上下文中執行的 Lightning Web 元件(LWC),有條件地顯示這個欄位。

雖然 LWC 在顯示資料方面很強大,但在新建或編輯時可能會帶來挑戰。這可能需要在 LWC 中做一個自訂的編輯介面。

結論

保護 Salesforce 中的欄位至關重要。根據所需的安全級別,Salesforce 提供了多種選擇:

謝謝

感謝收看。請記住,安全至關重要,而理解欄位級安全能確保你的 Salesforce 資料保持機密、掌握在正確的人手中。

請繼續關注 www.SteveTechArc.com 和 YouTube 頻道 @SteveTechArc (opens in a new tab)。

與架構師同行以及正走在架構師之路上的人分享有趣的想法,一起改變世界!

轉錄藉助了 AI

STA 4.5