配置 WebSphere Business Monitor V6.1.2 安全環境

CloudSpace發表於2009-04-01

前言

Websphere Business Monitor(以下簡稱為 Monitor)作為 IBM WebSphere BPM 家族中重要一員,提供了豐富的業務級別的監控和資料分析功能,滿足了不同角色客戶的需求。在實際生產過程中,客戶的業務流程以及應用需要執行在安全的環境下,只有使用賦予相關許可權的使用者,才能更好地對系統進行管理以及對應用程式進行訪問和控制。

由於 Monitor 經常要與其它產品(WebSphere Process Server(WPS),Alphablox,DB2) 結合使用,因此如何實現跨產品的安全屬性配置便成為了擺在工程師面前的難題。本文中我們將通過 WebSphpere Application Server(WAS) V6.1 之後新增的聯合使用者儲存庫配置選項(Federated Repositories)來為這些產品設定管理安全性和應用程式安全性。

在本文中,我們將闡述在典型的拓撲環境下,如何使用 LDAP 伺服器作為認證源,配置一個安全的生成環境的詳細步驟。我們以 Monitor V6.1.2 為例,描述了實現跨產品的安全配置。在本文中,我們主要針對 Windows 作業系統 但這些配置過程也同樣適用於其它的平臺。

由於涉及的產品較多,配置過程比較複雜,我們將分多個部分來進行闡述。首先是介紹典型的拓撲架構以及配置 Monitor V6.1.2的安全環境;之後描述如何實現對 WPS V6.1.2產品的安全性設定以及其它的方面,例如匯流排安全,監控資料安全等的配置工作。通過這幾個部分詳細地描述,讀者可以輕鬆實現跨產品環境的安全配置,以解決之前資訊分散,配置複雜等問題。

拓撲結構

本文中,我們將 Monitor 和 WPS 分別安裝在不同的伺服器上,並且使用匯流排連結(Bus Link) 將兩臺伺服器進行連線。本文中假設我們在一個典型拓撲環境中配置安全屬性,如圖 1,Monitor V6.1.2 安裝於 server1,WPS V6.1.2 安裝在 server2,server3 上面執行著 LDAP 伺服器。我們將通過交換 LTPA KEY 的方式來進行伺服器之間的相互鑑權。使用這樣的拓撲結構既可以起到模擬生產環境的作用,配置簡單易用,又可以更全面去覆蓋安全配置的各個屬性。


圖 1. 典型環境中拓撲架構圖

配置 Monitor 伺服器的安全性

由於現有 Monitor 版本中,必須通過使用 WAS 伺服器提供的聯合儲存庫(Federated Repositories)進行安全配置才能在 Monitor 資料監控中搜尋到使用者,因此在本節中,我們通過使用 Federated Repositories 來訪問 LDAP 伺服器對其安全性進行配置。

通過安全配置嚮導完成對 Monitor 安全性的設定

在我們安裝 Monitor V6.1.2 伺服器時,可以選擇是否配置安全屬性。如果在安裝時已經填入使用者名稱以及密碼,啟動之後會按照預設配置載入安全屬性,則讀者可以跳過本小節。如果安裝時並沒有啟用安全性,讀者需要在安裝完成之後,通過嚮導來手工配置安全屬性。

