使用 Logto 作為第三方身份提供者 (IdP)
Logto 可用作第三方應用程序的身份提供者。這篇文章將解釋如何將 Logto 配置為 IdP。
Logto 是一個基於雲的身份和訪問管理 (IAM) 平台,提供了一套全面的身份驗證、授權和用戶管理功能。它可以用作你的第三方應用程序或服務的身份提供者 (IdP),允許你對用戶進行身份驗證並管理他們對這些應用程序的訪問權限。
在這篇文章中,我們將解釋如何將 Logto 配置為你第三方應用程序的 IdP,以及如何使用它來驗證用戶並管理他們的權限。
什麼是身份提供者 (IdP)?
身份提供者 (IdP) 是一種服務,用於驗證用戶身份並管理他們的登錄憑證。確認用戶身份後,IdP 會生成驗證令牌或斷言,並允許用戶無需再次登錄即可訪問各種應用程序或服務。本質上,它是貴公司用於管理員工身份和權限的首選系統。
什麼是第三方 IdP?
第三方 IdP 是由不同於服務提供者 (SP) 的組織擁有的 IdP。SP 請求訪問非其自身擁有的用戶數據。例如,如果你使用 Logto 作為你的 IdP 並登錄到第三方社交應用程序,那麼 Logto 對於該社交應用程序來說就是一個第三方 IdP。
在現實世界中,許多應用程序使用 Google、Facebook 或其他第三方服務作為它們的 IdP。這被稱為單一登錄 (SSO)。如需了解有關 SSO 的更多信息,請查看我們的文章 CIAM 101:身份驗證、身份、SSO。
現在讓我們看看如何將 Logto 集成為你的應用程序的第三方 IdP。
如何將第三方 IdP 集成到你的應用程序中及其最佳實踐
先決條件
-
開始之前,你需要擁有一個 Logto 帳戶。如果你還沒有,可以在 Logto 註冊一個免費帳戶。
-
你想設置 Logto 作為 IdP 的第三方應用程序。用戶可以使用他們的 Logto 帳戶登錄。
在 Logto 中創建第三方 OIDC 應用
要在 Logto 中創建第三方 OIDC 應用,請按照以下步驟操作:
-
前往 Logto 控制台 並導航到 應用程序 頁面。
-
單擊頁面右上角的 創建應用程序 按鈕。選擇“第三方應用 -> OIDC”作為應用類型。
-
在彈出模式中填寫基本應用程序詳細信息,包括 名稱 和 描述。單擊 創建 按鈕。這將在 Logto 中生成一個新的第三方應用程序實體並跳轉到詳細信息頁面。
設置 OIDC 配置
按照以下步驟在應用程序詳細信息頁面下配置 OIDC 設置:
-
導航到你剛創建的第三方應用程序的 應用程序詳細信息 頁面。
-
提供你的第三方應用程序的 重定向 URI。這是第三方應用程序在用戶通過 Logto 驗證後將用戶重定向到的 URL。你通常可以在第三方應用程序的 IdP 連接設置頁面中找到此信息。
(Logto 支持多個重定向 URI。你可以通過單擊 添加另一個 按鈕來添加更多重定向 URI。)
-
從 Logto 複製 用戶端 ID 和 用戶端密鑰 並將它們輸入到你的服務提供者的 IdP 連接設置頁面。
-
從 Logto 複製 OIDC 發現端點 並將其輸入到你的服務提供者的 IdP 連接設置頁面。
OIDC 發現端點是一個 URL,服務提供者可以用來發現 IdP 的 OIDC 配置詳細信息。它包含服務提供者需要用來通過 Logto 進行用戶身份驗證的信息,如授權端點、 令牌端點和用戶信息端點。
驗證點
具備所有 OIDC 配置詳細信息後,你現在可以將 Logto 作為你的應用程序的第三方 IdP 使用。在第三方應用程序上測試集成,以確保用戶可以使用他們的 Logto 帳戶登錄。
管理應用程序權限
與第一方應用程序不同,第三方應用程序是 Logto 不擁有的應用程序。它們通常由第三方服務提供商擁有,使用 Logto 作為外部 IdP 來驗證用戶。例如,Slack、Zoom 和 Notion 均為第三方應用程序。
重要的是確保在第三方應用程序請求訪問你的用戶信息時授予正確的權限。Logto 允許你管理第三方應用程序的權限,包括用戶資料範圍、API 資源範圍和組織範圍。
請求未啟用的範圍將導致錯誤。這是為了確保你的用戶信息受到保護並且只能被你信任的第三方應用程序訪問。啟用範圍後,第三方應用程序可能會請求訪問這些已啟用的範圍。這些範圍將顯示在用戶同意頁面上,以供你的用戶查看並授予第三方應用程序訪問權限。
請查看我們的文章 用戶同意屏幕 以了解有關什麼是用戶同意屏幕的更多詳細信息。
向你的第三方應用程序添加權限
轉到 應用程序詳細信息 頁面並導航到 權限 標籤。單擊 添加權限 按鈕添加你的第三方應用程序的權限。
用戶權限 (用戶資料範圍)
這些權限是 OIDC 標準,Logto 的基本用戶資料範圍 用於訪問用戶信息。用戶信息將在 ID 令牌和用戶信息端點中返回。
API 資源權限 (API 資源範圍)
Logto 為 API 資源提供 RBAC (基於角色的訪問控制)。API 資源是你的服務擁有並受到 Logto 保護的資源。你可以將自定義 API 範圍分配給第三方應用程序以訪問你的 API 資源。如果你不知道如何使用這些 API 資源範圍,請查看我們的 RBAC 和 保護你的API 指南。
你可以在 Logto 控制台的 API 資源 頁面下創建和管理你的 API 資源範圍。
組織權限 (組織範圍)
組織權限是僅為 Logto 組織定義的範圍。它們用於訪問組織信息和資源。如需了解有關組織的更多信息以及如何使用組織範圍,請查看我們的 組織 指南。
要創建和管理你的組織範圍,請轉到 Logto 控制台中的 組織模板 頁面。請參閱 配置組織 以獲取更多詳細信息。
同意頁面
啟用所有權限後,第三方應用程序可能會請求訪問啟用的權限。這些權限將顯示在用戶同意頁面上,以供你的用戶查看並授予第三方應用程序訪問權限。
單擊 授權 按鈕後,用戶將授予第三方應用程序訪問這些請求的權限。
自定義同意屏幕
最後但同樣重要的是,確保當用戶重定向到第三方應用程序的同意頁面時,正確顯示第三方的品牌信息和隱私鏈接。
除了第一方應用程序的通用登錄體驗外,Logto 還允許你自定義第三方應用程序的這些附加品牌信息,包括應用名稱、標誌和條款鏈接。
-
前往 Logto 控制台 並導航到第三方應用程序的詳細信息頁面。
-
導航到 品牌 標籤。
- 顯示名稱:將顯示在同意頁面上的第三方應用程序名稱。它將代表請求訪問你的用戶信息的第三方應用程序名稱。如果該字段留空,將使用應用程序名稱。
- 標誌:將顯示在同意頁面上的第三方應用程序標誌。它將代表請求訪問你的用戶信息的第三方應用程序的品牌。如果提供了第三方應用程序的標誌和Logto通用登錄體驗的標誌,則兩者將顯示在同意頁面上。
- 深色 Logto:僅在啟用了深色模式登錄體驗時可用。在 登錄體驗 頁面管理深色模式設置。
- 條款鏈接:將顯示在同意頁面的第三方應用程序的條款鏈接。
- 隱私鏈接:將顯示在同意頁面的第三方應用程序的隱私鏈接。
總結
恭喜!你已經成功將 Logto 整合為你的應用程序的第三方 IdP。通過配置 OIDC 設置,你建立了強大而安全的用戶身份驗證和授權機制。有了 Logto,你現在擁有一個流暢的過程,可以驗證用戶並管理他們對任何第三方應用程序的訪問權限。