跳至主要內容

即時佈建 (Just-in-Time provisioning)

在 Logto 中,即時佈建 (JIT, Just-in-Time provisioning) 是一種在使用者首次登入系統時,動態分配組織成員資格與角色的流程。與預先為使用者建立帳號不同,JIT 佈建會在使用者驗證 (Authentication) 時即時配置所需的使用者帳號。

運作方式

以下是 JIT 佈建流程的高階概述:

  1. 使用者驗證 (Authentication):使用者嘗試登入應用程式或服務,身分提供者 (Logto) 進行驗證。
  2. 帳號登入或建立:根據使用者狀態,Logto 會登入使用者、建立新帳號,或將新身分新增至現有帳號。
  3. 佈建 (Provisioning):若使用者或其身分為新者,Logto 會觸發佈建流程。

以下是 JIT 佈建的詳細流程圖:

JIT 佈建對於 B2B 與多租戶產品非常實用。它讓租戶成員的導入流程順暢,且無需管理員介入。

舉例來說,若你已導入某企業,並希望其員工能安全登入你的產品並以正確角色加入組織,有多種方式可實現。以下將介紹 Logto 提供的解決方案,以及 JIT 如何協助你。

情境使用者類型自動化行為
管理員邀請新增與現有使用者可收到電子郵件邀請加入組織。
Management API 建立或匯入使用者新增與現有使用者可利用預先建立的帳號加入組織。
SSO 即時佈建新增與現有首次以 SSO 登入的使用者可加入組織。
電子郵件網域即時佈建新增首次以特定驗證網域登入的使用者可加入組織。
目錄同步新增與現有使用 IdP 的目錄同步功能,預先在應用程式中佈建使用者。

目前,Logto 支援 SSO 即時佈建電子郵件網域即時佈建

JIT 佈建的優點

JIT 佈建帶來多項優點:

  1. 高效率:減少手動建立與管理使用者帳號的管理負擔。
  2. 可擴展性:自動處理大量使用者的帳號建立,無需事前設定。
  3. 即時性:確保使用者一經驗證 (Authentication) 即可存取資源,無需等待。

我們已將 JIT 功能實作於最具擴展性與安全性的層級,協助你簡化並加速佈建流程。然而,佈建系統可能因客戶需求而複雜且需客製化,因此建議結合 Logto 預設的 JIT 功能、你精心設計的系統架構,以及 Logto Management API。這種整合方式能協助你打造穩健且高效的佈建系統。

JIT 與目錄同步的差異

  • JIT 佈建 由使用者主動行為觸發,而 目錄同步 (Directory sync) 可由使用者或系統(排程或即時)觸發。
  • JIT 佈建 不強制成員資格或角色分配,而 目錄同步 可強制執行。
  • JIT 佈建 更適合導入新使用者(不論身分來源),而 目錄同步 更適合管理帳號。

簡言之,JIT 佈建更具彈性且友善,讓使用者可自由加入或離開組織,也讓你能彈性處理現有使用者。

Logto 的即時佈建

備註:

即時佈建 (JIT) 僅針對使用者主動行為觸發,不影響 Logto Management API 的互動。

前往 控制台 > 組織 (Organizations)。你可以在組織詳細頁面設定 JIT 佈建。

企業級 SSO 佈建

若你已在 Logto 設定 企業級單一登入 (Enterprise SSO),可選擇組織的企業級 SSO 以啟用即時佈建。

當符合下列任一條件時:

  • 新使用者透過企業級 SSO 登入;
  • 現有使用者首次透過企業級 SSO 登入。

他們將自動加入組織並取得預設組織角色。

JIT SSO

電子郵件網域佈建

若你的客戶尚未擁有專屬企業級 SSO,仍可利用電子郵件網域進行即時佈建。

當使用者註冊時,若其驗證過的電子郵件地址符合組織層級設定的 JIT 電子郵件網域,將自動被佈建至對應組織並分配相應角色。

JIT email

地址比對可辨識所有非企業級 SSO 身分來源的驗證電子郵件地址,包括:

  1. 電子郵件註冊 驗證
  2. 社交註冊 驗證
備註:

為什麼電子郵件網域佈建不適用於現有使用者登入流程?

現有使用者登入需進一步控管其是否能被佈建至特定組織或分配角色。此流程具動態性,取決於具體情境與業務需求,例如登入頻率與組織層級政策。

舉例來說,若你為現有使用者啟用電子郵件網域佈建,日後又想以不同角色導入另一批使用者,先前已導入的使用者是否應被分配新角色?這會產生「即時更新」的複雜情境。實際行為多取決於應用程式與 IdP 整合方式。我們將此控制權交給你,讓你能自由設計佈建系統,並妥善處理新帳號建立與組織導入的常見情境。

啟用電子郵件網域佈建時的電子郵件登入體驗

使用者狀態說明
使用者不存在並以電子郵件註冊會建立使用者並自動加入對應組織並分配適當角色。
使用者已存在且驗證電子郵件與佈建網域相符一般電子郵件登入體驗。

啟用電子郵件網域佈建時的社交登入體驗

使用者狀態說明
使用者不存在,使用驗證電子郵件的社交帳號註冊會建立使用者並自動加入對應組織並分配適當角色。
使用者不存在,使用未驗證電子郵件或無電子郵件的社交帳號註冊一般社交註冊體驗。
使用者已存在且驗證電子郵件與佈建網域相符,並以新社交身分登入一般社交登入體驗。

處理多種 JIT 佈建方式的潛在衝突

若你先設定了電子郵件網域佈建,後續又以相同網域設定企業級 SSO,將發生以下情況:

當使用者輸入電子郵件地址時,會被導向 SSO 身分提供者,跳過電子郵件驗證。這表示電子郵件網域佈建不會被觸發。

針對此情境,設定時我們會顯示警告訊息。請務必選擇正確的 SSO 連接器啟用企業級 SSO 佈建,並避免依賴電子郵件網域佈建。

JIT conflict

預設組織角色

在組織中佈建使用者時,你可以設定其預設組織角色。角色清單來自 組織範本 (organization template),你可選擇角色或留空。

深入瞭解即時佈建 (Just-in-Time provisioning)