在 MapCredentials.xml 檔案中設定認證
會使用 MapCredentials.xml 檔案來指定對於特定 Info*Engine 轉接器的驗證存取權。如果針對特定轉接器,MapCredentials.xml 檔案中沒有項目,則對相應目錄的預設存取是匿名的。實際上,這表示 Windchill 管理員可能無法讀取或修改該目錄中的項目 (建立及更新使用者資訊)。
如果您手動新增企業目錄,且不想要匿名存取,則必須將新建 JNDI 轉接器、辨別名稱與密碼新增至 MapCredentials.xml 檔案中的現有屬性,來設定企業目錄的驗證存取權。您也可以變更現有屬性值來變更用於驗證的辨別名稱或密碼。
使用 xconfmanager 公用程式在
MapCredentials.xml 檔案中更新屬性。透過直接編輯
MapCredentials.xml 檔案進行的任何變更皆會由 xconfmanager 公用程式覆寫。如需有關 xconfmanager 公用程式的詳細資訊,請參閱
關於 xconfmanager 公用程式。
|
儲存屬性變更的實際檔案是 codebase/WEB-INF/mapCredentials.txt 檔案。只應使用 xconfmanager 公用程式來變更此檔案。
|
執行下列步驟來定義企業目錄的存取權:
1. 決定 Windchill 管理員用來進行 LDAP 目錄服務驗證的辨別名稱及密碼。
您在此步驟中確定的辨別名稱及密碼將會用於此程序稍後的步驟中。分號是受限字元,無法在 Windchill 管理員密碼中使用。
2. 如果您要讓 Windchill 存取群組項目或者修改群組或使用者資訊,請確保在步驟 1 中識別的辨別名稱有足夠權限來讀取/建立/更新/刪除目錄伺服器中的 Windchill 物件。
|
您可以使用 建立與配置 JNDI 轉接器中「設定其他內容」部份所述的 windchill.config.readOnly 與 windchill.config.doesNotContainGroups 內容啟用存取權限。
欲變更為在 LDAP 中定義之使用者設定的存取控制權限,您必須使用目錄伺服器管理工具。
|
3. 使用 xconfmanager 公用程式修改 MapCredentials.xml 檔案來包含 Windchill 管理員使用的辨別名稱與密碼,以存取目錄伺服器 (屬性變更會儲存在 codebase/WEB-INF/mapCredentials.txt 檔案中)。
屬性的格式如下所示:
mapcredentials.admin.adapters=<服務_名稱>^<辨別_名稱>^<密碼>
其中 <辨別_名稱> 與 <密碼> 是在步驟 1 中識別的值。
這是一個多值屬性。您可以使用 xconfmanager --add 選項來新增多個轉接器定義。使用 xconfmanager --remove 選項來移除特定值。
例如,假設 enterpriseAdapter 是已設定以存取企業 LDAP 目錄伺服器之轉接器的名稱。在此情境中,辨別名稱值為 cn=DistUser,o=myCompany,密碼為 password。下列指令會新增 LDAP 目錄所需的驗證存取權:
xconfmanager --add "mapcredentials.admin.adapters=
enterpriseAdapter^cn=DistUser,o=myCompany^password"
-t "codebase/WEB-INF/mapCredentials.txt" -p
使用 xconfmanager 公用程式設定此屬性的值可確保指定的密碼已加密。如需有關為系統密碼加密的詳細資訊,請參閱
特定管理。
如果您已對 Windchill 進行其他自訂,也可以透過已為需要較少存取權的 Windchill 中的其他活動建立的轉接器設定其他驗證存取權。在此情況下,請使用下列屬性來新增或修改對於轉接器中識別之 LDAP 目錄伺服器的驗證存取權:
mapcredentials.nonprivileged.adapters=<服務_名稱>^<辨別_名稱>^
<密碼>
如此可為沒有 Windchill 管理權限的使用者指定辨別名稱與密碼,但仍需要已建立企業 LDAP 轉接器的存取權。
例如,假設 newAdapter 是已設定以存取企業 LDAP 目錄伺服器之轉接器的名稱。在此情境中,辨別名稱值為 cn=NonprivUser,o=myCompany,密碼為 password。下列指令會新增 LDAP 目錄所需的驗證存取權:
xconfmanager --add "mapcredentials.nonprivileged.adapters=
newAdapter^cn=NonprivUser,o=myCompany^password"
-t "codebase/WEB-INF/mapCredentials.txt" -p
|
確保您在此指定的辨別名稱有足夠權限來讀取目錄伺服器中的 Windchill 物件。
|