將 ADFS 2.0 和 3.0 與 OAM 整合:先決條件

本文說明如何使用 SAML 2.0 通訊協定,將 OAM 與 ADFS 2.0/3.0 整合至 Federation SSO。整合涵蓋:

SAML 2.0 整合的基礎如下:

ADFS 2.0 可在 Windows 2008 R2 中使用,而 ADFS 3.0 則可在 Windows 2012 R2 中使用。這些文章展示了 ADFS 3.0 的螢幕擷取畫面,而記錄的步驟適用於這兩個版本。

先決條件

若要使用 SAML 2.0 協定與 ADFS 整合,必須將 OAM 設定為使用 HTTPS/SSL 作為其端點。如果未這麼做,ADFS 在建立「聯合信任」時不接受 OAM SAML 2.0 描述資料。

將 ADFS 整合為 IdP 與 OAM 作為 SP 時,需要考慮下列幾點:

注意:這適用於使用「HTTP 基本認證」來挑戰使用者的其他 IdPs。

最後,在整合 SAML 2.0 的 OAM 和 ADFS 之前,必須先下載這兩部伺服器的描述資料。

啟用 SSL

在 OAM 的公用端點上啟用 SSL 的方式有幾種:

元件 (負載平衡器,OHS 或 WLS) 設定為 SSL 之後,必須更新 OAM 組態,以參照新端點作為其公用 URL:

  1. 移至「OAM 管理主控台」:http(s)://oam-admin-host:oam-adminport/oamconsole

  2. 瀏覽至組態Access Manager 設定值

  3. 將「OAM 伺服器主機」設為公用端點的主機名稱

  4. 將 OAM 伺服器張貼至公用端點的 SSL 連接埠

  5. 將 OAM 伺服器協定設為 https

  6. 按一下套用

Access_Manager_Settings.jpg 圖解說明

注意:進行這些變更之後,擷取「OAM SAML 2.0 描述資料」會包含新的 https URL。

強大的加密功能

如上所述,在將 SAML 宣告傳送給 SP 時,ADFS IdP 會使用 Java 視為強式密碼的 AES-256 加密「SAML 宣告」(相對於「正常強度」,例如 AES-128、AES-192、3DES...)。

由於法律的匯出原因,JDK 無法隨附在 JCE 中啟用的強式加密: administrator/integrator/developer 必須下載並安裝 Java Cryptography Extension (JCE) Unlimited Strength Janziction 原則。

若要更新「JCE 無限強度管轄區」原則檔案以支援強式加密 (例如 AES-256),請執行下列步驟:

  1. 決定用於 OAM 部署的主要 Java 版本。

  2. 尋找「OAM 執行」使用的 JDK 資料夾:$JDK_HOME/bin/java -version

  3. 主要版本將會列印 (6 或 7)。

  4. 下載 JCE Unlimited Strength Jrance 政策。

  5. 如果您使用的是 JDK 7:

    • http://www.oracle.com/technetwork/java/javas%20/downloads/index.htm
  6. 如果您使用的是 JDK 6:

    • http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archivedownloads-java-plat-419418.html
  7. 將下載的 ZIP 檔案內容解壓縮至暫存資料夾。

  8. 複製解壓縮的 local_policy.jarUS_export_policy.jar 檔案,使其成為下列 JDK 的目錄 (此作業會覆寫該資料夾中存在的 local_policy.jarUS_export_policy.jar 檔案):$JDK_HOME/jre/lib/security

  9. 重新啟動 WLS 網域中的「WLS 伺服器」以套用變更。

若要設定 ADFS 在傳送 SAML 宣告至 SP 時停用加密,請執行下列步驟:

  1. 前往已部署 ADFS 的機器。

  2. 如果使用 ADFS 2.0,請按一下開始功能表程式集管理工具Windows PowerShell 模組

  3. 如果使用 ADFS 3.0,請按一下「開始功能表」、「管理工具」、「適用於 Windows PowerShell 的 Active Directory 模組」。

  4. 執行下列命令 (使用在 ADFS 中建立夥伴所使用的 SP 名稱取代 RP_NAME):set-ADFSRelyingPartyTrust –TargetName“RP_NAME” –EncryptClaims $False

ADFS 登出

SAML 2.0 協定定義登出設定檔,其中與目前使用者階段作業之聯合 SSO 相關的每個聯合夥伴都會收到使用者登出的通知。這可讓各種「聯合」夥伴終止其 SSO 網域中的使用者階段作業。

ADFS IdP 提供在執行「聯合 SSO」時認證使用者的不同方式:

備註:瀏覽器會保留憑證,並在瀏覽器存取 ADFS 時隨時將憑證提供給 ADFS 伺服器,直到瀏覽器關閉為止。

視使用者的認證方式而定,讓我們看看 SAML 2.0 登出的效果 (或非效果):

因此,如果使用「HTTP 基本認證」或「整合的 Windows 認證」作為 ADFS 2.0 IdP 的認證機制,在登出之後,使用者仍會在 IdP「登入」,而且執行新的「聯合 SSO」將不會觸發受挑戰的使用者,並在完成「聯合 SSO」後自動認證使用者。

重要注意事項:登出時看到的行為也適用於使用 HTTP 基本認證作為認證機制的其他 IdPs (例如 OAM)

SAML 2.0 描述資料

從 ADFS 2.0/3.0 伺服器下載 SAML 2.0 中繼資料:

  1. 開啟瀏覽器

  2. 前往 ADFS 2.0/3.0 描述資料發布服務:https://adfs-host:adfs-port/FederationMetadata/2007-06/FederationMetadata.xml

  3. 使用瀏覽器中的「另存新檔」按鈕,將描述資料儲存在本機。

從 OAM 下載 SAML 2.0 描述資料:

  1. 開啟瀏覽器

  2. 前往 OAM 描述資料發布服務:http(s)://oam-runtime-host:oam-runtimeport/oamfed/idp/metadatahttp(s)://oam-runtime-host:oam-runtimeport/oamfed/sp/metadata

  3. 使用瀏覽器中的「另存新檔」按鈕,將描述資料儲存在本機。

注意:在下載 OAM 描述資料之前,請確定先在 OAM 中啟用 SSL,因為描述資料包含 OAM URL。

SHA-256 與 SHA-1

在 OAM 與 ADFS 之間設定「同盟」之後,您必須:

其他學習資源

探索 docs.oracle.com/learn 上的其他實驗室,或存取 Oracle Learning YouTube 頻道上的更多免費學習內容。此外,瀏覽 education.oracle.com/learning-explorer 成為 Oracle Learning Explorer。

如需產品文件,請造訪 Oracle Help Center