繁體中文(香港)
  • authorization
  • organization
  • api resources
  • rbac

Logto 的授權系統及其在身份管理場景中的使用

探索 Logto 多功能的授權系統。

Guamian
Guamian
Product & Design

Logto 不僅是一個身份驗證提供者,還是一個授權提供者。 在本文中,我將概述 Logto 的授權方法,並解釋這些靈活的層如何應用於各種場景。

使用基於角色的訪問控制來保護你的 API 資源

在 Logto 中註冊 API 資源

為了建立一個授權系統,使不同的用戶對資源和操作權限有不同的訪問權限,你可以先在 Logto 中註冊 API 資源,然後添加權限。 利用角色來聚合這些權限,無論是針對單一 API 還是多個 API。

管理權限

Logto 的一個很棒的功能是它能夠創建各種類型的角色,可以應用於不同的實體,包括用戶和機器對機器應用程式。 用戶可以繼承用戶特定的角色,而機器對機器應用程式可以繼承專為它們設計的角色。

目標實體:用戶

如果你的應用是一個需要不同用戶執行不同動作的一般應用,利用用戶角色是一個靈活的方式來建立一個有效的訪問控制系統。

創建 API 資源


角色騎士

目標實體:機器對機器應用程式

機器對機器(M2M)是一種常見的做法,用於認證如果你有一個應用需直接與資源通話,比如更新用戶自定義數據的 API 服務、提取每日訂單的統計服務等等。

在 Logto 中,機器對機器應用程式可以用於兩個關鍵使用案例:

  1. 透過設定授權系統來保護你的無頭 API 應用。
  2. 使用 Logto 的管理 API 來開發你的服務,例如啟用用戶資料以允許最終用戶更新其與身份相關的信息。

在此上下文中,用戶角色的區別在於角色明確定義為機器對機器角色,而非用戶角色,它只能分配給機器對機器應用程式。

創建角色

在這個 API RBAC 上下文中,API 資源、角色和權限在一個統一的身份系統中是"民主化"的,並在系統層面進行查看。這種方法在簡單的 B2C 產品中很常見,因為不太需要複雜的層次管理。

使用組織模板(RBAC)來保護你的組織級資源

在 B2B 場景中,不同組織的用戶角色可能各不相同。例如,John 在組織 A 中可能擁有管理員角色,但在組織 B 中僅擁有成員角色。

組織模板

這可以通過在 Logto 中設置組織模板來實現,這有助於你的多租戶應用建立訪問控制系統。

與其為每個組織創建大量角色,不如讓 Logto 讓你創建一個組織模板。 這種方法在所有組織中保持一致性,同時允許用戶在不同的組織中具有不同的角色靈活性。

組織權限不需要註冊 API 資源。Logto 發行的組織令牌中包含角色和其他聲明,這可以用來在你的 API 中進一步驗證組織令牌。

使用組織模板(RBAC)來保護系統和組織級資源

如果你在 Logto 中註冊了 API 資源,並希望將其用於組織層面,這是完全可能的。

如果你使用相同的端點進行系統級功能和組織特定操作,可能需要這樣做。單一端點沒有問題,利用組織上下文也能有效確保租戶隔離。

在 Logto 中,你可以將 API 權限直接分配給組織的角色,以滿足你的特定需求。

以下是如何將 API 權限與組織角色集成的快速概覽。

此功能正在開發中,預計將在 2024 年上半年推出。

分配權限

對於 Logto 授權系統和我們即將推出的授權功能感興趣嗎? 立即註冊 並立即獲取最新的產品更新。