關於 WebSphere Portal, Domino 擴充套件產品以及Domino 單點登入(SSO)的疑難解答
阿新 • • 發佈:2019-01-27
I. 每個產品的正確測試方法
II. 關於這三個產品的常規設定和配置
III. 對於 QuickPlace 伺服器的其他步驟
IV. 對於 Sametime 伺服器的其他步驟
V. 當 Portal 與 QuickPlace,Sametime 或 Domino 使用不同目錄時需要的其他步驟
VI. 其他可能的已知問題和配置
I. 測試每個產品是否已配置正確:
QuickPlace (也稱為 Team Workplace) --
-
1. 登入到 WebSphere Portal。
2. 更改瀏覽器的 URL 為 http://qpserver.domain.com/quickplace
您的名字應該出現在頁面的左上角。如果未顯示,說明 QuickPlace 的單點登入(SSO)沒有成功。
Sametime (也稱為 Instant Messaging & Web Conferencing) --
-
1. 登入到 WebSphere Portal。
2. 更改瀏覽器的 URL 為 http://stserver.domain.com/stcenter.nsf
3. 單擊 'Attend a Meeting'.
您的名字應該出現在頁面的右上角。如果未顯示,說明 Sametime 的單點登入(SSO)沒有成功。
Domino
-
1. 登入到 WebSphere Portal。
2. 確保您已有一個 Domino 資料庫,並且該資料庫訪問控制列表(ACL)的“-Default- ”和“Anonymous”項被設定為“無訪問許可權”。下一步中的示例假定該資料庫名稱為 test.nsf,並位於 Domino\Data目錄。
3. 更改瀏覽器的 URL 為 http://dominoserver.domain.com/test.nsf
如果出現登陸頁面,說明 Domino 伺服器 的單點登入(SSO)沒有成功。
II. 關於這三個產品的常規設定和配置:
如果您沒有將與 WebSphere Portal 關聯的 Domino 伺服器設定為伺服器單點登入(MSSO),請按照下面文件中的說明進行設定:
- “啟動 Domino 與 WebSphere 應用伺服器的單點登入功能” (#
如果您已經在該 Domino 伺服器上設定伺服器單點登入,請檢查一下設定:
-
A. 在 Domino 目錄(Names.nsf)的 Web 配置檢視中,開啟 Web SSO 的 LTPA 令牌配置文件。
1. 確保該處的 DNS 域同 WebSphere 配置的 DNS 域,以及在瀏覽器中訪問該伺服器時輸入的 DNS 域是一致的。
-
1. 開啟 WebSphere 管理控制檯。
2. 轉至“控制檯 -> 安全中心”。
除了 DNS 域前的句號,在身份驗證標籤中的值應該與上面的 DNS 域是一致的。Domino 目錄中的 DNS 域前包含句號,而 WebSphere 中未包含。
-
1. 開啟 WebSphere 管理控制檯。
2. 單擊“安全 -> 認證機制”。
3. 在“其他屬性”中,單擊“單點登入(SSO)”。
-
1. 開啟 WebSphere 管理控制檯。
2. 單擊“安全性 -> 全域性安全性 -> 認證機制”下的“認證機制”項。
3. 選擇“LTPA -> SSO”。
注:除了 DNS 域前的句號,在身份驗證標籤中的值應該與上面的 DNS 域是一致的。Domino 目錄中的 DNS 域前包含句號,而 WebSphere 中未包含。
注:如果使用的是 Domino 6.x 伺服器,就不必在埠號前加“\”符號。
2. 確保 Domino 伺服器名稱包含您正在設定 SSO 的 Domino 伺服器的標準層次名。
3. 確保 WebSphere Portal 的域設定(Realm)與 WebSSO 文件中的 LTPA 域設定是一致的。
在 WebSphere Portal v4 和 v5.0.x 中檢查域設定(Realm):
該域應該與 Portal 關聯的 LDAP 伺服器保持一致,並確保格式的正確性。例如,如果 WebSphere 使用者儲存庫所關聯的 LDAP 伺服器為“ldap.domain.com”,並且埠為“389”,那麼 LDAP 域欄位就應該為“ldap.domain.com\:389”。
** 注:如果您使用的是 Domino 5.x 伺服器,必須在“:389”之前新增“\”符號。但這對於 Domino 6.x 伺服器來說不是必須的,不過新增該符號並不會導致問題。
在 WebSphere Portal v5.1.x 中檢查域設定(Realm):
如果您啟動了安全性,但 沒有配置對域的支援,這些步驟同樣適用於 Portal 的早期版本,如 Portal v4 和 v5。
如果您啟用了安全性與 域支援(通過執行配置任務 enable-security-wmmur-ldap 或 enable-security-wmmur-db),您將需要手動在 Portal 和 Domino 之間同步域的值。您可以採用如下兩種方式:
方法 #1:
預設情況下,在執行 enable-security-wmmur-ldap 或 enable-security-wmmur-db 任務後, 域值將被 Portal 設定為 WMMRealm。 如果您只需在 Domino 的 Web SSO 文件中更新 LDAP 域的值為 WMMRealm,您將需要重新啟動 Domino 以使更改生效。
注:LDAP 域的值是區分大小寫的。例如,如果您輸入 wmmRealm 而不是 WMMRealm,SSO 就會失敗。
方法 #2:
如果您想管控 Portal 所設定的域值,請使用以下步驟:
1. 設定 userRegistryRealm 的值。
-
a. 開啟伺服器的管理控制檯。
b. 轉至“安全性 -> 使用者登錄檔 -> 使用者定製”。
c. 選擇“使用者定製屬性”。
d. 檢查 userRegistryRealm 屬性是否已存在。如果存在,選擇該屬性並進行更新。否則進行新建。
e. 根據您的選擇來設定 userRegistryRealm 的名稱。-
比如,可採用 <full qualified name of the LDAP Server>:<Port> 作為該值。
例子: myldapserver.myorg.com:389
f. 儲存更改,然後重新啟動伺服器。 -
比如,可採用 <full qualified name of the LDAP Server>:<Port> 作為該值。
2. 更新檔案 security.xml。
- 編輯檔案“AppServer/config/cells/<cellname>/security.xml”並確保在標記“<userRegistries xmi:type="security:CustomUserRegistry" ...>”下設定域屬性為“<full qualified name of the LDAP Server>:<Port>”。
- 例子如下:
-
<userRegistries xmi:type="security:CustomUserRegistry" xmi:id="CustomUserRegistry_1" serverId="uid=wpsbind,dc=users,ou=bvt,c=de,o=ibm.com" serverPassword="{xor}..." ignoreCase="true" customRegistryClassName="com.ibm.websphere.wmm.registry.WMMUserRegistry" realm="myldapserver.myorg.com:389">
1. 開啟 WebSphere 管理控制檯。
2. 單擊“安全性 -> 全域性安全性 -> 使用者登錄檔 -> 使用者定製”。
3. 選擇“使用者定製屬性”。
4. 檢查 userRegistryRealm 屬性是否已存在。如果存在,選擇該屬性並進行更新。
5. 如果該屬性不存在,選擇更新。
6. 根據您的選擇來設定 userRegistryRealm 的名稱。
7. 儲存更改,然後重新啟動伺服器。
3. 從 WebSphere 中匯出 LTPA 令牌,並將它匯入 Domino。更多資訊,請參閱以下技術說明:
“WebSphere Portal 和其他應用程式在相同域內的單點登入問題 (比如 Lotus Domino 或 Sametime)”(#
B. 確保已啟用多伺服器 SSO 並能正確載入。
1. 開啟您正在配置的伺服器文件,並選擇“因特網協議 -> Domino Web 引擎”選項卡。確保在“會話認證”欄位中的值為“多伺服器”。
2. 根據您正在執行的伺服器版本,當在 Domino 中載入 HTTP 任務時您可能會看到如下資訊:-
Domino v5: HTTP: 成功載入 Web SSO 配置
Domino v6: HTTP Server: 未指定 Web SSO 配置,使用預設值('LtpaToken')。
-
Domino v5: HTTP: 成功載入 Web SSO 配置
debug_sso_trace_level=2
websess_verbose_trace=1
debug_outfile=c:\outfile.txt
注:如果您更改了 WebSphere 安全性設定,您需要匯出並重新匯入 WebSphere LTPA 金鑰,可參考上文中提到的文件,#
注:如果您對 Domino Web SSO 的 LTPA 令牌配置文件進行了更改,那麼您需要重新啟動 Domino 伺服器才能使更改生效。
III. 對於 QuickPlace 伺服器的其他步驟:
A. 按照以下步驟在 QuickPlace 伺服器上配置 SSO,這些內容可在 QuickPlace 管理員指南的第六章中找到。
1. 在伺服器的 Notes.ini 檔案中新增以下項:-
NoWebFileSystemACLs=1
h_ScopeUrlInQP=1
2. 啟用多伺服器會話認證。
a. 使用 Notes 客戶機在 QuickPlace 伺服器上開啟 Domino 目錄檔案(Names.nsf)。
b. 在“伺服器 -> 伺服器”檢視中開啟 QuickPlace 伺服器文件。
c. 單擊“因特網協議”選項卡。
d. 單擊“Domino Web 引擎”選項卡。
e. 在“會話認證”中選擇“多伺服器”。
出於測試目的,如果 Domino Web 伺服器配置資料庫(domcfg.nsf)已經存在,請將其從 Lotus 目錄中刪除(其位於 Domino \Data目錄),並通過以下步驟建立一個新的 Domino Web 伺服器配置資料庫:
a. 使用 Domino Web 伺服器配置模板(5.0)建立資料庫“domcfg.nsf”。
b. 開啟該新資料庫。
c. 選擇“建立 -> 對映登入表單”。
d. 在“目標資料庫檔名”欄位中輸入“QuickPlace/resources.nsf”。
e. 在“目標表單名稱”欄位中輸入“QuickPlaceLoginForm”。
f. 儲存新的表單。
-
一旦問題得到解決,並且您希望返回之前定製的 Domino Web 伺服器配置資料庫,那麼需要在該資料庫的原始設計上執行以下操作:
-
NoWebFileSystemACLs=1
a. 使用 Domino Designer 開啟 quickplace/resources.nsf。
b. 開啟 QuickPlaceLoginForm 表單。
c. 從該表單中拷貝<Computed Value>欄位到資料庫 domcfg.nsf 的 login 表單。
B. 修改 qpconfig.xml 的非標準專有名稱(DNs)。
例如,如果使用者的 dn 是:“uid=tuser,cn=users,dc=acme,dc=com”,那關鍵的部分是“cn=users”。 Domino 名稱在人員的公共名稱之後不使用“cn”。修改“qpconfig.xml”檔案中的“user_directory”,並將以下內容新增到模式部分(schema):
<secondary_cn_component enabled="true"/>
如果“dn”包含空格,修改“qpconfig.xml”檔案中的“user_directory”,並將以下內容新增到模式部分(schema):
<dn_delimiter>,@</dn_delimiter>
<dn_delimiter robust_compare="true"/>
示例,“dn”在“ou=people”和“dc=com”之間包含一個空格:
uid=tuser,ou=people, dc=acme,dc=com
更多資訊,請參考 qpconfig_sample.xml 和 QuickPlace 管理指南。
-
debug_sso_trace_level=2
websess_verbose_trace=1
quickplaceauthenticationlogging=5
debug_outfile=c:\outfile.txt
然後重新啟動 Domino 伺服器並登入到 Portal。更改瀏覽器的 URL 為 http://qpserver.domain.com/quickplace 並將所得檔案 Outfile.txt 傳送到 Lotus 技術支援以得到更多幫助。
注:如果您更改了 WebSphere 安全性設定,您需要匯出並重新匯入 WebSphere LTPA 金鑰,可參考上文中提到的文件,(#-
debug_sso_trace_level=2
注:如果您對 Domino Web SSO 的 LTPA 令牌配置文件進行了更改,那麼您需要重新啟動 Domino 伺服器才能使更改生效。
注:對於 QuickPlace 6.5.x 來說,WebSSO 配置文件必須被命名為“LTPAToken”。而對於 QuickPlace 7.0 或者更高版本,您可以更改這個名稱。
IV. 對於 Sametime 伺服器的其他步驟:
-
A. 與 Sametime 關聯的 LDAP 伺服器是否要求繫結使用者認證?
如果需要,請新增繫結使用者至 LDAP 目錄的目錄服務文件。-
1. 在 Sametime 伺服器上開啟目錄服務資料庫(通常也稱為“da.nsf”)。
2. 在該資料庫中開啟與 Sametime 關聯的 LDAP 伺服器的配置文件。
3. 在 LDAP 選項卡中設定下列欄位:-
使用者名稱欄位:輸入一個在 LDAP 目錄中存在的使用者名稱稱。
密碼欄位:輸入此使用者的密碼。
Base DN 欄位:新增 Base DN,Portal 將根據該 Base DN 以執行搜尋。
注:請確認對於 LDAP 伺服器設定的埠欄位是正確的。 -
使用者名稱欄位:輸入一個在 LDAP 目錄中存在的使用者名稱稱。
-
1. 在 Sametime 伺服器上開啟目錄服務資料庫(通常也稱為“da.nsf”)。
debug_sso_trace_level=2
websess_verbose_trace=1
debug_outfile=c:\outfile.txt
注:如果您更改了 WebSphere 安全性設定,您需要匯出並重新匯入 WebSphere LTPA 金鑰,可參考上文中提到的文件,(#
注:如果您對 Domino Web SSO 的 LTPA 令牌配置文件進行了更改,那麼您需要重新啟動 Domino 伺服器才能使更改生效。
注:如果 WebSSO 配置檔案的名稱不是“LtpaToken”(例如,“MyLtpaToken”),那就需要在 notes.ini 檔案中新增以下程式碼:
ST_TOKEN_TYPE=MyLtpaToken
從版本 8.5 開始,引數值“ST_TOKEN_TYPE”位於檔案 sametime.ini 中的“[AuthToken]”部分。
V. 當 Portal 與 QuickPlace,Sametime 或 Domino 使用不同目錄時需要的其他步驟:
-
A. Domino 資料庫必須與 Domino 目錄進行認證。如果 Portal 使用了一個不同於 Domino 的 LDAP 伺服器進行使用者認證,有兩種方式可在 Domino 和 Portal 之間配置單點登入(SSO)。
-
1. 根據 Portal 用來認證使用者的目錄,同步 Domino 目錄的使用者名稱和密碼。
-
例如,如果 WebSphere Portal 的使用者目錄採用的是 IBM Directory 伺服器,並且使用者的 dn 標識為:
- uid=wpsadmin,cn=users,dc=acme,dc=com
...那麼需要在 Domino 中,給 wpsadmin 個人文件的使用者名稱欄位新增以下內容:-
uid=wpsadmin/cn=users/dc=acme/dc=com
wpsadmin
這些內容應新增在 Domino 標準名稱之下,位於使用者名稱欄位的第一行。
2. 配置目錄協助文件,使 Domino 可以跟外部 LDAP 使用者目錄進行認證。
關於建立和配置目錄協助文件的更多資訊,請參閱
-
例如,如果 WebSphere Portal 的使用者目錄採用的是 IBM Directory 伺服器,並且使用者的 dn 標識為:
-
1. 根據 Portal 用來認證使用者的目錄,同步 Domino 目錄的使用者名稱和密碼。
- 擴充套件 LDAP 模式,可通過新增以下屬性,或使用已存在的屬性:
NotesDN=CN=Test User1,O=ACME
*****必須和目錄協助中的屬性名稱保持一致*******
- 在所有 Domino 伺服器上使用目錄協助文件來關聯 LDAP 目錄(與 Portal 正在使用的為同一個)。在 LDAP 選項卡中,新增一個包含 Notes 標準名稱的 LDAP 屬性。您可以使用該方法來解決多身份認證,比如,可以使用您的 Notes 使用者名稱來連線 Domino 伺服器,也可以訪問郵件資料庫而不需要修改相應的 ACL。
- “當 WebSphere Portal 和 QuickPlace 使用不同的 LDAP 目錄時,如何配置 SSO”(#1205905)
- C. 如果
- “當 WebSphere Portal 和 Lotus Sametime 使用不同的 LDAP 目錄時,如何配置 SSO”(#
D. 如果 Sametime 使用 本機 Domino 進行使用者認證,而 Portal 使用其他的 LDAP 伺服器進行使用者認證,請執行以下技術說明中的步驟以配置相應的環境:
- “當 WebSphere Portal 和 Lotus Sametime 使用不同的使用者目錄時配置 SSO”(#
VI. 其他可能的已知問題和配置:
1. 當 Domino 目錄採用多伺服器單點登入時,Domino 伺服器名稱不能包含任何下劃線或其他特殊字元。這是一個因為 Microsoft Internet Explorer (IE)安全補丁所造成的程式限制。
- 任何使用者名稱不能與同一層次結構的 Domino 名稱相同。例如,如果 Domino 伺服器名稱是“domsrv/acme”,那麼任何個人文件在使用者名稱欄位的第一行都不能設定為“domsrv/acme”。