我們首先啟動 Monitor 伺服器並登陸到控制檯(URL:http://MornitorServerIP:Port/ibm/console),點選左側導航欄“安全性->安全管理、應用程式和基礎結構”選項,在控制檯右側點選“安全配置嚮導”的按鈕,對安全性進行配置,如圖 2。


圖 2. 通過控制檯配置 Monitor 安全屬性

在配置安全的控制皮膚中共包含 4 個步驟。第一步,我們選擇 “啟用應用程式安全性”,注意這裡不要勾選“使用 Java 2 安全性來限制應用程式訪問本地資源”選項,如圖 3 所示,點選 “下一步”。


圖3. 選擇載入應用程式安全選項

因為在配置 Monitor 資料安全屬性時只能搜尋出聯合儲存庫中的使用者,在 Monitor V6.1.2 版本的伺服器中不支援其它型別的使用者儲存庫模式。我們必須在第二步配置中選擇“聯合儲存庫”選項作為使用者儲存庫型別,點選 “下一步”按鈕。


圖4. 選擇聯合儲存庫作為使用者資料庫

接下來的輸入“admin”超級管理員使用者和密碼,安全配置嚮導自動建立此使用者。之後確認所有資訊並點選 “完成”按鈕儲存之前所作的修改。


圖5. 輸入主要管理使用者名稱和密碼

配置聯合儲存庫下的 LDAP 屬性

我們通過上面介紹的嚮導,成功設定了基於檔案型別的聯合使用者儲存庫的安全性,由於在本環境中,使用者的資訊被儲存在 LDAP 伺服器中,因此我們還要再對聯合儲存庫的相關內容進行進一步配置,以使其可以支援 LDAP 伺服器。

在管理控制檯左側導航欄中,選擇配置安全管理選項,如下圖 6 中點選“配置”按鈕,我們來對使用者儲存庫的內容進行修改。


圖 6. 配置基於 LDAP 的聯合儲存庫

輸入域名,注意這裡可以保持預設的域名,但必須與之後的 WPS 側保持一致。主要管理使用者 (Primary administrator)擁有超級管理員許可權,可以登陸到管理控制檯並且新增刪除其它使用者。


圖 7. 輸入域名以及超級管理員使用者

接下來點選“將基本條目新增至域…”按鈕,在之前輸入的域的範圍內新增基本條目,如圖 7。點選“新增儲存庫”按鈕,在建立完實體中新增新的使用者儲存庫,如圖 8。


圖 8. 新增新的使用者儲存庫

在下一步中,我們根據 LDAP 伺服器的屬性,輸入 LDAP 伺服器的相關引數,其中包括 LDAP 伺服器型別,主機名,以及繫結的使用者名稱和密碼等資訊,並點選“確定”儲存之前的設定,如下圖 9 所示。


圖 9. 輸入 LDAP 伺服器的相關引數

指定 LDAP 伺服器屬性之後,我們還需要根據 LDAP 的情況設定“用於在域中唯一標識這組條目的基本條目的專有名稱”和“此儲存庫中基本條目的專有名稱”域,這樣我們就可以在基於此標識的專有名稱下,定位到使用者庫中的使用者。在本文中我們根據 LDAP 伺服器的屬性設定為“dc=IBM,dc=com”,點選 OK 並儲存設定,如下圖。


圖 10. 輸入域中唯一標識這組條目的專有名稱

如果 LDAP 伺服器中存在與之前使用安裝嚮導指定的相同的使用者,那麼需要將之前定義的使用者儲存庫刪掉,只保留新新增的 LDAP 型別的使用者儲存庫,以避免使用者同名的錯誤。之後我們重新啟動 Monitor 伺服器,使得之前對伺服器進行的安全配置生效。

應用程式的安全性配置

本小節中,我們主要來講述如何對企業應用程式的安全性進行相關的配置。在管理控制檯上,點選控制檯導航欄下“應用程式 -> 企業應用程式 ”選項,選擇“Monitor REST Services”應用程式,點選“詳細資訊屬性”下“安全形色到使用者/組對映”選項,如下圖 11。


圖 11. 配置應用程式的安全屬性

選擇 monitorusers 角色,並勾選“所有已認證的使用者嗎?”項,點選“確認”並儲存設定。這樣使用者就可以在安全環境下呼叫 Monitor 提供的 REST 服務,獲取監控的結果。


圖 12. 對映角色與使用者的對應關係

重複上兩步操作,對 IBM_BSPACE_WIDGETS/BusinessSpaceManager 應用程式進行操作(注意:此應用程式角色名為“Administrator”)。在 JAAS->J2C Authentication 下使用之前指定的 Primary Admin使用者(本文中使用 wpsadmin)作為“使用者標識”來作為驗證別名。如下圖所示。重新啟動伺服器,完成對 Monitor 伺服器中應用程式的安全性的設定。


圖 13. 修改相關安全別名
 

配置 WPS 伺服器的安全性

在本節中,我們將對基於 LDAP 伺服器的 WPS 的安全性進行配置。這裡我們仍然使用聯合使用者儲存庫的方式,配置方法也與前面 Monitor 大部分類似。本章省略對 WPS 伺服器在使用者儲存庫中 LDAP 屬性配置等相關內容,只是針對與 Monitor 部分配置的不同點進行說明。

首先,我們需要改變 BPE Container 的安全形色對映。如下圖 14,我們點選左側導航欄,選擇應用程式->企業應用程式,點選 BPEContainer__server1。


圖 14. 配置應用程式的安全屬性

在右側詳細資訊屬性下點選安全形色到使用者/組對映。勾選 BPESystemAdministrator 核取方塊,點選“查詢使用者”按鈕。在查詢欄中輸入管理員 ID,在本測試環境中,我們輸入 wpsadmin,按“搜尋”按鈕。選擇需要的使用者,並將他們移動到右邊的列表框中。並且點選“確定”。返回到安全形色到使用者/組對映頁面,用相垃圾廣告法為 BPESystemAdministrator 角色選擇對映的組群並儲存之前說修改的配置。

按照之前的步驟為角色 BPESystemMonitor 對映使用者和組群。餘下的角色 WebClientUser 和 JMSAPIUser 我們都將之設為“所有已認證的使用者”。如下圖所示。最後,儲存之前所作的修改。


圖 15. 對映業務容器角色與使用者的對應關係

更新 BPCExplorer 的安全形色對映屬性。配置方法與 BPE Container 相同,將 WebClientUser 角色對映為“所有已認證的使用者”選項,並儲存修改,如下圖 16。


圖 16. 對映業務瀏覽器角色與使用者的對應關係

完成業務流程容器以及 BPC 瀏覽器的安全對映關係之後,我們還需要對 Task Container 執行相同的步驟來賦予角色對映的使用者和組群。

以上我們對應用程式的安全屬性進行了配置。下面我們需要修改相關的別名屬性,更新 J2C authentication 下的別名設定,這樣在資料庫連線或者訪問資源時就可以使用到正確的別名,如下圖所示,將所有別名中對應的使用者名稱和密碼修改正確。重新啟動流程伺服器使得之前的安全性配置生效。


圖 17. 修改相關安全別名

配置其它安全屬性

在前面兩個章節中,我們分別對 Monitor 和 WPS 伺服器的安全屬性進行了配置。在配置完伺服器安全性之後,我們還需要互換兩側伺服器的 LTPA Key 以及 SSL 證照,並且我們還需要對 Alphablox 伺服器,匯流排以及檢測資料安全性等其它方面進行設定。

交換 LTPA Key 以及 SSL 證照

首先,為了保證伺服器之間的安全通訊,我們需要交換 Montior 和 WPS 兩側的 LTPA Key。登陸到 Monitor 管理控制檯(http://MonitorServer:Port/ibm/console),進入配置安全屬性頁面,點選“認證機制和到期”連結,如圖 18 所示。


圖 18. 配置伺服器認證機制

進入伺服器認證機制介面,點選”生成金鑰”按鈕,生成 LTPA Key,之後設定 LTPA 密碼,並指定 LTPA key 檔案的路徑和檔名。點選”匯出金鑰”按鈕,並儲存當前設定。


圖 19. 生成並儲存 LTPA Key

登陸到 WPS 伺服器,進入認證機制介面,匯入剛才生成的 LTPA Key。

在交換完 LTPA Key 之後,我們還需要交換兩側伺服器的 SSL 證照。首先登陸到 Monitor 伺服器控制檯,在左側導航欄中選擇安全性->SSL證照和金鑰管理。在右側相關條目中點選“金鑰庫和證照”選項,選擇 NodeDefaultTrustStore 下面的“簽署者證照”。這裡我們使用從埠獲得 SSL 證照。

輸入 WPS 伺服器側的主機名,SOAP 埠以及想要使用的別名,點選獲取證照資訊按鈕,就可以獲得 WPS 側的 SSL 證照,如下圖所示。最後要儲存獲得的 SSL 證照。


圖 20. SSL 證照資訊

使用相同的辦法,在 WPS 伺服器端獲取 Monitor 側的 SSL 證照資訊。重啟兩側伺服器,使得之前的安全配置生效。

配置 Alphablox 安全屬性

在使用 Monitor 對資料進行監控或資料分析挖掘時,我們還會使用到 IBM DB2 另外一款產品,既 DB2 Alpahblox。通過使用 Alphablox,使用者可以對資料進行多種維度以及趨式分析,並可以通過柱狀圖,餅狀圖等多種形式來進行展現。

如果安裝 Monitor 時同時安裝了 Alphablox,則我們還需要對其配置 Alphablox 的安全性。

編輯 Alphablox 伺服器下面的 Server.properties 檔案(\repository\servers\AlphabloxAnalytics\Server.properties)將如下內容 :

ws.admin.password.protected = AIL3498LKJdsdfrw#  (或其它值)
ws.admin.username = admin

配置匯流排安全

在特定的業務通訊中,我們可能還希望對傳送訊息的匯流排進行加密,以確保更高的安全性。因此,我們還需要對伺服器兩側的匯流排進行安全配置。在 Monitor 伺服器側,點選左側導航欄下 安全性 ->匯流排安全性 進行設定。

選擇與 Monitor 相關的匯流排(MONITOR..Bus),勾選 “啟用匯流排安全性” 核取方塊,並選擇正確的認證別名,如圖 21 所示。


圖 21. 配置匯流排安全性

將 “wpsadmin”以使用者型別的方式新增到 其它屬性->匯流排連線者角色中的使用者和組 中。這樣管理員 wpsadmin 使用者就可以安全的往匯流排上傳送或者接收訊息了。


圖 22. 新增連線匯流排使用者

儲存之前修改的配置,並對 Monitor 伺服器以及 WPS 側伺服器的其它匯流排都執行執行類似的操作。配置完成之後,匯流排的安全屬性屬性顯示為“已啟用”,如下圖所示。


圖 23. 配置完成匯流排安全性

Monitor 伺服器與 WPS 伺服器之間的通訊還需要在兩條匯流排之間建立一個服務整合匯流排鏈路(bus link),在我們配置了匯流排安全性之後,我們還需要配置 Monitor 和 WPS 之間匯流排連結的安全性。以 Monitor 端為例,我們在匯流排下面的訊息引擎中選擇連線匯流排的連結,為其指定正確的別名,如圖 24 所示。


圖 24. 配置匯流排連結安全性

配置資源的安全性

在進行完上面的安全屬性配置之後,我們需要去確認兩側伺服器的 JMS 佇列連線工廠(Queue connection factory)/啟用規範(Activation Specification)/ 訊息引擎的資訊儲存器(ME message store alias )/主題(Topic)/ 目標(Destination) 的安全性。確認它們選擇的使用者別名是否正確。

如果我們配置了匯流排以及匯流排連結的安全性,我們還必須在部署模型之後配置與模型相關的目標(Destination)安全性。
在完成了安裝部署的所有步驟,並且確認模型的應用程式已經啟動。在管理控制檯的左側導航欄中點選 服務整合->匯流排->MONITOR.cellname.Bus->目標。複製 xxx_xxxxxxx_Q_Destination名字(例如:mon_StartWatering_1162392953_Q_Destination)。

登陸遠端的 WPS 伺服器,在 DOS 命令列下,進入 %WPS_HOME%\bin 目。

執行 wsadmin.exe 命令。執行如下命令來賦予 LDAP 使用者訪問外來目標佇列的許可權:
$AdminTask addUserToDestinationRole {-type foreignDestination -bus MONITOR.localCellName.Bus -foreignBus MONITOR.monitorCellName.Bus -destination xxx_xxxxxxxx_nnnnnnnnnn_Q_Destination -role Sender -user wpsadmin}

之後執行 $AdminConfig save 命令來儲存之前的修改。

為了可以在 Business Space 上面看到最終的監控資訊,我們最後需要對模型資料安全性進行配置才能使得相關角色的使用者能訪問 Monitor 模型資料。我們登陸 Monitor 控制檯,點選左側導航欄安全性->Monitor 資料安全性->root 來賦予相關的使用者以特定的角色。

選擇模型和角色,並點選 “使用者” 或 “組”按鈕來選擇那些使用者可以在安全的環境中以選定的角色來訪問模型資料。完成之後,儲存之前所修改的配置。


圖 25. 為使用者新增不同角色

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14789789/viewspace-582715/,如需轉載,請註明出處,否則將追究法律責任。

相關文章