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

本文說明如何使用 SAML 2.0 通訊協定將 OAM (11.1.2.2.0 或更新版本) 與 ADFS 2.0/3.0 整合。整合涵蓋:

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. 瀏覽至 ConfigurationAccess Manager 設定值

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

  4. 將「OAM 伺服器張貼」設為公用端點的 SSL 連接埠。

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

  6. 按一下套用

Enabling_SSL.jpg 圖解說明

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

強大的加密功能

依照預設,ADFS IdP 會使用 Java 視為強式加密方式的 AES-256 將 SAML 宣告傳送至 SP 時加密 (相對於「正常強度」,例如 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:

    1. http://www.oracle.com/technetwork/java/javase/downloads/index.html
  6. 如果您使用的是 JDK 6:

    1. 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 檔案):

  9. $JDK_HOME/jre/lib/security/

  10. 重新啟動 WLS 網域中的「WLS 伺服器」以套用變更。
  11. 若要設定 ADFS 在傳送 SAML 宣告至 SP 時停用加密,請執行下列步驟:

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

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

      2. 如果使用 ADFS 3.0,請按一下開始功能表管理工具Windows PowerShell 的 Active Directory 模組

    2. 執行下列命令 (將 RP_NAME 取代為用來在 ADFS 中建立夥伴的 SP 名稱):

      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:adfsport/FederationMetadata/2007-06/FederationMetadata.xml

    1. 使用瀏覽器中的另存新檔按鈕,將中繼資料儲存在本機

    從 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