跳至主要內容

OIDC / OAuth 應用程式的權限管理

第三方應用程式(非你服務所擁有)會作為身分提供者(IdP)整合進 Logto 以驗證使用者。這些應用程式通常來自外部服務供應商,因此需要謹慎管理權限以保護使用者資料。

Logto 讓你能夠控制授予第三方應用程式的具體權限。這包括管理 使用者資料、API 資源 以及 組織權限範圍。與第一方應用程式不同,第三方應用程式若請求未授權的權限範圍將被拒絕存取。

啟用特定權限範圍後,你可以決定第三方應用程式能存取哪些使用者資訊。使用者會在使用者授權頁面(consent screen)審查並同意這些權限後才會授權存取。

管理 OIDC 第三方應用程式的權限​

前往 控制台 > 應用程式 > 應用程式詳情頁,切換至 權限 分頁並點擊 新增權限 按鈕,即可管理你的第三方應用程式權限。

第三方應用程式請求時,基本使用者資料為必填。Logto 也支援分配組織資源,非常適合 B2B 服務場景。

授予使用者資料權限​

分配使用者層級權限,包括 使用者資料權限(如電子郵件、姓名與頭像)以及 API 資源權限(如特定資源的讀寫權限)。

所請求資源的名稱(如個人使用者資料、API 名稱)與具體權限描述(如你的電子郵件地址)將顯示於使用者授權頁面,供使用者審查。

點擊 授權 按鈕後,使用者即同意將指定權限授予第三方應用程式。

grant permissions of user data

授予組織資料權限​

分配組織層級權限,包括 組織權限 與 API 資源權限。Logto 允許將 API 資源分配給特定組織角色。

在使用者授權頁面上,組織資料會與使用者資料分開顯示。在授權流程中,使用者必須選擇特定組織以授權存取,並可在確認前切換組織。第三方應用程式僅能存取所選組織的資料及相關權限。

grant permissions of organization data

權限類型​

使用者權限(使用者資料權限範圍)​

這些權限為 OIDC 標準與 Logto 基本使用者資料權限範圍,用於存取使用者宣告(claims)。使用者宣告將分別回傳於 ID 權杖(ID token)與 userinfo 端點。

  • profile:OIDC 標準權限範圍,用於存取使用者姓名與頭像。
  • email:OIDC 標準權限範圍,用於存取使用者電子郵件。
  • phone:OIDC 標準權限範圍,用於存取使用者電話號碼。
  • custom_data:Logto 使用者資料權限範圍,用於存取 使用者自訂資料。
  • identity:Logto 使用者資料權限範圍,用於存取使用者已連結的 社交身分 資訊。
  • role:Logto 使用者資料權限範圍,用於存取使用者 角色 (Role) 資訊。
  • urn:logto:scope:organizations:Logto 使用者組織權限範圍,用於存取使用者組織資訊。若啟用並由第三方應用程式請求,將於使用者授權頁面顯示組織選擇器,讓使用者審查並選擇欲授權的組織。詳見 組織 (Organizations)。
  • urn:logto:scope:organization_roles:Logto 使用者組織權限範圍,用於存取使用者組織角色資訊。
注意:

在授權請求中請求未啟用的使用者資料權限範圍將導致錯誤。

API 資源權限(API 資源權限範圍)​

Logto 為 API 資源提供 基於角色的存取控制 (RBAC, Role-based access control)。API 資源為你服務所擁有並受 Logto 保護的資源。你可自訂 API 權限範圍並分配給第三方應用程式,以存取你的 API 資源。詳見 授權 (Authorization)。

你可於 控制台 > API 資源 下建立與管理 API 資源權限範圍。

注意:

未啟用給第三方應用程式的 API 資源權限範圍,在授權請求時將被忽略,不會顯示於使用者授權頁面,也不會由 Logto 授權。

組織權限(組織權限範圍)​

組織權限 為專為 Logto 組織定義的權限範圍,用於存取組織資訊與資源。

備註:

如需使用 Logto 組織權限,需先啟用 urn:logto:scope:organizations 使用者權限範圍。否則在授權請求時組織權限將被忽略。

你可於組織範本設定頁自訂組織權限範圍。詳見 組織範本 (Organization template)。

注意:

未啟用給第三方應用程式的組織權限範圍,在授權請求時將被忽略,不會顯示於使用者授權頁面,也不會由 Logto 授權。

預設 OIDC 權限​

核心 OIDC 權限會自動為你的應用程式配置。這些權限範圍為 OIDC 驗證 (Authentication) 所必需,且不會顯示於使用者授權頁面。OAuth 應用程式若無需 OIDC 驗證 (Authentication) 可選擇不請求。

  1. openid:OIDC 驗證 (Authentication) 必需(純 OAuth 可選)。授予 ID 權杖(ID token)與 userinfo_endpoint 存取權。

  2. offline_access:可選。用於取得 重新整理權杖 (Refresh tokens),以支援長效存取或背景任務。