遠端載入器可以代管 .so 或 .jar 檔案中包含的 Identity Manager 應用程式 shim。Java 遠端載入器只代管 Java 驅動程式 Shim。它不能載入或代管原生 (C++) 驅動程式 Shim。
在使用遠端載入器之前,您必須設定應用程式 shim,以與 Identity Manager 引擎進行安全地連接。此外,您還必須設定遠端載入器和 Identity Manager 驅動程式。如需 shim 的詳細資訊,請參閱瞭解 Shim。
您必須確保資料能夠在遠端載入器與 Identity Manager 引擎之間安全傳輸。NetIQ 建議使用輸送層安全性/安全通訊端層 (TLS/SSL) 通訊協定來通訊。若要支援 TLS/SSL 連接,您需要有金鑰儲存區檔案或 KMO 中儲存的相應自行簽署證書。本節說明如何建立、輸出和儲存該證書。
附註:請在代管 Identity Manager 引擎與代管遠端載入器的伺服器上使用相同的 SSL 版本。如果伺服器上的 SSL 與遠端載入器上的 SSL 版本不相符,伺服器將會傳回 SSL3_GET_RECORD:錯誤的版本號碼錯誤訊息。此訊息僅用於警告目的,伺服器與遠端載入器之間的通訊並不會中斷。不過,該錯誤可能會造成困擾。
遠端載入器會開啟用戶端通訊端,並監聽來自遠端介面 Shim 的連接。遠端介面 shim 和遠端載入器會執行 SSL 信號交換,以建立安全通道。然後,遠端介面 shim 會向遠端載入器進行驗證。如果遠端介面 shim 驗證成功,遠端載入器會向遠端介面 shim 進行驗證。僅在雙方都確認自己是與有授權之實體建立通訊時,才會發生同步化傳輸。
用於在驅動程式與 Identity Manager 引擎之間建立 SSL 連接的程序取決於驅動程式類型:
對於原生驅動程式 (例如 Active Directory 驅動程式),請指向 base64 編碼的證書。如需詳細資訊,請參閱管理自行簽署的伺服器證書。
對於 Java 驅動程式,您必須建立金鑰儲存區。如需詳細資訊,請參閱使用 SSL 連接時建立金鑰儲存區檔案。
附註:遠端載入器允許在遠端載入器與 Identity Manager 伺服器上代管的遠端介面 shim 之間使用自訂連接方法。若要設定自訂連接模組,請參閱該模組隨附的文件中關於應該和允許在連接字串中指定何值的資訊。
您可以建立並輸出自行簽署的伺服器證書,以確保在遠端載入器與 Identity Manager 引擎之間進行安全通訊。如需額外的安全保障,您可以依照 Suite B 指定為 SSL 通訊設定較強的加密。此通訊需要使用 ECDSA (Elliptic Curve Digital Signature Algorithm,橢圓曲線數位簽名演算法) 證書來加密資料。啟用 Suite B 時,遠端載入器使用 TLS 1.2 做為通訊協定。如需 Suite B 的詳細資訊,請參閱「Suite B Cryptography」(Suite B 加密法)。
您可以輸出新建立的證書,也可以使用現有證書。
附註:當伺服器加入網路樹時,eDirectory 會建立下列預設證書:
SSL CertificateIP
SSL CertificateDNS
符合 Suite B 要求的證書
登入 NetIQ iManager。
若要建立新證書,請完成以下步驟:
按一下 NetIQ Certificate Server > 建立伺服器證書。
選取擁有該證書的伺服器。
指定證書的綽號。例如 remotecert。
附註:NetIQ 建議不要在證書綽號中使用空格。例如,應使用 remotecert 而不使用 remote cert。
同時,請記下證書綽號。此綽號在驅動程式的遠端連接參數中將用做 KMO 名稱。
選取證書建立方法,然後按下一步。
您可以選擇以下選項︰
標準: 此選項會使用可能的最大金鑰大小建立伺服器證書物件,並使用您的組織 CA 簽署公用金鑰證書。
自訂: 此選項會使用您指定的設定建立伺服器證書物件。它可讓您為伺服器證書物件設定一些自訂設定。選取此選項可建立 ECDSA 證書以用於 Suite B 通訊。
輸入︰ 此選項會使用 PKCS12 (PFX) 檔案中的金鑰和證書建立伺服器證書物件。您可以用此選項搭配「輸出」功能來備份與還原「伺服器證書」物件,或將「伺服器證書」物件移到別的伺服器。
指定證書參數。
接受其餘的證書預設值。
檢閱摘要,按一下完成,然後按一下關閉。
若要輸出證書,請完成以下步驟:
在 iManager 中,導覽至角色與任務 > NetIQ 證書存取 > 伺服器證書。
瀏覽並選取已建立的證書或伺服器建立的證書 (例如 SSL CertificateDNS)。
按一下「輸出」。
從下拉式功能表中選取 OU=organization CA.O=TREEANAME 做為 CA 證書。
從下拉式功能表中選取 BASE64 > 輸出格式。
按下一步。
按一下「儲存」,然後按一下「關閉」。
若要在 Java 驅動程式與 Identity Manager 引擎之間使用 SSL 連接,您必須建立一個金鑰儲存區。金鑰儲存區是包含加密金鑰和證書 (選擇性) 的 Java 檔案。如果要在遠端載入器與 Identity Manager 引擎之間使用 SSL,並且您使用的是 Java shim,那麼,您需要建立一個金鑰儲存區檔案。以下章節說明了如何建立金鑰儲存區檔案:
若要在平台上建立金鑰儲存區,可以在指令行輸入下列指令:
keytool -import -alias trustedroot -file self-signed_certificate_name -keystore filename -storepass keystorepass
檔案名稱可以是任意名稱。例如 rdev_keystore。
在 Linux 環境中,請使用 create_keystore 檔案,這是一個會呼叫 Keytool 公用程式的外圍程序程序檔。該檔案已隨 rdxml 一起安裝,預設位於安裝目錄/dirxml/bin 目錄中。\dirxml\java_remoteloader 目錄下的 dirxml_jremote.tar.gz 檔案中也包含 create_keystore 檔案。
在指令行輸入下列指令:
create_keystore self-signed_certificate_name keystorename
例如,輸入下列其中一項
create_keystore tree-root.b64 mystore create_keystore tree-root.der mystore
Create_keystore 程序檔會為金鑰儲存區密碼指定一個硬式編碼密碼「dirxml」。因為只有公用證書和公用金鑰儲存在金鑰儲存區中,所以這不是安全性風險。
若要使遠端載入器能夠與代管 Identity Manager 應用程式 shim 的驅動程式例項配合使用,您必須對該驅動程式例項進行設定。例如,您必須指定該例項的連接和連接埠設定。您可以透過指令行在組態檔案中指定設定。例項執行後,您便可以使用指令行修改組態參數,或者指示遠端載入器執行某個功能。例如,您可能想要開啟追蹤視窗或卸載遠端載入器。
本節提供關於組態參數的資訊。這些說明將會指出,當例項正在執行時,是否可以從指令行傳送參數來更新遠端載入器。
如需設定新驅動程式例項的詳細資訊,請參閱節 11.3.3, 為驅動程式例項設定遠端載入器。
您可以在指令行或組態檔案中設定驅動程式例項。NetIQ 提供了 config8000.txt 範例檔案,以協助您設定要與應用程式 shim 配合使用的遠端載入器和驅動程式。依預設,該範例檔案位於 /opt/novell/dirxml/doc 目錄中。例如,該組態檔案可能包含以下幾行:
-commandport 8000 -connection "port=8090 rootfile=/dirxmlremote/root.pem" -module $DXML_HOME/dirxmlremote/libcskeldrv.so.0.0.0 -trace 3
使用以下參數:
(選擇性) 以字串格式指定簡短描述 (例如 SAP),應用程式將在追蹤視窗的標題中使用該描述,並將其用於稽核記錄。例如:
-description SAP
-desc SAP
(視情況而定) 使用 Java 驅動程式時,指定要代管之 Identity Manager 應用程式 shim 的 Java 類別名稱。此選項指示應用程式使用 Java 金鑰儲存區來讀取證書。例如:
-class com.novell.nds.dirxml.driver.ldap.LDAPDriverShim-cl com.novell.nds.dirxml.driver.ldap.LDAPDriverShim
附註:
如果您指定了 -module 選項,則不能使用此選項。
如果您使用定位字元做為 -class 選項中的分隔符,遠端載入器將不會自動啟動,您必須手動來啟動它。若要讓遠端載入器正常啟動,您可以使用空格字元,而不要使用定位字元。
如需可為此選項指定之名稱的詳細資訊,請參閱瞭解 Java -class 參數的名稱。
指定驅動程式例項用於進行控制操作的 TCP/IP 連接埠。例如 -commandport 8001 或 -cp 8001。預設值為 8000。
若要在同一個伺服器上將多個驅動程式例項與遠端載入器配合使用,請為每個例項指定不同的連接埠和指令埠。
如果驅動程式例項代管了一個應用程式 shim,則指令埠為另一個例項用於與代管 shim 之例項進行通訊的連接埠。如果驅動程式例項將指令傳送到某個代管應用程式 shim 的例項,則指令埠為代管例項監聽的連接埠。
如果要從指令行將此參數傳送到代管應用程式 shim 的例項,則指令埠代表代管例項監聽的連接埠。您可以在遠端載入器執行時傳送此指令。
指定驅動程式例項的組態檔案。例如:
-config config.txt
組態檔案可以包含除 config 之外的任何指令行選項。在指令行上指定的選項會優先於組態檔案中指定的選項。
您可以在遠端載入器執行時傳送此指令。
指定用於連接到代管 Identity Manager 引擎並執行 Identity Manager 遠端介面 shim 之伺服器的設定。預設連接方法為使用 SSL 的 TCP/IP。
若要在同一個伺服器上將多個驅動程式例項與遠端載入器配合使用,請為每個例項指定不同的連接埠和指令埠。
請使用以下語法輸入連接設定:
-connection "parameter parameter parameter"
例如:
-connection "port=8091 fromaddress=198.51.100.0 rootfile=server1.pem keystore=ca.pem localaddress=198.51.100.0 hostname=198.51.100.0 kmo=remote driver cert"
請使用以下參數指定 TCP/IP 連接的設定:
(選擇性) 指定遠端載入器是否監聽特定的本地 IP 位址。如果代管遠端載入器的伺服器具有多個 IP 位有效值包括:
address=address number
address='localhost'
例如:
address=198.51.100.0
如果您未指定任何值,遠端載入器將會監聽所有本地 IP 位址。
指定遠端載入器接受其連接的伺服器。應用程式會忽略來自其他位址的連接。請指定伺服器的 IP 位址或 DNS 名稱。例如:
fromaddress=198.51.100.0
fromaddress=testserver1.company.com
(視情況而定) 當來自 Identity Manager 引擎的其他有效連接發生信號交換逾時時適用。為遠端載入器與 Identity Manager 引擎之間的信號交換指定逾時期間,以毫秒為單位。例如:
handshaketimeout=1000
您可以指定大於或等於零的整數。零表示連接永不逾時。預設值為 1000 毫秒。
指定要執行遠端載入器之伺服器的 IP 位址或名稱。例如:
hostname=198.51.100.0
指定遠端載入器用於連接 Identity Manager 引擎的 TLS 通訊協定版本。例如:
secureprotocol=TLSv1_2
Identity Manager 支援 TLSv1 和 TLSv1_2。遠端載入器預設使用 TLSv1_2。若要使用 TLSv1,請在參數中指定此版本。
(視情況而定) 僅當您希望遠端載入器使用 Suite B 加密演算法與 Identity Manager 引擎通訊時才適用。
若要對通訊使用 Suite B,請指定 true。只有 TLS 1.2 通訊協定支援此通訊。
如果您嘗試將啟用 Suite B 的引擎與不支援 TLSv1.2 的遠端載入器進行連接,信號交握將會失敗,並且無法建立通訊。例如,遠端載入器 4.5.3 就不支援 TLS v1.2。
(視情況而定) 僅當您想讓遠端載入器與 Identity Manager 引擎透過驗證可信證書管理中心 (CA) 核發的公用金鑰證書或數位證書或者自行簽署的證書來相互驗證時適用。例如:
useMutualAuth=true
指定 Java 金鑰儲存區的檔案名稱,該金鑰儲存區包含遠端介面 shim 所用證書之發行者的可信根證書。例如:
keystore=keystore filename
通常,您可指定代管遠端介面 shim 之網路樹的證書管理中心。
指定包含用於 SSL 連接的金鑰和證書之金鑰資料物件的金鑰名稱。例如:
kmo=remote driver cert
指定要將用戶端連接的通訊端與之相結合的 IP 位址。例如:
localaddress=198.51.100.0
指定遠端載入器會在其上監聽來自遠端介面 shim 之連接的 TCP/IP 連接埠。若要指定預設連接埠,請輸入 port=8090。
指定包含遠端介面 Shim 所用證書核發者可信根證書的檔案名稱。證書檔案必須為 Base 64 格式 (PEM)。例如:
rootfile=trustedcert
通常,該檔案是代管遠端介面 shim 之網路樹的證書管理中心。
指定您為 keystore 參數輸入的 Java 金鑰儲存區密碼。例如:
storepass=mypassword
若要讓遠端載入器與 Java 驅動程式通訊,請使用以下語法指定金鑰值組︰
keystore=keystorename storepass=password
指定遠端載入器使用的資料檔案所在目錄。例如:
-datadir /var/opt/novell/dirxml/rdxml/data
使用此指令後,rdxml 程序會將其目前目錄變更為指定的目錄。系統將在此資料目錄中建立不帶明確指定路徑的追蹤檔案和其他檔案。
指示應用程式顯示說明。
(視情況而定) 指定您要為 Java 驅動程式 shim 例項設定密碼。
附註:如果您未同時指定 -class 值,請將此選項與 -setpasswords 選項配合使用。
指示例項在指定的連接埠上啟用 Java 除錯。例如:
-javadebugport 8080
在開發 Identity Manager 應用程式 shim 時可以使用此指令。您可以在遠端載入器執行時傳送此指令。
指定 Java 環境的參數。請使用以下語法輸入 Java 環境參數:
-javaparam parameter -jp parameter -jp parameter
附註:請勿對 Java 遠端載入器使用此參數。
若要為個別參數指定多個值,請用引號將該參數括住。例如:
-javaparam DHOST_JVM_MAX_HEAP=512M -jp DHOST_JVM_MAX_HEAP=512M -jp "DHOST_JVM_OPTIONS=-Dfile.encoding=utf-8 -Duser.language=en"
可以使用以下參數設定 Java 環境:
指定 JVM 要在其中搜尋套件 (.jar) 和類別 (.class) 檔案的其他路徑。若要為 Linux JVM 指定多個類別路徑,請在各路徑之間插入一個冒號。
以十進位位元組數字指定啟始 (最小) JVM 堆積大小。指定一個數值,後面跟著代表位元組類型的 G、M 或 K。例如:
100M
如果您未指定位元組類型,大小的單位將預設為位元組。使用此參數的效果與使用 Java -Xms 指令相同。
此參數優先於驅動程式集屬性選項。增加啟始堆積大小可以改善啟動時間和生產量效能。
以十進位位元組數字指定最大 JVM 堆積大小。指定一個數值,後面跟著代表位元組類型的 G、M 或 K。例如:
100M
如果您未指定位元組類型,大小的單位將預設為位元組。
此參數優先於驅動程式集屬性選項。
指定在啟動驅動程式的 JVM 例項時要使用的引數。請使用空格來分隔各個選項字串。例如:
-Xnoagent -Xdebug -Xrunjdwp: transport=dt_socket,server=y, address=8000
驅動程式集屬性選項優先於此參數。此環境變數附加在驅動程式集屬性選項的末尾。如需有效選項的詳細資訊,請參閱 JVM 文件。
在您發出的指令會變更設定或影響例項操作的情況下,指定驅動程式例項的密碼。對於指令所針對的例項,您指定的密碼必須與使用 setpasswords 指定的第一個密碼相同。例如:
-password netiq4
如果您在發出指令時未傳送該密碼,驅動程式例項會提示您提供該密碼。
您可以在遠端載入器執行時傳送此指令。
指定遠端載入器程序使用的程序 ID 檔案 (pidfile) 所在目錄的路徑。例如:
-piddir /var/opt/novell/dirxml/rdxml/data
Pidfile 主要由 SysV-style init 程序檔使用。預設值為 /var/run。如果執行遠端載入器的使用者權限不足,無法開啟 /var/run 中的 pidfile 以進行讀取和寫入,那麼,預設值將是目前的目錄。
此參數類似於 -datadir。
指定驅動程式例項的密碼,以及與遠端載入器通訊之遠端介面 shim 的 Identity Manager 驅動程式物件密碼。
您不需要指定密碼,遠端載入器會提示您輸入密碼。但是,如果指定了遠端載入器的密碼,那麼還必須指定與 Identity Manager 引擎伺服器上遠端介面 shim 關聯之 Identity Manager 驅動程式物件的密碼。若要指定密碼,請使用以下語法:
-setpasswords Remote_Loader_password driver_object_password
例如:
-setpasswords netiq4 idmobject6
附註:使用此選項可為驅動程式例項設定指定的密碼,但不會載入 Identity Manager 應用程式 shim 或與其他例項通訊。
(視情況而定) 在代管 Identity Manager 應用程式 shim 的情況下,為追蹤檔案指定設定,該檔案中包含遠端載入器和此例項驅動程式所傳送的資訊訊息。
將以下參數新增至組態檔案:
指定要在追蹤視窗中顯示的訊息層級。例如:
-trace 3
遠端載入器的追蹤層級與代管 Identity Manager 引擎的伺服器上使用的追蹤層級對應。
指定用於記錄追蹤訊息的檔案所在的路徑。必須為特定電腦上執行的每個驅動程式例項指定唯一的追蹤檔案。例如:
-tracefile /home/trace.txt
如果 -trace 參數大於零,應用程式便會將訊息寫入該檔案。系統無需開啟追蹤視窗即可將訊息寫入該檔案。
指定此例項的追蹤檔案大小限制。請以 K、M 或 G (位元組類型的縮寫) 為單位指定該值。例如:
-tracefilemax 1000K
-tf 100M
-tf 10G
附註:
遠端載入器啟動時,如果追蹤檔案資料大於指定的最大值,在所有 10 個檔案都完成換用之前,追蹤檔案資料會一直大於指定的最大值。
將此選項新增至組態檔案後,應用程式將為追蹤檔案使用指定的名稱,並最多包含 9 個「換用」檔案。換用檔案使用主追蹤檔案名稱為基本名稱,後面會加上 _n,其中 n 是從 1 到 9 的數字。
(視情況而定) 如果您有一個現有的驅動程式例項在代管應用程式 shim,此參數用於指定新的資訊訊息層級。追蹤層級對應 Identity Manager 伺服器上使用的追蹤層級。例如:
-trace 3
您可以在遠端載入器執行時傳送此指令。
(視情況而定) 如果您有一個現有的驅動程式例項在代管應用程式 shim,此參數指示該例項使用追蹤檔案,或關閉已在使用的檔案並變更為使用此新檔案。例如:
-tracefilechange \temp\newtrace.txt
您可以在遠端載入器執行時傳送此指令。
(視情況而定) 僅當組態檔案中的 useMutualAuth 設定為 true 時。
僅指定對 Java 遠端載入器驅動程式啟用雙向驗證所用的金鑰儲存區密碼。
指定對 Java 和原生遠端載入器驅動程式啟用雙向驗證所用的金鑰密碼。
指示卸載驅動程式例項。如果遠端載入器正在做為 Win32 服務執行,則此指令會停止該服務。
您可以在遠端載入器執行時傳送此指令。
當您使用 -class 參數設定遠端載入器和 Java 遠端載入器的驅動程式例項時,必須指定要代管之 Identity Manager 應用程式 shim 的 Java 類別名稱。
|
Java 類別名稱 |
驅動程式 |
|---|---|
|
com.novell.nds.dirxml.driver.dcsshim.DCSShim |
Driver for Data Collection Service |
|
com.novell.nds.dirxml.driver.delimitedtext.DelimitedTextDriver |
Delimited Text Driver |
|
be.opns.dirxml.driver.ars.arsremedydrivershim.ARSDriverShim |
補救 ARS 的驅動程式 |
|
com.novell.nds.dirxml.driver.entitlement.EntitlementServiceDriver |
Entitlements Service Driver |
|
com.novell.gw.dirxml.driver.rest.shim.GWdriverShim |
GroupWise 2014 驅動程式 |
|
com.novell.idm.drivers.idprovider.IDProviderShim |
ID Provider Driver |
|
com.novell.nds.dirxml.driver.jdbc.JDBCDriverShim |
JDBC 驅動程式 |
|
com.novell.nds.dirxml.driver.jms.JMSDriverShim |
JMS 驅動程式 |
|
com.novell.nds.dirxml.driver.ldap.LDAPDriverShim |
LDAP Driver |
|
com.novell.nds.dirxml.driver.loopback.LoopbackDriverShim |
迴路驅動程式 |
|
com.novell.nds.dirxml.driver.ebs.user.EBSUserDriver |
Oracle User Management Driver |
|
com.novell.nds.dirxml.driver.ebs.hr.EBSHRDriver |
Oracle HR Driver |
|
com.novell.nds.dirxml.driver.ebs.tca.EBSTCADriver |
Oracle TCA Driver |
|
com.novell.nds.dirxml.driver.msgateway.MSGatewayDriverShim |
受管理系統閘道驅動程式 |
|
com.novell.nds.dirxml.driver.manualtask.driver.ManualTaskDriver |
手動任務驅動程式 |
|
com.novell.nds.dirxml.driver.nisdriver.NISDriverShim |
NIS 驅動程式 |
|
com.novell.nds.dirxml.driver.notes.NotesDriverShim |
Notes 驅動程式 |
|
com.novell.nds.dirxml.driver.psoftshim.PSOFTDriverShim |
PeopleSoft 驅動程式 |
|
com.netiq.nds.dirxml.driver.pum.PUMDriverShim |
Privileged User Management Driver |
|
com.novell.nds.dirxml.driver.salesforce.SFDriverShim |
Salesforce Driver |
|
com.novell.nds.dirxml.driver.SAPHRShim.SAPDriverShim |
SAP HR Driver |
|
com.novell.nds.dirxml.driver.sap.portal.SAPPortalShim |
SAP Portal Driver |
|
com.novell.nds.dirxml.driver.sapumshim.SAPDriverShim |
SAP 使用者管理驅動程式 |
|
com.novell.nds.dirxml.driver.soap.SOAPDriver |
SOAP 驅動程式 |
|
com.novell.idm.driver.ComposerDriverShim |
使用者應用程式 |
|
com.novell.nds.dirxml.driver.workorder.WorkOrderDriverShim |
WorkOrder Driver |
遠端載入器可以代管 .dll、.so 或 .jar 檔案中包含的 Identity Manager 應用程式 shim。為使遠端載入器能夠在 Linux 電腦上執行,應用程式需要每個驅動程式例項都有相應的組態檔案 (例如 LDAPShim.txt)。您也可以使用指令行選項建立或編輯組態檔案。
依預設,遠端載入器使用 TLS/SSL 通訊協定透過 TCP/IP 連接到 Identity Manager 引擎。此連接的預設 TCP/IP 連接埠為 8090。 您可以在同一個伺服器上執行多個驅動程式例項來與遠端載入器配合工作。每個例項代管一個獨立的 Identity Manager 應用程式 shim 例項。若要在同一個伺服器上使用遠端載入器的多個例項,請為每個例項指定不同的連接埠和指令埠。
附註:
組態檔案可以包含除 -config 之外的任何指令行選項。
將參數新增至組態檔案時,可以使用參數的完整格式或簡寫格式。例如,可以使用 -description 或 -desc。
以下程序先列出完整格式,然後在括號中列出簡寫格式。例如,-description 值 (-desc 值)。
如需本節中所用參數的詳細資訊,請參閱瞭解遠端載入器的組態參數。
若要建立組態檔案:
在文字編輯器中建立一個新檔案。
NetIQ 提供了 config8000.txt 範例檔案,以協助您設定要與應用程式 shim 配合使用的遠端載入器和驅動程式。依預設,該範例檔案位於 /opt/novell/dirxml/doc 目錄中。
將以下組態參數新增至該檔案:
-description (選擇性)
-commandport
連接參數:
port (強制)
address
fromaddress
handshaketimeout
rootfile
keystore
localaddress
hostname
kmo
secureprotocol
enforceSuiteB
useMutualAuth
追蹤檔案參數 (選擇性):
-trace
-tracefile
-tracefilemax
-javaparam
-class 或 -module
如需指定這些參數的值的詳細資訊,請參閱節 11.3.2, 瞭解遠端載入器的組態參數。
儲存檔案。
若要在電腦啟動時自動啟動遠端載入器,請將該檔案儲存到 /etc/opt/novell/dirxml/rdxml 目錄中。
Java 遠端載入器只代管 Java 驅動程式 Shim。它不能載入或代管原生 (C++) 驅動程式 shim。
若要在 Linux 平台上設定 Java 遠端載入器的新例項,請完成以下步驟。如需本節中所用參數的詳細資訊,請參閱瞭解遠端載入器的組態參數。
在文字編輯器中建立一個新檔案。
NetIQ 提供了 config8000.txt 範例檔案,以協助您設定要與應用程式 shim 配合使用的遠端載入器和驅動程式。依預設,該範例檔案位於 /opt/novell/dirxml/doc 目錄中。
將以下參數新增至新組態檔案:
-description (選擇性)
-class 或 -module
例如 -class com.novell.nds.dirxml.driver.ldap.LDAPDriverShim
-commandport
連接參數:
port (強制)
address
fromaddress
handshaketimeout
rootfile
keystore
localaddress
hostname
kmo
secureprotocol
enforceSuiteB
useMutualAuth
-java (視情況而定)
-javadebugport
-password
-service
-keypassword
-keystorepassword (僅適用於 Java 驅動程式)
追蹤檔案參數 (選擇性):
-trace
-tracefile
-tracefilemax
儲存新組態檔案。
若要讓遠端載入器在電腦啟動時自動啟動,請將該檔案儲存到 /etc/opt/novell/dirxml/jremote 目錄。
啟
在提示符處,輸入 -config filename,其中,filename 是新組態檔案的名稱。例如︰
dirxml_jremote -config filename
您可以設定新驅動程式,或者啟用現有驅動程式以與遠端載入器通訊。您必須設定 Identity Manager 應用程式 shim 以與遠端載入器配合使用。
附註:本節會提供設定驅動程式以使它們與遠端載入器通訊的一般資訊。如需驅動程式特定的資訊,請參閱 Identity Manager 驅動程式文件網站上的相關驅動程式執行指南。
若要在 Designer 或 iManager 中新增新驅動程式物件或修改現有驅動程式物件,您必須設定用於啟用遠端載入器的驅動程式例項的設定。如需本節中所用參數的詳細資訊,請參閱瞭解遠端載入器的組態參數。
在綜覽中,選取 Identity Manager 驅動程式物件。
在驅動程式物件的內容中,完成以下步驟:
對於驅動程式模組,請選取連接至遠端載入器。
對於驅動程式物件密碼,請指定遠端載入器用於向 Identity Manager 引擎伺服器驗證自身的密碼。
此密碼必須與遠端載入器中定義的驅動程式物件密碼相符。
對於 遠端載入器連接參數,請指定連接到遠端載入器所需的資訊。請使用下列語法︰
hostname=xxx.xxx.xxx.xxx port=xxxx kmo=certificatename localaddress=xxx.xxx.xxx.xxx
其中
指定代管遠端載入器的伺服器的 IP 位址。例如 hostname=192.168.0.1。
指定遠端載入器監聽的連接埠。預設值為 8090。
指定包含用於 SSL 連接的金鑰和證書之金鑰資料物件的金鑰名稱。例如 kmo=remotecert。
如果在代管 Identity Manager 引擎的伺服器上設定了多個 IP 位址,請指定來源 IP 位址。
對於 遠端載入器密碼,請指定 Identity Manager 引擎 (或遠端載入器 shim) 向遠端載入器進行驗證時需要使用的密碼。
定義一個具有同等安全性的使用者。
按下一步,然後按一下完成。
您可以設定雙向驗證,以確保在遠端載入器與 Identity Manager 引擎之間進行安全通訊。雙向驗證使用證書而非密碼進行信號交握。遠端載入器與 Identity Manager 引擎透過交換並驗證可信證書管理中心 (CA) 核發的公用金鑰證書或數位證書或者自行簽署的證書來相互驗證。如果雙向驗證成功,遠端載入器會向引擎進行驗證。當遠端載入器與 Identity Manager 引擎建立了信任關係,雙方均確信它們是在與授權實體通訊後,才會出現同步流量。
若要設定雙向驗證,請執行以下任務︰
為了讓雙向驗證正常運作,您需要有引擎的伺服器證書和遠端載入器的用戶端證書。您可以從 eDirectory 輸出證書,也可以輸入來自協力廠商的證書。在大多數情況下,您會從 eDirectory 輸出伺服器證書,這樣不需要花費額外的費用。在某些情況下,您可能想要輸出遠端載入器的協力廠商用戶端證書。
Identity Vault 中的證書物件稱為金鑰材料物件 (KMO)。此物件可安全地包含證書和資料,包括與用於 SSL 連接的證書關聯的公用金鑰和私密金鑰。要使用雙向驗證,您需要兩個 KMO,一個用於引擎,一個用於遠端載入器。
您可以輸出現有的 KMO,也可以建立新的 KMO,然後將其輸出。建立用戶端 KMO 與建立伺服器 KMO 的程序不同。
若要建立伺服器 KMO︰
登入 NetIQ iManager。
在左側窗格中按一下 NetIQ 證書伺服器,然後選取伺服器證書。
選取擁有您所建立證書的伺服器。
指定證書的綽號。例如,serverkmo。
在證書建立方法中選取標準,然後按下一步。
檢閱摘要,按一下完成,然後按一下關閉。
若要建立用戶端 KMO︰
登入 NetIQ iManager。
在左側窗格中按一下 NetIQ 證書伺服器,然後選取伺服器證書。
選取擁有您所建立證書的伺服器。
指定證書的綽號。例如,clientkmo
在證書建立方法中選取自訂,然後按下一步。
將預設的組織證書管理中心保留不變,然後按下一步。
取消選取啟用擴充金鑰使用,然後按下一步。
接受其餘的證書預設值。
檢閱摘要,按一下完成,然後按一下關閉。
從 eDirectory 輸出引擎和遠端載入器將用於相互驗證的 KMO。
若要為 Identity Manager 引擎輸出 KMO,請執行 DirXML 指令行 (dxcmd) 公用程式︰
dxcmd -user <admin DN> -password <password of admin> -exportcerts <kmoname> <server|client> <java|native|dotnet> <output dir>
其中
user 用於指定對驅動程式具有管理權限的使用者名稱。
password 用於指定對驅動程式具有管理權限的使用者的密碼。
exportcerts 用於從 eDirectory 輸出證書和私密金鑰/公用金鑰。您必須指定要輸出伺服器證書還是用戶端證書、將使用證書的驅動程式類型,以及指令將用於儲存此資訊的目的地資料夾。
例如,dxcmd -user admin.sa.system -password novell -exportcerts serverkmo server java '/home/certs'
此指令會在 /home/certs/ 目錄中產生 serverkmo_server.ks 檔案。金鑰儲存區的預設密碼為 dirxml。
執行用於為遠端載入器輸出 KMO 的 dxcmd 指令時,請注意以下事項︰
dxcmd 公用程式在 LDAP 模式下執行。第一次使用該公用程式時,它會提示您指定信任來自 eDirectory 的證書的選項。依據您的環境,您可以選擇僅針對目前的工作階段或針對目前和將來的工作階段信任該證書、信任所有證書,或者選取不信任證書。
如果遠端載入器要在 Identity Manager 伺服器上執行,請以 LDAP 或點格式執行該指令。如果遠端載入器安裝在單獨的伺服器上,請僅以 LDAP 格式執行指令。
在指令中指定 -host 參數可解析能夠向 Identity Manager 伺服器驗證的伺服器 IP 位址或主機名稱。
使用以下語法執行指令︰
dxcmd -dnform ldap -host <主機 IP 位址> -user <管理員 DN> -password <管理員密碼> -exportcerts <KMO 名稱> <client> <java|native|dotnet> <輸出目錄>
表 11-1 不同類型驅動程式的範例
|
驅動程式類型 |
指令 |
輸出 |
|---|---|---|
|
Java 驅動程式 |
dxcmd -dnform ldap -host 192.168.0.1 -user cn=admin,ou=sa,o=system -password novell -exportcerts clientkmo client java '/home/certs' |
/home/certs/ 目錄中的 clientkmo_client.ks 檔案 金鑰儲存區的預設密碼為 dirxml。 |
若要將協力廠商證書與遠端載入器配合使用,您需要將證書輸出為 .pfx 檔案以及 Base 64 格式的可信根檔案,然後將 .pfx 證書轉換為驅動程式使用的格式。例如,原生驅動程式需要 .pem 格式的私密金鑰和證書金鑰,而 Java 驅動程式需要 .jks 格式的金鑰儲存區。
透過 .pfx 檔案建立 Java 金鑰儲存區。輸入一條指令,例如 keytool -importkeystore -srckeystore servercert.pfx -srcstoretype pkcs12 -destkeystore servercert.jks -deststoretype JKS。
最後一個步驟是依據驅動程式類型,在遠端載入器組態檔案中指定資訊。如需詳細資訊,請參閱啟用驅動程式以進行雙向驗證。
若要啟用驅動程式通訊以進行雙向驗證,請執行以下任務︰
您可以在 Designer 或 iManager 中使用 KMO 或金鑰儲存區來設定驅動程式。
在 Designer 中,您可以在初始驅動程式建立過程中設定驅動程式,也可以在建立驅動程式後再設定。
若要在 Designer 中設定驅動程式︰
在 Designer 中開啟您的專案。
在「模型產生器」檢視窗的選擇區中,選取您要建立的驅動程式。
將驅動程式的圖示拖曳至「模型產生器」檢視窗中。
依照安裝精靈中的步驟操作。
在「遠端載入器」視窗中,選取是。
主機名稱: 指定用於執行驅動程式遠端載入器服務的伺服器主機名稱或 IP 位址。例如,輸入 hostname=192.168.0.1。如果未為此參數指定值,則該值預設為 localhost。
埠︰ 指定用於為此驅動程式安裝和執行遠端載入器的連接埠號碼。預設連接埠號碼為 8090.
KMO︰ 指定包含遠端載入器用於 SSL 連接的金鑰和證書的 KMO 金鑰名稱。例如,輸入 kmo=serverkmo。如果您要設定使用 KMO 進行的雙向驗證,則必須為此參數指定值。您還需要在「其他參數」區段指定根檔案參數的值。
其他參數︰ 指定您要使用的遠端載入器的設定。可以在此參數中包括有關雙向驗證通訊的資訊。指定的所有參數都必須使用金鑰值組格式,如下所示︰paraName1=paraValue1 paraName2=paraValue2
例如,對於金鑰儲存區,請使用以下語法︰
UseMutualAuth=true keystore='/home/certs/serverkmo_server.ks' storepass='dirxml' keypass='dirxml' key='serverkmo'
例如,對於 KMO,請使用以下語法︰
useMutualAuth=true rootFile='/home/cacert.b64'
遠端密碼: 指定遠端載入器密碼。
驅動程式密碼: 指定驅動程式密碼。
按下一步。
依照精靈中的其餘指示操作,直到完成驅動程式的安裝。
檢閱為了建立驅動程式將要完成的任務摘要,然後按一下完成。
或者,您可以在建立驅動程式之後,透過執行以下步驟來設定驅動程式︰
在 Designer 的「大綱」檢視窗中,以滑鼠右鍵按一下驅動程式。
選取「內容」。
在導覽窗格中,選取驅動程式組態。
選取驗證。
在 遠端載入器驗證區段下方,指定設定遠端載入器與 Identity Manager 引擎間的雙向驗證所需的資訊。
對於 KOM,請使用以下語法︰
hostname=xxx.xxx.xxx.xxx port=xxxx useMutualAuth=true kmo=certificatename rootFile=<absolute path to the file>
例如:
hostname=192.168.0.1 port=8090 useMutualAuth=true kmo=serverkmo rootFile='/home/cacert.b64'
對於金鑰儲存區,請使用以下語法︰
hostname=xxx.xxx.xxx.xxx port=xxxx useMutualAuth=true keystore=<absolute path to the keystore file> storepass=<keystore password> key=<alias name> keypass= <password for the key>
例如:
hostname=192.168.0.1 port=8097 useMutualAuth=true keystore='/home/certs/serverkmo_server.ks' storepass='dirxml' key='serverkmo' keypass='dirxml'
若要在 iManager 中修改組態︰
啟動 iManager。
在綜覽中,選取 Identity Manager 驅動程式物件。
在驅動程式物件的內容中,完成以下步驟:
對於驅動程式模組,請選取連接至遠端載入器。
對於驅動程式物件密碼,請指定遠端載入器用於向引擎驗證的密碼。
此密碼必須與遠端載入器中定義的驅動程式物件密碼相符。
對於 遠端載入器連接參數,請指定連接到遠端載入器所需的資訊。
對於 KOM,請使用以下語法︰
hostname=xxx.xxx.xxx.xxx port=xxxx useMutualAuth=true kmo=certificatename rootFile=<absolute path to the file>
例如:
hostname=192.168.0.1 port=8090 useMutualAuth=true kmo=serverkmo rootFile='/home/cacert.b64'
對於金鑰儲存區,請使用以下語法︰
hostname=xxx.xxx.xxx.xxx port=xxxx useMutualAuth=true keystore=<absolute path to the keystore file> storepass=<keystore password> key=<alias name> keypass= <password for the key>
例如:
hostname=192.168.0.1 port=8097 useMutualAuth=true keystore='/home/certs/serverkmo_server.ks' storepass='dirxml' key='serverkmo' keypass='dirxml'
(選擇性) 對於遠端載入器密碼,請指定 Identity Manager 引擎 (或遠端載入器 Shim) 向遠端載入器進行驗證所需的密碼。
按一下「套用」,然後按一下「確定」。
您必須在遠端載入器組態檔案中設定驅動程式例項。務必在驅動程式的遠端載入器組態檔案中指定儲存金鑰檔案、證書檔案和根檔案的目錄的絕對路徑。
修改驅動程式的遠端載入器組態檔案,以包括用於啟用雙向驗證的內容。該檔案位於 /opt/novell/dirxml/doc 目錄中。
若要修改組態︰
登入安裝了驅動程式和遠端載入器的伺服器。
停止遠端載入器。
例如,輸入以下指令:
rdxml -config /home/drivershim.conf -u根據遠端載入器類型提供金鑰儲存區或金鑰密碼:
使用以下語法指定金鑰儲存區密碼和金鑰密碼的組合:
dirxml_jremote -config /home/drivershim.conf -ksp <keystorepassword> -kp <keypassword>
例如,
dirxml_jremote -config /home/drivershim.conf -ksp dirxml -kp dirxml使用以下語法指定金鑰密碼:
dirxml_jremote -config /home/drivershim.conf -kp <keypassword>
例如,
dirxml_jremote -config /home/drivershim.conf -kp dirxml在文字編輯器中開啟驅動程式的遠端載入器組態檔案。
將啟用雙向驗證所需的內容新增至該檔案。
例如,對於 Java 驅動程式,請新增以下項目︰
-connection "port=8090 useMutualAuth=true keystore='/home/certs/clientkmo_client.ks' key='clientkmo'
例如,對於原生驅動程式,請新增以下項目︰
-connection "useMutualAuth=true port=8090 rootfile='/home/certs/trustedcert.b64' certfile='/home/certs/clientkmo_clientcert.pem' keyfile='/home/certs/clientkmo_clientkey.pem' certform=PEM keyform=PEM"
儲存然後關閉該檔案。
重新啟動驅動程式。
啟動遠端載入器。例如:
dirxml_remote -config config.txt
使用 iManager 啟動遠端介面 shim。
確說遠端載入器運作正常。
停止遠端載入器。例如:
dirxml_remote -config config.txt -u
您可以將每個平台設定為在主機電腦啟動時自動啟動驅動程式例項。您也可以手動啟動例項。
NetIQ 可讓您以兩種方式啟動遠端載入器的驅動程式例項:
您可以將遠端載入器的驅動程式例項設定為在電腦啟動時自動啟動。請將您的組態檔案放置在 /etc/opt/novell/dirxml/rdxml 目錄中。
對於遠端載入器,二進位元件 rdxml 支援指令行功能。依預設,此元件位於 /usr/bin/ 目錄中。
啟
(視情況而定) 若要指定用於向 Identity Manager 引擎驗證驅動程式例項的密碼,請輸入以下指令之一:
遠端載入器︰ rdxml -config filename –keystorepassword <keystore pass> - keypassword <key pass>
Java 遠端載入器: dirxml_jremote -config filename –keystorepassword <keystore pass> -keypassword <key pass>
(視情況而定) 如果在遠端載入器的驅動程式例項與 Identity Manager 引擎之間啟用了雙向驗證,請輸入以下指令之一來指定證書密碼:
遠端載入器︰ rdxml -config filename –keystorepassword <keystore pass> -keypassword <key pass>
Java 遠端載入器: dirxml_jremote -config filename -keypassword <key pass>
若要啟動驅動程式例項,請輸入以下指令:
rdxml -config 檔案名稱
登入 iManager,然後啟動驅動程式。
確認遠端載入器正在正常運作。
使用 ps 指令或追蹤檔案確定指令和連接埠是否正在監聽。
遠端載入器僅會在與 Identity Manager 引擎伺服器上的遠端介面 shim 通訊時,載入 Identity Manager 應用程式 shim。這表示,如果遠端載入器與伺服器的通訊中斷,應用程式 shim 將會關閉。
每個平台都提供了不同的方法來停止遠端載入器中的驅動程式例項。
附註:
如果執行了遠端載入器的多個例項,請包含 -cp command port 選項,以確保遠端載入器能夠停止相應的例項。
若要停止驅動程式例項,您必須具有足夠的權限,或指定遠端載入器密碼。您具有足夠的權限停止它。您輸入密碼,但意識到它是錯誤的。此時,遠端載入器仍會停止,因為遠端載入器實際上並不「接受」密碼,而是會忽略密碼,原因是在這種情況下,密碼是多餘的。如果您將遠端載入器做為應用程式而非服務執行,它將會使用該密碼。
若要停止某個驅動程式例項:
輸入 rdxml -config 檔案名稱 -u 指令。例如:
rdxml -config config.txt -u
輸入 dirxml_jremote -config 檔案名稱 -u 指令。例如:
dirxml_jremote -config config.txt -u