什麼是及時供應?
如果你正在構建一款 SaaS B2B 應用程式,並希望支持會員功能,讓會員能夠輕鬆加入你的工作空間 (租戶)。你可能需要以下表格中的功能,而及時供應是其中一種,有助於簡化這個過程。
功能 | 流程 |
---|---|
管理員發起邀請 | 用戶可以收到電子郵件邀請加入組織。 |
通過 API 創建或匯入用戶 | 用戶可以使用預先創建的用戶帳戶加入組織。 |
及時供應 | 首次登錄應用程式的用戶可以加入組織。 |
目錄同步 (例如 SCIM) | 使用身份提供者 (IdP) 的目錄同步功能提前在應用中預配置用戶。 |
及時 (JIT) 供應 是身份和訪問管理系統中用於在用戶首次登錄系統時動態創建用戶帳戶的過程。與提前預配置帳戶不同,JIT 供應是在用戶身份驗證時動態創建和配置必要的用戶帳戶。及時供應具有其獨特的特點,如高效性、無需管理員參與、自動化的組織成員資格等。
及時供應的使用案例有哪些?
這些使用案例在構建涉及多租戶架構、企業單一登入 (Enterprise SSO)、與企業合作或需要團隊入職功能的 B2B 應用程式時常見。以下是一些你的客戶可能遇到的示例場景。
快速入職
如果你的客戶正在經歷頻繁招聘或快速增長,可以使用 JIT 供應來快速設置新員工的用戶帳戶。以下是一個示例:
Sarah 是一名新員工,供職於使用 Okta 作為企業身份提供者的 SuperFantasy 公司。人力資源團隊只需在 Okta 中將她添加為商業身份一次。當 Sarah 第一次使用這個電子郵件登錄名為 Smartworkspace 的公司用生產力應用程式時,系統會自動為她創建一個帳戶並在公司的工作空間中配置適當的角色。這樣,Sarah 和 SuperFantasy 公司的 HR 團隊都不需要經過多步驟來創建帳戶和分配角色。
兼併、收購和臨時工作人員
如果你的客戶正在經歷兼併或收購其他公司,JIT 供應可以簡化為許多新用戶授予獲得公司系統訪問權限的過程。我們來看一個示例,
Peter 供職於最近被 SuperFantasy 收購的 MagicTech。MagicTech 是一個沒有企業單一登入的小型組織,但也使用 Smartworkspace,Peter 已經有一個商業帳戶。
HR 團隊可以在 Okta 中將 Peter 添加進去。當 Peter 第一次通過 Okta 登錄 Smartworkspace 時,系統會自動連接他的現有商業帳戶,並為他在 SuperFantasy 分配適當的訪問權限。
上述場景是實施 JIT 功能的理想情況。
它是否僅適用於 SAML 和企業單一登入?
及時 (JIT) 供應通常與 SAML 認證中的 Enterprise SSO 相關,但它並不限於 安全斷言標記語言 (Security Assertion Markup Language, SAML) 。JIT 供應也可以用於其他認證協議,如 OAuth 2.0 和 OpenID Connect (OIDC) ,並且不一定需要 Enterprise SSO 的設置。
例如,基於電子郵件的 JIT 供應可以通過自動將用戶添加到基於其電子郵件域的工作空間來簡化團隊入職。這對於缺乏預算和資源以購買和管理企業單一登入的組織尤其有用。
JIT 供應的基本理念是當用戶首次嘗試訪問服務時自動創建或更新用戶帳戶,無論使用何種特定協議。
它適用於應用程式的新用戶還是現有用戶?
及時 (JIT) 供應通常指的是用戶首次嘗試訪問應用程式時的情況。不過,針對不同產品,此功能的理解可能有所不同。有些僅將 JIT 供應用於身份和帳戶創建,而其他則包含及時帳戶更新,如重新供應和屬性同步。
除了自動創建用戶外,SAML JIT 供應可以作為供應的一部分授予和撤銷用戶組成員身份。它還可以更新已供應的用戶,保持 服務提供者 (Service provider, SP) 存儲中的屬性與 身分提供者 (Identity provider, IdP) 用戶存儲屬性同步。
如果你確實想考慮後續的現有用戶登錄場景,請確保你有一個健全的供應系統以及你的 JIT 系統。例如,
- 衝突解決:如果帳戶已存在但與 IdP 在 JIT 過程中提供的信息不同,你的系統應該有處理衝突的策略。這可能需要對組織的政策和 IdP 配置進行詳細控制。
- 審計追蹤:保持 JIT 過程中新帳戶的創建和現有帳戶更新的日誌以進行安全和合規性檢查非常重要。
- 性能:雖然 JIT 供應發生得很快,但請考慮可能對登錄時間的影響,尤其是對於現有用戶在每次登錄時更新其信息的情況。
- 數據一致性:確保你的 JIT 供應過程在更新現有用戶帳戶時保持數據的一致性。
JIT 和 SCIM 之間的差異是什麼?
SCIM 是設計用於簡化和自動化跨不同系統和域的用戶身份管理的開放標準協議。通常用於目錄同步場景。
JIT 與 SCIM 的主要區別在於 JIT 在用戶登錄嘗試時創建帳戶,而 SCIM 可以通過離線自動化過程(與用戶登錄嘗試無關)來供應用戶。
這意味著 JIT 專注於新用戶入職,而 SCIM 則專注於用戶的完整生命週期管理。
此外,JIT 通常是 SAML 的擴展,缺乏跨系統的標準實現,而 SCIM 是一個已定義完善的標準協議 RFC 7644 用於身份管理。
一些較大的組織使用 SCIM 進行帳戶供應,將其與自身的系統集成。這可能非常複雜,根據不同情況而異。這些組織通常有一個涉及自動流程和管理員手動參與的供應系統。