OIDC / OAuth 應用程式的權限管理
第三方應用程式(非你服務所擁有的應用程式)會作為身分提供者 (IdP, Identity provider) 整合進 Logto 以驗證 (Authentication) 使用者。這些應用程式通常來自外部服務供應商,因此需要謹慎管理權限以保護使用者資料。
Logto 讓你能夠控制授予第三方應用程式的具體權限。這包括管理 使用者資料、API 資源 以及 組織權限範圍。與第一方應用程式不同,第三方應用程式若請求未授權的權限範圍將被拒絕存取。
啟用特定權限範圍後,你可以決定第三方應用程式能存取哪些使用者資訊。使用者會在使用者授權頁面(Consent screen)審查並同意這些權限後,才會授權存取。
管理 OIDC 第三方應用程式的權限
前往 控制台 > 應用程式 > 應用程式詳細頁,選擇你的 OIDC 第三方應用程式,切換到 權限 分頁,點擊 新增權限 按鈕,即可管理第三方應用程式的權限。
第三方應用程式請求時,基本使用者資料為必填項目。此外,Logto 支援指派組織資源,非常適合 B2B 服務。
授予使用者資料權限
指派使用者層級權限,包括 使用者資料權限(如電子郵件、姓名與頭像)及 API 資源權限(如對特定資源的讀寫存取)。
所請求資源的名稱(如個人使用者資料、API 名稱)及具體權限說明(如你的電子郵件地址)將顯示於使用者授權頁面,供使用者審查。
點擊 授權 按鈕後,使用者即同意將指定權限授予第三方應用程式。

授予組織資料權限
指派組織層級權限,包括 組織權限 及 API 資源權限。Logto 允許將 API 資源指派給特定組織角色。
在使用者授權頁面上,組織資料會與使用者資料分開顯示。在授權流程中,使用者必須選擇特定組織以授權存取。使用者可在確認前切換組織。第三方應用程式僅能存取所選組織的資料及相關權限。

權限類型
使用者權限(使用者資料權限範圍)
這些權限為 OIDC 標準及 Logto 基本使用者資料權限範圍,用於存取使用者宣告 (Claims)。使用者宣告將分別回傳於 ID 權杖 (ID token) 及 userinfo 端點。
profile
:OIDC 標準權限範圍,用於存取使用者姓名與頭像。email
:OIDC 標準權限範圍,用於存取使用者電子郵件。phone
:OIDC 標準權限範圍,用於存取使用者電話號碼。custom_data
:Logto 使用者資料權限範圍,用於存取 使用者自訂資料。identity
:Logto 使用者資料權限範圍,用於存取使用者已連結的 社交身分 資訊。role
:Logto 使用者資料權限範圍,用於存取使用者 角色 資訊。urn:logto:scope:organizations
:Logto 使用者組織權限範圍,用於存取使用者組織資訊。若啟用且第三方應用程式請求此權限,則會在使用者授權頁面顯示組織選擇器,讓使用者審查並選擇欲授權的組織。詳見 組織。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
使用者權限範圍。否則在授權請求時,組織權限將被忽略。
你可於組織範本設定頁自訂組織權限範圍。詳見 組織範本。
未啟用給第三方應用程式的組織權限範圍,在授權請求時將被忽略,不會顯示於使用者授權頁面,也不會由 Logto 授權。