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

部落格 · 2023年9月30日 · Steve Simpson · 身分

理解 Salesforce 安全與身分:何時使用單點登入和 OAuth 引言

在這篇部落格中,我們希望理清 Salesforce 的安全與身分,重點關注何時使用單點登入(SSO)和 OAuth。無論是通過直接登入、SSO 還是 OAuth,這些知識對於應對存取 Salesforce 的各種場景都至關重要。

何時使用標準登入、單點登入或 OAuth

直接登入:

**場景:**一個使用者想通過瀏覽器存取 Salesforce,檢視它的頁面。

**存取方式:**直接登入 Salesforce,或者通過第三方身分提供商進行單點登入,無需再次認證就能順暢存取。

面向人的 SSO 和 OAuth 總結:使用瀏覽器的人(直接登入或單點登入)、使用用戶端應用的人(帶 PKCE 的 OAuth Web 伺服器流程),以及使用第三方 Web 伺服器的人(帶 PKCE 的 Web 伺服器流程)

移動應用中的 OAuth:

**場景:**使用者使用一個移動應用,通過 API 存取 Salesforce 資料,而不是顯示 Salesforce 原生的頁面。

**存取方式:**這裡使用 OAuth,尤其是當互動通過移動裝置進行時,其中可能包括使用瀏覽器技術的手機或平板電腦。這種方式讓移動應用可以安全地與 Salesforce API 互動。

面向用戶端程序的 SSO 和 OAuth 總結:整合使用者(用戶端憑據)、指定的人員使用者(JWT 或 SAML 持有者斷言)、有人並行審批的裝置(裝置流程),以及資產裝置(資產流程)

第三方伺服器中的 OAuth:

場景:使用者使用瀏覽器與一個第三方伺服器通訊,而這個伺服器需要代表使用者存取 Salesforce 資料。例子包括電子郵件外掛或其他與 Salesforce 整合的系統。

**存取方式:**使用 OAuth,並採用一個名為「Web Server with PKCE」(Proof Key for Code Exchange)的特定協議,以實現安全存取。

不同場景下的 OAuth 流程

**用戶端憑據流程:**為使用指定的整合使用者帳戶存取 Salesforce 的用戶端程序(比如執行批次載入或匯出的外部伺服器)而設計。

**JWT、SAML 持有者斷言和 SAML 斷言流程:**這些流程用於用戶端程序需要代表某個特定使用者行事、而使用者本人並不直接參與的場景。在這裡,程序會模擬一個指定的使用者,保持該使用者檔案的安全上下文。

**裝置流程:**這個流程由一個需要人工介入審批的裝置發起。例如,一個智慧電視應用會提示使用者輸入一個程式碼來批准存取。

**資產流程:**適用於需要連線 Salesforce 來讀取或寫入資料的物聯網(IoT)裝置。

回顧與結論

本質上,你的存取方式在很大程度上取決於場景:

要通過瀏覽器直接存取 Salesforce,就使用直接登入,或者在你有身分服務時使用單點登入。

對於通過移動裝置、第三方伺服器或自動化流程進行的間接存取,OAuth 是首選的方法。在這種情況下,你必須決定 OAuth 是代表一個人類使用者,還是代表一個整合使用者帳戶來執行。

在後續的文章中,我們會更深入地探討每個場景和用例,以提供全面的理解。

敬請關注

滿懷信心地開啟你的 Salesforce 身分之旅吧!想獲得更多見解和技巧,請繼續關注 www.SteveTechArc.com 和 YouTube 頻道 @SteveTechArc (opens in a new tab)。訂閱,加深你對 Salesforce 身分的理解。

與架構師同行以及正走在架構師之路上的人分享整合知識,一起改變世界!

轉錄藉助了 AI

STA 3.9