瞭解如何使用 Python SDK 使用 Oracle Identity Cloud Service 認證應用程式

當您想要開發使用 Oracle Identity Cloud Service 認證機制的 Python Web 應用程式時,請使用 Python SDK。此 SDK 可協助您進行工作,因為它會封裝所有必要的 REST API 端點呼叫,以使用 OpenID 連線流程向 Oracle Identity Cloud Service 認證使用者。

Oracle Identity Cloud Service 為您的應用程式提供識別管理、單一登入 (SSO) 和識別治理。它也提供 Oracle Cloud 的安全平台,讓您輕鬆安全地存取、開發及部署應用程式。Oracle Identity Cloud Service 可以作為身分識別提供者、集中認證機制、處理所有密碼管理責任,以及為您的應用程式提供 SSO。

Oracle 提供了一個範例應用程式,您可以與 Oracle Identity Cloud Service 整合以供驗證,而不是從頭開始建立 Python Web 應用程式。此應用程式是使用 Python 的 DJango Web 架構所開發。

範例 Python Web 應用程式包含兩種類型的內容:

  • 可公開存取的頁面

  • 使用應用程式驗證目前使用者階段作業中是否有 Oracle Identity Cloud Service 使用者存取權杖的專用頁面

架構

下列架構圖說明 Python Web 應用程式如何使用 SDK 程式庫搭配 Oracle Identity Cloud Service 執行三方 OpenID Connect 認證流程。此認證流程是以授權碼授權類型為基礎的 OAuth 2.0 授權流程。若使用此授權類型,使用者必須登入 Oracle Identity Cloud Service 。使用者登入之後,就可以存取受到 Oracle Identity Cloud Service 保護的其他應用程式,而不需要重新認證。

圖 - 授權代碼授權類型

圖 - 的描述如下
「圖 - 授權代碼授權類型」的描述

授權碼授權類型包含下列步驟:

  1. 使用者要求受保護的 URL。

  2. Oracle Identity Cloud Service 會顯示「登入」頁面。

  3. 使用者送出其登入證明資料。

  4. Oracle Identity Cloud Service 會發出授權碼給 Python 應用程式。

  5. Python 應用程式使用 SDK 交換存取權杖的授權碼。

  6. Python 應用程式會顯示使用者的內容。

此解決方案中的 Python Web 應用程式不會發布到生產環境,也不會遵循使用 Python (例如資料處理、模式和安全性) 的最佳做法。此範例應用程式的唯一目的是說明如何使用 SDK 整合 Oracle Identity Cloud Service 和 Python Web 應用程式。

關於必要服務與角色

此解決方案需要存取 Oracle Identity Cloud Service

這些是 Oracle Identity Cloud Service 所需的角色。

服務名稱:角色 需要 ...
Oracle Identity Cloud Service : Security administrator 存取 Oracle Identity Cloud Service 主控台的下載項目頁面。您可以從此頁面下載 Node.js SDK。
Oracle Identity Cloud Service :Application administrator 管理 Oracle Identity Cloud Service 中的應用程式。這包括在 Oracle Identity Cloud Service 註冊範例 Node.js 應用程式。

請參閱 Oracle 產品、解決方案和服務,瞭解您需要的內容。