Logto 的多租戶模式解釋
了解我們如何設計 Logto 的多租戶模式及其為 SaaS 應用程式帶來的好處。
了解我們如何設計 Logto 的多租戶模式及其為 SaaS 應用程式帶來的好處。
你可能聽過一些產品使用「多租戶」一詞來表示身份隔離:每個租戶擁有自己的一組用戶、角色、權限和數據。
可能不合常理,但事實上,「多租戶」表示相反的意思:多個租戶在一個實例中共享資源。對用戶來說,應用程式中的身份就像駕駛執照。例如,一張駕駛執照可以在不同的州駕駛(多個組織使用一個身份),而不是為每個州重新申請駕駛執照。
在設計初期,我們注意到這種混亂,並努力為你的應用程式和用戶改正過來。這是我們的設計:
這種模式為管理身份提供了靈活性和重用性,尤其對於 SaaS 應用程式而言。如果我們看看一些流行的 SaaS 應用程式,我們可以發現它們都可以適應這種模式。不同應用程式中「組織」這個詞可能不同,比如「工作區」、「團隊」等。但概念是相同的。
例如,在 Notion(流行的協作工具)中:
因此,用戶可以輕鬆在不同的工作區間切換,而不需切換賬戶或重新登錄,並且保持工作區間的隔離。轉化成 Logto 的模型,這意味著:
根據不同的角色,用戶在不同的工作區(組織)中可以擁有不同的權限。
對於用戶來說,他們可以享受真正的單點登入體驗。在組織之間切換就像在標籤之間切換一樣簡單。
SaaS 應用程式的一個優勢是它們標準化且可擴展。例如,你可以在 Notion 中快速創建一個新的工作區,並且即可使用。
當你的應用程式在增長時,你可能想要為每個組織添加更多角色和權限。例如,一個新的角色「訪客」和一個新的權限「invite:guest」。如果需要逐一更新所有現有組織,這可能是一場噩夢。
使用 Logto,你可以更新組織模版,所有現有組織都會自動更新。
在 Logto,我們對組織和 API 資源都使用相同的訪問控制模型(RBAC)。這意味著如果你熟悉 RBAC,不需要學習新的訪問控制模型。同時,它們彼此隔離,所以你可以用於不同的用例。
最令人興奮的部分是你可以同時使用它們。讓我們延伸一下 Notion 的例子:
大多數 Logto SDK 都支持這兩種類型的 RBAC。
差異
組織 RBAC 和 API 資源 RBAC 在以下方面不同:
構建一個 SaaS 應用程式是困難的,我們希望 Logto 可以幫助你專注於核心業務。如果你有任何問題或建議,不要猶豫給我們反饋。