Sun Java System Messaging Server 6 2005Q4 管理指南

Procedure為 Messenger Express、Delegated Administrator 和 Calendar Manager 設定 SSO

步驟
  1. 針對 SSO 配置 Messenger Express。

    1. 設定適當的 SSO configutil 參數。

      若要啟用 Messenger Express 和 Delegated Administrator 單次登入,請如下設定配置參數 (假設預設網域為 siroe.com)。這些參數在表 6–3 中進行說明。您必須是超級使用者。cdinstance_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?"
      
    2. 變更配置後,重新啟動 Messenger Express http 伺服器。


      cd instance_root./stop-msg http
      ./start-msg http
      
  2. 為 Directory Server 配置 SSO。

    1. 在目錄中建立代理使用者帳號。

      代理伺服器使用者帳號允許 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
    2. 為代理使用者帳號認證建立適當的 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
      
  3. 配置 Delegated Administrator

    1. 將代理伺服器使用者憑證和環境 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/

    2. 增加參加伺服器的驗證 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/

  4. 增加 Delegated Administrator 單次登入 cookie 資訊並啟用 UTF8 參數編碼。

    1. 定義 Delegated Administrator 環境識別碼。

      編輯 servlets.properties 檔案並取消註釋包含文字 servlet.*.context=ims50 的所有行。其中 * 為任意字串。

      servlets.properties 檔案位於︰

      Web_Svr_Base/https-instancename/config/

    2. 在 Enterprise Server 配置中指定環境的 cookie 名稱。

      編輯 Enterprise Server contexts.properties 檔案並將以下行增加至檔案底部 (#IDACONF-Start 行之前)︰

      context.ims50.sessionCookie=ssogrp1-ida

      contexts.properties 檔案位於︰

      Web_Svr_Base/https-instancename/config/

    3. ims5 環境啟用 UTF8 參數編碼。

      若要在 Enterprise Server 配置中為 ims5 環境啟用 UTF8 參數編碼,請將以下項目增加至 Enterprise Server contexts.properties 檔案︰

      context.ims50.parameterEncoding=utf8

  5. 重新啟動 Messenger Express。

    依照步驟 1a 至 2c 所述進行配置變更後,您必須重新啟動 Messenger Express 以使變更生效︰


    Web_Svr_Base/https-instance_name/stop
    Web_Svr_Base/https-instancename/start
    
  6. 如果您要在此 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?
  7. 重新啟動 Calendar Server

    start-cal

  8. 重新啟動 Messenger Express http 伺服器:


    msg_svr_base/sbin/stop-msg http
    msg_svr_base/sbin/start-msg http