關於為 Oracle E-Business Suite 設定 Azure AD 與 Oracle Access Manager 之間的 SSO
當客戶想要在 Microsoft Azure 上執行 Oracle 應用程式 (例如 Oracle E-Business Suite),但使用內部部署 Oracle Access Manager 作為服務提供者時,Azure AD 和內部部署 OAM 之間需要聯合 SSO。
由於在使用其他雲端應用程式時,雲端內有最大的整合支援,因此理想的解決方案是設定 SAML 2.0 以提供必要的聯合 SSO 架構。
開始之前
架構
此解決方案會以混合方式呈現 Oracle Access Manager 與 E-Business Suite 之間已經記錄的企業內部部署整合。
- 它會將 Oracle E-Business Suite 置於 Azure。
- 它使用 Azure Active Directory (Azure AD) 作為聯合身分識別提供者 (IDP),向 E-Business Suite 認證使用者。
- 您會以內部部署的服務提供者 (SP) 的後端 LDAP 伺服器 (Oracle Unified Directory 或 Oracle Internet Directory) 執行 Oracle Access Manager。

ebiz-architecture.png 圖解描述
這個方法可讓您更進一步將某些基礎架構搬移至雲端。而只要將 E-Business Suite - Oracle Access Manager 與 Oracle Unified Directory 或 Oracle Internet Directory 搬移至雲端,就不需要停止這些功能。
此架構的另一個關鍵部分是提供使用者帳戶。本白皮書假設 Azure AD 是使用者帳戶的真值來源。這表示必須使用佈建 (例如 Oracle Directory Integration Platform 同步化) 或識別管理工具 (例如 Microsoft Identity Manager 或 Oracle Identity Manager) 的方法,將使用者帳戶佈建到 Oracle Access Manager LDAP 伺服器 (Oracle Unified Directory 或 Oracle Internet Directory)。然後,當作雙向同步處理的 Oracle Directory Integration Platform 可以將該帳戶同步至 E-Business Suite 資料庫。本文件稍後將說明 SSO 的重要屬性。
瞭解元件
下表說明此混合架構中的元件 (如上圖所示)。
資料中心 | 元件 |
---|---|
Azure |
|
Oracle Cloud Infrastructure | Oracle E-Business Suite Database 12.2 或更新版本 |
客戶內部部署 |
|
瞭解佈建和同盟流程
上圖說明為此架構定義的合併佈建與聯合流程。
此佈建流程 (下面在交易 1-3 中說明) 說明如何在 Azure AD 中建立使用者帳戶、佈建至 Oracle Access Manager LDAP 伺服器,以及使用 Oracle Directory Integration Platform 同步至 E-Business Suite 資料庫的一個範例。聯合流程說明在交易 4-10 中。如需其他同盟流程詳細資訊,請參閱瞭解 Azure AD 和 E-Business Suite Federation Flow 。
- 包含使用者主要項目名稱 (UPN) 的初始使用者帳戶會從 Azure AD 佈建至 Oracle Access Manager LDAP 伺服器 (Oracle Unified Directory 或 Oracle Internet Directory)。此佈建不是 Oracle Directory Integration Platform 的責任,而是透過此手冊範圍之外的一些佈建類型來完成。
- Oracle Directory Integration Platform 會監聽 Oracle Unified Directory 變更日誌,並將使用者帳戶佈建至 E-Business Suite 資料庫。
- Oracle Directory Integration Platform 會將使用者帳戶對應至 USER_NAME,並將 orclguid 對應至 USER_GUID,再對應至 E-Business Suite 資料庫。
- 使用者要求 E-Business Suite 存取,WebGate 會檢查 OAMAuthCookie 權杖。
- WebGate 會驗證使用者沒有 OAMAuthCookie 記號,因此它會向 Oracle Access Manager 檢查是否有動作。
- Oracle Access Manager 會告知 WebGate 將使用者重新導向至 Azure AD 以進行聯合認證,而 Azure AD 會提示使用者登入。
- Azure AD 會驗證使用者的證明資料,然後使用郵件屬性作為使用者對應,將 SAML 2.0 宣告傳送至 Oracle Access Manager。
- Oracle Access Manager 接受 SAML 2.0 宣告,並使用 UPN 在 Oracle Unified Directory 中傳回相符的使用者。在回應中,它會在原則中定義的標頭中提供 Oracle Unified Directory 的 USER_NAME (uid) 和 USER_ORCLGUID (orclguid)。
- WebGate 會將使用者重新導向至 E-Business Suite,並將 USER_NAME 與 USER_ORCLGUID 作為標頭傳送至 AccessGate。
- AccessGate 會查尋 E-Business Suite 資料庫中的 USER_NAME 與 USER_ORCLGUID,以確認使用者是否存在。成功時,它會設定自己的階段作業,並將 E-Business Suite 入口網站頁面傳回給使用者。
關於必要的服務與角色
此解決方案需要在這些服務內組合特定服務和角色。
- Oracle Cloud Infrastructure
- Oracle Access Manager
- 部署到 Azure 的完整功能 Oracle E-Business Suite 執行處理
- Microsoft Azure 廣告
服務名稱:角色 | 需要 ... |
---|---|
Oracle Cloud Infrastructure:管理員 | 建立及管理身分識別資源 |
Oracle Access Manager:管理員 | 設定及維護內部部署使用者設定值 |
E-Business Suite:管理角色,包含資料庫管理員和 LDAP 管理員 | 設定 E-Business Suite 並變更安全性設定值 |
Azure AD:Azure AD 貢獻者或更高權限帳戶 | 取得 Azure 訂閱 |
Azure AD:Azure 應用程式或全域管理員 | 處理 Azure 端的組態和設定 |