本篇參考:https://security.salesforce.com/mfa

https://sfdc.co/bvtuQT  (MFA官方研討會的文件)

https://sfdc.co/iwiQK(MFA中華區研討會視訊)

Salesforce Admin篇(四) Security 之Two-Factor Authentication & Single Sign On

我們之前介紹過關於登入安全的 2fa,今天主要講的是MFA。 MFA 官方的介紹是到2022年2月1日起,salesforce登入環境要強制要求啟用MFA。換言之,MFA沒搞定,不允許登入salesforce了。那麼所有license,所有場景都需要強制嗎,是否收費,如何實施是大部分人的疑問,主要針對這幾點進行描述。

. 什麼場景使用 MFA

說MFA 強制使用也不是一個特別絕對的說法,也不必過度緊張。MFA強制使用也是有一個 scope範圍的。我們基於使用者的型別以及使用者登入的媒介進行兩個表格的梳理。

我們針對salesforce的使用者的型別,可以簡單的歸納成3類: 內部使用者,外部使用者,chatter使用者。

內部使用者: 比如admin / standard user等內部使用者,可以訪問 salesforce UI的使用者。license通常是 salesforce / platform user / standard user等。

外部使用者:代表只能訪問 community cloud使用者或者site等的外部使用者。license通常有Customer Community,Partner Community,External Identity User。

Chatter使用者:通常 license/ profile是Chatter External, Chatter Free和Chatter Only使用者

使用者型別

是否需要實施MFA

內部使用者

外部使用者

Chatter

如果只是針對使用者型別考慮,並不絕對,也不客觀。舉個例子: 有些專案情況比較特殊,Salesforce可能只是當成了一個雲伺服器,真正的UI操作都是在外部系統。外部系統可能通過 rest api / tooling api等訪問 metadata以及訪問資料,那這種情況即使使用者是內部使用者,即使是system admin的Profile,不訪問SF的UI還需要強制MFA嗎?結果是不需要的。所以我們還需要考慮登入型別或者授權方法的維度。

登入型別 / 授權方法

是否需要實施MFA

介紹/注意事項

直接登入到 Salesforce的UI

適用於Salesforce所有的介面,包括手機app以及客戶app(比如Dataloader)。針對Dataloader有一個注意點:Dataloader有兩種登入方式,Oauth是需要MFA的, Password方式走API Login是不需要的

自動化測試和 RPA 帳戶登入到 UI

自動化測試賬號,MFA是不需要強制實施的

API / Integration 登入

裝置啟用/身份驗證

當用戶登入在一個未識別的裝置或者瀏覽器時,或者IP在 trust IP以外的場景,驗證時需要走MFA

代理身份認證

詳見:https://help.salesforce.com/s/articleView?id=sf.sso_delauthentication.htm&type=5

單點登入

Risk-Based/Continuous Authentication

具體情況具體分析

根據官方的介紹文件,具體情況具體分析。

Trusted Corporate Devices / Device Certificates

同上

同上

Trusted Networks

同上

同上

User Certificates

同上

同上

上面的一些登入方式或者授權方式專案中沒使用過,為了防止翻譯錯誤或者解釋錯誤,建議自行檢視文件。所以我們根據文件中的介紹,可以看出來,大部分的專案需要強制MFA的場景是內部使用者,並且需要訪問 salesforce UI的場景,如果只是用於API整合,則大可不必。

二. MFA支援的實現方式以及實現步驟

MFA的實施根據官方建議可以採用大概三種方式:

  1. Salesforce Authenticator:此種方式的實現步驟和2FA極其相似,而且是免費的。所以此種MFA方式是價效比最高的,而且Salesforce Authenticator如果出現了問題,可以隨時給salesforce提緊急case幫助解決。
  2. 第三方身份驗證器:官方也例舉了一些,這些需要考慮一下費用,以及你的公司的使用使用者所在地等等。如果針對國內客戶,需要考慮認證方式是否可以訪問以及是否穩定。
  3. 金鑰方式

針對文字驗證,郵件等方式驗證,不計入MFA範疇,所以即使你現在的專案使用了這些種驗證方式,根據salesforce的安全性考慮,還要在MFA強制啟用之前,選擇前面的3種方式之一實行。

本篇介紹的是通過 Salesforce Authenticator。Google app訪問不了的小夥伴,後續專案實施記得下載apk以後,提供給使用者一個 publick link去下載。

啟用MFA其實特別簡單。建立一個 permission set,然後 在 system permission勾選這兩個permission即可。

建立完成以後,將需要啟用MFA的user新增到這個permission set即可。我們以自己的管理員賬號登入到salesforce,賬號密碼輸入完成以後,需要進行Salesforce Authenticator的關聯和校驗。

這裡因為手機軟體對當前頁面保護措施要求嚴格,沒法截圖,所以不新增手機端的截圖。這裡有一個很尷尬的點,就是我第一次對手機端授權關聯以後,報錯了。。。

按照提示,將web端 log out,並且將手機端 authenticator賬號解綁並且重新操作以後,順利搞定。(Notes:這裡實施團隊強烈建議客戶做一個FAQ進行說明)

接下來就是我們想知道系統使用者中都有哪些人已經做了MFA的賬號繫結,我們只需要在 user檢視中將MFA相關的欄位拖出,可以很方便的檢視到,如下圖所示。

除了看誰已經綁定了MFA以外,我們還可以在 setup 訪問 Identity Verification History檢視使用者認證登入的資訊。

當然,上述只是最簡單的介紹了一下 MFA的簡單的配置以及一些小特性。除此之外,小夥伴們如果想更加細緻的瞭解MFA的內容,目前salesforce的org已經在setup處增加了MFA 的小助手,大家可以 step by step進行學習瞭解。

當然,如果時間緊急,並且沒有resource去進行MFA的配置,也可以聯絡salesforce原廠的實施團隊,他們針對這個也可以進行有償實施,詳情可以檢視視訊內容。

總結:篇中只是簡單的介紹了MFA的一種簡單的實現方式。MFA和2FA的區別,按照官方的說法就是2FA是MFA的一部分,配置上可能也就省了session setting中的2fa的設定,整體MFA實施難度還好,無非就是針對app的安裝,針對使用者的training需要更好的進行推廣。篇中有錯誤歡迎指出,有不懂歡迎留言。

附: authenticator的app已經放在百度網盤。連結: https://pan.baidu.com/s/16v52M6cLEBAGi29Xugm8rg 提取碼: 2eee 複製這段內容後開啟百度網盤手機App,操作更方便哦