本小節說明為 Messenger Express、Delegated Administrator 和 Calendar Manager 設定 SSO。
針對 SSO 配置 Messenger Express。
設定適當的 SSO configutil 參數。
若要啟用 Messenger Express 和 Delegated Administrator 單次登入,請如下設定配置參數 (假設預設網域為 siroe.com)。這些參數在表 6–3 中進行說明。您必須是超級使用者。cd 至 instance_root
configutil -o local.webmail.sso.enable -v 1 configutil -o local.webmail.sso.prefix -v ssogrp1 |
ssogrp1 是 iDA 使用的預設 SSO 前綴,儘管您可以選擇其他前綴,但在配置 iDA 和 iCS 時使用預設可以省去一些鍵入作業。
configutil -o local.webmail.sso.id -v ims5 |
ims5 是您選取用來識別 Messenger Express (ME) 以區分其他應用程式的名稱。
configutil -o local.webmail.sso.cookiedomain -v “.siroe.com” |
上述網域必須與 ME/瀏覽器用戶端連線至伺服器使用的網域相符。因此,儘管此伺服器上的託管網域可以稱為 xyz.com,但是我們必須使用 DNS 中的實際網域。此值必須以小數點號開頭。
configutil -o local.webmail.sso.singlesignoff -v 1 configutil -o local.sso.ApplicationID.verifyurl -v \ "http://ApplicationHost:port/VerifySSO?" |
ApplicationID 是我們提供給 SSO 應用程式的名稱 (例如︰對於 Delegated Administrator是 ida,對於 Calendar Server 是 ics50)。ApplicationHost:port 是應用程式的主機和連接埠號碼。對於每個非 Messaging Server 應用程式,您將有以上這些行中的一行。範例:
configutil -o local.sso.ida.verifyurl -v \ "http://siroe.com:8080/VerifySSO?" |
變更配置後,重新啟動 Messenger Express http 伺服器。
cd instance_root./stop-msg http ./start-msg http |
為 Directory Server 配置 SSO。
在目錄中建立代理使用者帳號。
代理伺服器使用者帳號允許 Delegated Administrator 連結至 Directory Server 以用於代理伺服器認證。使用以下 LDIF 程式碼 (proxy.ldif),您可以建立使用 ldapadd 的代理伺服器使用者帳號項目。
ldapadd -h mysystem.siroe.com -D "cn=Directory Manager" -w password -v -f proxy.ldif
dn: uid=proxy, ou=people, o=siroe.com, o=isp objectclass: top objectclass: person objectclass: organizationalperson objectclass: inetorgperson uid: proxy givenname: Proxy sn: Auth cn: Proxy Auth userpassword: proxypassword |
為代理使用者帳號認證建立適當的 ACI。
使用 ldapmodify 公用程式,為在建立 Delegated Administrator 時建立的每個後綴建立 ACI。
osiroot - 輸入用以儲存使用者資料的後綴 (預設為 o=isp)。osiroot 是組織數的根。
dcroot - 輸入用以儲存網域資訊的後綴。(預設為 o=internet。)
osiroot - 輸入用以儲存配置資訊的後綴,它應與您輸入用以儲存使用者資料的值相同。
以下是較早建立的代理伺服器使用者的 osiroot 之 ACI 項目 (aci1.ldif) 範例:
dn: o=isp changetype: modify add: aci aci: (target="ldap:///o=isp")(targetattr="*")(version 3.0; acl "proxy";allow (proxy) userdn="ldap:///uid=proxy, ou=people, o=siroe.com, o=isp";) |
ldapmodify -h siroe.com -D "cn=Directory Manager" -w password -v -f aci1.ldif |
為 dcroot 建立類似的 ACI 項目 (aci2.ldif):
dn: o=internet changetype: modify add: aci aci: (target="ldap:///o=internet")(targetattr="*")(version 3.0; acl "proxy";allow (proxy) userdn="ldap:///uid=proxy, ou=people, o=siroe.com, o=isp";) |
ldapmodify -h siroe.com -D "cn=Directory Manager" -w password -v -f aci2.ldif |
配置 Delegated Administrator
將代理伺服器使用者憑證和環境 cookie 名稱增加至 Delegated Administrator resource.properties 檔案。
取消註釋並修改 Delegated Administrator resource.properties 檔案中的以下項目︰
LDAPDatabaseInterface-ldapauthdn=Proxy_Auth_DN LDAPDatabaseInterface-ldapauthpw=Proxy_Auth_Password NDAAuth-singleSignOnId=SSO_Prefix- NDAAuth-applicationId=DelAdminID |
例如:
LDAPDatabaseInterface-ldapauthdn= uid=proxy,ou=people,o=cesta.com,o=isp LDAPDatabaseInterface-ldapauthpw=proxypassword NDAAuth-singleSignOnId=ssogrp1- NDAAuth-applicationId=ida |
resource.properties 檔案儲存於以下位置︰
iDA_svr_base/nda/classes/netscape/nda/servlet/
增加參加伺服器的驗證 URL。
若要驗證收到的單次登入 cookie,Delegated Administrator 必須瞭解要與誰聯絡。您必須為所有已知的參加伺服器提供驗證 URL。
以下範例假設 Messenger Express 已安裝,並且其應用程式 ID 為 msg5。編輯 Delegated Administrator resource.properties 檔案,並增加如下項目︰
verificationurl-ssogrp1-msg5=http://webmail_hostname:port/VerifySSO? verificationurl-ssogrp1-ida=http://iDA_hostname:port/VerifySSO? verificationurl-ssogrp1-ics50=http://iCS_hostname:port/VerifySSO? |
resource.properties 檔案位於以下目錄中︰
iDA_svr_base/nda/classes/netscape/nda/servlet/
增加 Delegated Administrator 單次登入 cookie 資訊並啟用 UTF8 參數編碼。
定義 Delegated Administrator 環境識別碼。
編輯 servlets.properties 檔案並取消註釋包含文字 servlet.*.context=ims50 的所有行。其中 * 為任意字串。
servlets.properties 檔案位於︰
Web_Svr_Base/https-instancename/config/
在 Enterprise Server 配置中指定環境的 cookie 名稱。
編輯 Enterprise Server contexts.properties 檔案並將以下行增加至檔案底部 (#IDACONF-Start 行之前)︰
context.ims50.sessionCookie=ssogrp1-ida
contexts.properties 檔案位於︰
Web_Svr_Base/https-instancename/config/
為 ims5 環境啟用 UTF8 參數編碼。
若要在 Enterprise Server 配置中為 ims5 環境啟用 UTF8 參數編碼,請將以下項目增加至 Enterprise Server contexts.properties 檔案︰
context.ims50.parameterEncoding=utf8
重新啟動 Messenger Express。
依照步驟 1a 至 2c 所述進行配置變更後,您必須重新啟動 Messenger Express 以使變更生效︰
Web_Svr_Base/https-instance_name/stop Web_Svr_Base/https-instancename/start |
如果您要在此 SSO 群組中部署行事曆,請配置 Calendar Server。
編輯 ics.conf 並增加以下內容︰
sso.appid = "ics50" sso.appprefix = "ssogrp1" sso.cookiedomain = ".red.iplanet.com" sso.enable = "1" sso.singlesignoff = "true" sso.userdomain = "mysystem.red.iplanet.com" sso.ims5.url="http://mysystem.red.iplanet.com:80/VerifySSO?" sso.ida.url=http://mysystem.red.iplanet.com:8080/VerifySSO? |
重新啟動 Calendar Server
start-cal
重新啟動 Messenger Express http 伺服器:
msg_svr_base/sbin/stop-msg http msg_svr_base/sbin/start-msg http |