18.6 為叢集設定 OSP 和 SSPR

Identity Manager 支援 Tomcat 叢集環境中的 SSPR 組態。

18.6.1 設定 SSPR 以支援叢集

若要在叢集的第一個節點中更新 SSPR 資訊,請啟動 /opt/netiq/idm/apps/configupdate/configupdate.sh 中的組態公用程式。

在隨即開啟的視窗中,按一下 SSO 用戶端 > Self Service Password Reset,並為用戶端 ID密碼OSP OAuth 重新導向 URL 參數輸入值。

18.6.2 在叢集節點上設定任務

在叢集節點上執行以下組態任務:

  1. 若要以 SSPR IP 位址更新「忘記密碼」連結,請在第一個節點上登入使用者應用程式,然後按一下管理 > 忘記密碼

    如需 SSPR 組態的詳細資訊,請參閱設定忘記密碼管理功能

  2. 若要變更「變更我的密碼」連結,請參閱針對分散式環境或叢集環境更新儀表板中的 SSPR 連結

  3. 在叢集中的其他節點上,驗證「忘記密碼」連結和「變更我的密碼」連結是否已用 SSPR IP 位址更新。

    附註:如果「變更密碼」和「忘記密碼」連結已用 SSPR IP 位址更新,則不需要執行其他變更。

  4. 在第一個節點中,停止 Tomcat,並使用以下指令指定負載平衡器伺服器的 DNS 名稱,以產生新 osp.jks 檔案:

    /opt/netiq/common/jre/bin/keytool -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass <password> -keypass <password> -alias osp -validity 1800 -dname "cn=<loadbalancer IP/DNS>"

    例如:/opt/netiq/common/jre/bin/keytool -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass changeit -keypass changeit -alias osp -validity 1800 -dname "cn=mydnsname"

    附註:確認金鑰密碼與在 OSP 安裝期間提供的密碼相同。或者,可以使用組態更新公用程式並包括金鑰儲存區密碼來變更該密碼。

  5. (視情況而定) 若要驗證 osp.jks 檔案是否已透過這些變更更新,請執行以下指令:

    /opt/netiq/common/jre/bin/keytool -list -v -keystore osp.jks -storepass changeit

  6. 備份位於 /opt/netiq/idm/apps/osp 中的原始 osp.jks 檔案,並將新 osp.jks 檔案複製到此位置。新 osp.jks 檔案是在步驟 4 中建立的。

  7. 將第一個節點上位於 /opt/netiq/idm/apps/osp 中的新 osp.jks 檔案複製到叢集中的所有其他使用者應用程式節點上。

  8. 在第一個節點中啟動組態公用程式,並在「SSO 用戶端」索引標籤下將所有 URL 設定 (例如抵達頁面的 URL 連結和 OAuth 重新導向 URL) 變更為負載平衡器 DNS 名稱。

    1. 儲存在組態公用程式中所做的變更。

    2. 若要在叢集的所有其他節點中反映此變更,請將第一個節點上位於 /TOMCAT_INSTALLED_HOME/conf 中的 ism-configuration properties 檔案複製到所有其他使用者應用程式節點。

      附註:您之前已將第一個節點上的 ism.properties 檔案複製到叢集中的其他節點。如果您在安裝使用者應用程式期間指定了自訂安裝路徑,請在叢集節點中使用組態更新公用程式確保參考路徑正確。

      此情境中,OSP 和使用者應用程式安裝在同一部伺服器上;因此,為重新導向 URL 使用了相同的 DNS 名稱。

      如果 OSP 與使用者應用程式安裝在不同的伺服器上,請將 OSP URL 變更為指向負載平衡器的不同 DNS 名稱。請對安裝了 OSP 的所有伺服器執行此操作。這可確保所有 OSP 申請均透過負載平衡器傳發送到 OSP 叢集 DNS 名稱。這涉及到為 OSP 節點建立一個單獨的叢集。

  9. /TOMCAT_INSTALLED_HOME/bin/ 目錄下的 setenv.sh 檔案中執行以下動作:

    1. 為確保成功進行 mcast_addr 繫結,JGroups 要求 preferIPv4Stack 內容設定為 true。為此,請在所有節點上的 setenv.sh 檔案中新增 JVM 內容「-Djava.net.preferIPv4Stack=true」。

    2. 在第一個節點上的 setenv.sh 檔案中新增 「-Dcom.novell.afw.wf.engine-id=Engine」。

      引擎名稱應該是唯一的。請提供安裝第一個節點時指定的名稱。如果之前未指定名稱,則預設名稱為「Engine」。

      同樣,為叢集中的其他節點新增唯一的引擎名稱。例如,對於第二個節點,引擎名稱可以是 Engine2。