【集中賬號管理的目的】
隨着信息系統複雜性的增加,對中國移動企業內部用戶權限的管理要求,將大大超過手工管理跨異構系統的能力。管理上的複雜性還會導致出錯機會和安全風險的增加。比如,人員的快速流轉導致系統中大量存在孤立的賬號,並且這些孤立的賬號具有有效的權限,使企業暴露在內部和外部攻擊之下。
在一個大型的、信息化程度很高的企業當中,賬號管理集中化是解決這些問題的出路,使企業能夠從一個或幾個集中點,控制用戶對所有企業信息系統的訪問。
企業通過實施集中賬號管理,達到以下目的:
1. 管理員在一點上即可對不同系統中的賬號進行管理,實現:
1. 賬號與人的關聯;
2. 網絡設備、操作系統、甚至應用系統中已有賬號的收集;
3. 新建賬號並同步到各系統中去;
4. 實現集中的密碼策略,並按照密碼策略的要求,自動、集中、定期修改系統賬號的口令;
5. 實現集中刪除一個自然人的所有或者部分系統賬號;
6. 通過4A之外的流程管理系統或者簡單的記錄手段保留賬號創建、分配、變更、刪除整個過程的信息,從而知道什麼時間、哪些賬號給了哪些人,每個人擁有什麼樣的賬號,便於審計。
【對集中賬號管理的要求】
賬號集中化管理系統需要做到:
1、與各主機、網絡設備、信息系統無縫連接
對於採用賬號/密碼方式登錄的應用系統,要求能夠繼承現有系統的賬號數據,並將各種系統的賬號數據統一到一種格式,集中存放。
現有應用系統中的賬號數據可能存放在關係數據庫(RDB)中,也可能存放在LDAP數據庫中,要求對這兩種存儲方式均提供支持,並且可以通過簡單的數據庫映射配置即可完成。
能夠自動發現主機、網絡設備上的已有賬號。可以定期,或手動觸發,自動搜索所有被管理的系統,從中發現、收集所有新創建的賬號。
可以通過該平臺設定密碼策略,包括密碼強度、生存週期等,並且能夠將結果自動同步到所有被管理系統中去。
2、與單點登錄系統無縫連接
賬號管理數據能夠實時的與SSO服務器中的數據同步,或者採用相同的數據庫。同步的信息包括系統賬號、口令等等。如賬號管理模塊自動修改操作系統賬號的口令後,能夠將新的口令同步到SSO,而不影響SSO功能。
3、提供賬號生存期管理
賬號生存期管理是指對賬號從產生到刪除各存在狀態進行管理。包括對賬號屬性的更改,口令的重設,賬號使用情況的審計等。
賬號生存期管理示意如圖5.1所示,在後續章節中還要詳細介紹。
圖: 賬號的生存期管理
用戶賬號集中化管理的帶來的益處,需要從系統安全角度、用戶角度和系統管理員角度進行體現:
1. 系統安全角度:統一的管理策略保證用戶賬號的管理與實際情況緊密聯繫,增加了系統的安全性;
2. 用戶角度:先進的單點登錄技術與用戶賬號的集中管理結合,方便了用戶的登錄,提高安全保護等級;
系統管理員角度:對系統中的用戶賬號統一管理,可以減少系統管理員的勞動強度,提高生產效率,增強系統的安全性。
【賬號生存期管理】
賬號生存期管理是指對賬號從產生到刪除各存在狀態進行管理。包括對賬號屬性的更改,口令的重設,賬號使用情況的審計等。集中賬號管理系統必須覆蓋整個生存期管理。
【用戶與賬號的關係】
在此先對用戶和賬號這兩個基本概念進行澄清。
用戶是指使用信息系統的企業內正式或臨時的員工、來自合作伙伴或設備供應商的工作人員等。
賬號是指具體使用系統和業務系統的主體。
用戶與賬號的關係是這樣的:一個用戶可以擁有信息系統中的一個或多個賬號,也可以不擁有任何賬號;賬號一般與一個特定的用戶相關聯,也可以不屬於任何一個用戶(孤立的賬號),甚至可以屬於多個用戶(多個用戶共享同一賬號)。用戶與賬號之間的關係如圖5.2所示。
圖5.2 信息系統中用戶與賬號的關係
從圖中可以看出用戶與賬號的對應關係主要有以下幾種:
1)孤立的用戶
孤立的用戶一般是在用戶剛剛在企業中註冊還沒有爲其分配賬號的時候。
2)孤立的賬號
孤立的賬號一般是在用戶離職以後,但賬號還沒有刪除的情況下存在。從安全的角度來看,這種孤立的賬號對於信息系統的安全是一種潛在的威脅,因爲這種賬號是有效的,可以訪問信息系統的資源。
3)一個用戶對應多個賬號
一個用戶對應多個賬號是比較普遍的情況,因爲用戶要訪問不同的信息系統,而不同信息對賬號的管理是獨立的,即使是在同一個信息系統中,由於工作的需要,某些用戶(如系統管理員)可能既需要高權限的賬號,也需要低權限的賬號。
4)多個用戶對應一個賬號
多個用戶使用同一賬號的情況主要出現同一個工作組中,因爲工作的需要大家使用同一個賬號。如在中國移動OA系統中,由於軟件平臺的管理員賬號是唯一的,而有管理員權限的用戶有多個,只能是這多個用戶共享這唯一的管理員賬號。這種方式也是不安全的,可能因爲某個用戶的失誤導致系統安全被破壞。
用戶在企業中的生命週期,從用戶被錄用開始一直到離職,這中間經過職位和崗位的變動、權限的變化等,企業中用戶的管理將伴隨着員工的整個生命週期。
由於用戶可能要訪問多個信息系統,這些信息系統可能是異構的,所以在實施用戶策略時,管理員應該可以一次性向多個異構的管理平臺提交策略,並且策略在傳播時也能夠確保一致性。集中化用戶管理工具應能發現企業內的所有被管理對象,並呈現給管理員。同樣,對用戶的管理也可以以目錄的形式進行管理,對用戶的創建、修改和刪除能夠方便地進行。
對於應用系統來說,集中化的用戶賬號管理流程大體可以分爲以下幾步:
1、用戶主賬號創建
通過系統管理員或用戶自助註冊系統建立用戶主賬號,與實際人員對應,每人一個。在單點登錄(SSO,詳見本文7.3節)環境下,主賬號用於第一次登錄;在非SSO環境中,主賬號僅僅是自然人的標識。
2、分配角色
管理員根據用戶的工作部門和崗位,爲用戶分配相應的角色。
4、創建從賬號
如果對企業內的應用還沒有按照本要求附錄二中的模式二實施改造,則用戶在訪問具體的應用系統時,還需要嚮應用服務器提交自己在應用系統中的賬號(從賬號)。管理員根據用戶的工作部門和崗位,在集中賬號管理平臺上爲用戶創建相應的從賬號,從賬號會自動下發到對應的應用系統中。
5、獲得訪問權限
基於角色或已創建的從賬號,用戶獲得訪問信息系統相關資源的權限。
對於網絡設備、操作系統來說,集中化的用戶賬號管理流程包括:
1、用戶主賬號創建
通過系統管理員或用戶自助註冊系統建立用戶主賬號。在SSO環境下,主賬號用於第一次登錄;在非SSO環境中,主賬號僅僅是自然人的標識。
2、從賬號建立與分配
管理員根據用戶的工作部門和崗位,通過集中賬號管理平臺爲用戶創建或關聯相應的從賬號。新建的從賬號信息由集中賬號管理平臺自動下發到對應的主機或設備。
3、賬號使用
基於已創建的從賬號,用戶獲得訪問信息系統相關資源的權限。
4、賬號維護
包括根據密碼策略,定期更改口令;從賬號定期收集、同步;賬號回收等。
【賬號集中化管理架構】
【一般模型】
賬號集中化管理系統架構如圖所示。
賬號集中管理系統一般包括三個主要部分:
1. 賬號管理服務器,提供賬號管理服務。爲了與4A框架下其它模塊有機結合,賬號管理服務器需要提供適當的對外接口,經過授權的應用可以通過這些接口查詢賬號管理模塊所管理的賬號信息。
2. 集中的賬號管理數據庫,用於存儲內部的所有管理信息,包括所管理的設備、系統,各設備、系統下的所有從賬號,從賬號與主賬號的對應關係等。在賬號管理數據庫中可以不存儲個人信息,而是在需要的時候通過外部數據接口訪問企業安全目錄,獲取個人信息。
3. 適配層,用於將不同的網絡設備、主機系統以及應用系統的賬號管理機制通過標準化接口,統一到統一的管理架構中。
由於主機、網絡設備的賬號管理與應用系統的賬號管理有所不同,因此下面分別進行描述。在選購具體賬號管理產品時,要求對主機、網絡設備及應用系統賬號管理均提供一體化的解決方案。
在對主機、網絡設備的賬號進行集中管理時,一般的產品將適配層實現爲具體的適配器,或稱Agent(代理)。通過Agent,可以將不同的管理接口、協議,轉換成統一的接口、協議,便於容納、管理不同的設備、系統,包括:
1. 將集中賬號管理系統發出的賬號管理指令,包括賬號收集、賬號創建、賬號刪除、密碼更改等,轉換成主機或設備能夠識別的指令,發送給主機或設備。
2. 將主機、設備返回的不同格式的信息,包括收集到的賬號、命令執行結果等,轉換成集中賬號管理系統規定的統一格式,便於統一展現、管理。
按照Agent部署方式的不同,對主機、網絡設備的集中賬號管理可以有兩種實現方式:
1. 內置Agent方式。即將Agent部署到被管理的主機、網絡設備中,管理服務器通過標準或自定義的網絡傳輸協議,與Agent通訊,實現具體的管理功能,如圖所示。某些設備內置的radius協議,或SNMP,都可以看作是內置Agent的例子。
2. 外置Agent方式。即將Agent部署在被管理的主機、網絡設備之外,通過標準的管理協議、接口,與主機、網絡設備進行通訊,實現管理功能,如圖5.5所示。對於UNIX系統來說,最常用的管理協議是Telnet、SSH;對於Windows來說,除了Telnet、SSH外,還可以使用Windows自帶的管理客戶端。很多廠家實現的Agent,就是部署在主機外,通過Telnet與主機通訊,行使管理功能,這就是典型的外置Agent的例子。
內置Agent方式與外置Agent方式比較
內置Agent方式 | 外置Agent方式 | |
優點 | 1. 駐留在系統內部,可以使用系統提供的全部管理功能。
2. 可以及時發現新賬號。 3. 可以使用自定義傳輸協議,便於加密。 |
1. 不需要在系統內安裝如何軟件,符合管理員工作習慣。
2. 部署在被管理系統外部,不會對被管理系統本身的運行效率產生影響。 |
缺點 | 1. 如果主機本身不提供,需要在主機內安裝新的軟件,管理員可能會有疑慮。而且對於固件化的網絡設備,也很難安裝新的軟件。
2. Agent在主機內運行,可能會對主機本身的運行效率產生影響。 |
1. 只能通過被管主機、網絡設備的操作系統提供的標準管理接口或協議進行管理,功能受接口或協議的限制。
2. 通常爲了安全起見,管理員會關閉某些不安全的公共管理協議,如Telnet,如果外置Agent基於這些協議,則可能會帶來不兼容或安全問題。 3. 對新賬號的發現多通過定時輪詢。 |
適用範圍 | 主要適用於主機 | 適用於主機、網絡設備 |
對於應用的集中賬號管理,需要分情況來考慮。
對於按照本文附錄二的模式二進行過改造的應用系統,已經將身份認證、權限管理等功能移交給了4A框架,則本身不再保留賬號,也不需要進行賬號管理,而是由4A框架實現基於角色的集中訪問控制,包括:
1. 通過4A框架創建、撤消用戶。
2. 通過4A框架創建、撤消角色。
3. 通過4A框架分配角色權限,包括角色能夠訪問哪些應用,能夠在應用中以什麼樣的方式訪問哪些資源。
4. 通過4A框架給用戶分配角色。
5. 用戶登錄時,集中身份認證系統可以識別用戶的個人身份。
6. 集中授權系統根據用戶的個人身份,確認用戶能夠扮演的角色、角色的權限,並決定用戶是否能夠登錄所訪問的應用。
7. 用戶登錄到應用後,應用服務器根據集中授權系統返回的角色權限信息,決定用戶在應用內部的權限。
如果應用還沒有按照本文附錄二的模式二進行過改造,在應用內部還保持有自己的賬號,則4A框架對他們的集中賬號管理,主要表現爲賬號同步:通常應用系統都有自己的數據庫,用於存儲自己的賬號信息,因此集中賬號管理系統對應用賬號的管理,經常表現爲數據庫同步,即保持應用數據庫與賬號集中管理數據庫中的賬號數據的同步。這時圖5.3中的適配層即表現爲數據庫同步工具。對於通過RDB存儲賬號信息的應用系統,集中賬號系統可以通過類似ETL工具的數據庫映射工具同步賬號;而對於通過LDAP存儲賬號信息的數據庫,可能需要專門的同步工具。
這種同步可以有兩種觸發方式:
1. 定時觸發。即系統根據事先制定的策略,定期對數據庫進行同步。
2. 事件觸發。即管理員在需要的時候,或者在管理員進行了某些操作後,自動進行數據庫同步。
具體的集中賬號管理系統要求兩種方式均支持,便於系統管理員根據需要選擇使用。
如果需要在保留應用系統賬號的情況下實現單點登錄(SSO,詳見本文7.3節),則集中賬號管理系統必須與應用系統保持從賬號/密碼的同步。如果應用數據庫中的密碼信息爲加密存儲,或存儲的是加密後的摘要信息,則很難從應用數據庫中抽取賬號密碼,在這種方式下,同步通常是單向的:集中賬號管理系統根據密碼策略,自動更改用戶在應用系統中的密碼,而不從應用數據庫中抽取密碼。當然前提條件是應用系統必須開放其密碼加密方法,或提供相關的密碼寫入接口供集中賬號管理系統調用,否則無法實現從上至下的密碼管理。
對於使用一次性動態密碼進行身份認證的系統,按通常手段同步賬號信息也存在困難。這個問題的解決辦法是:對應用進行改造,把動態口令系統實現在主賬號認證階段,其它階段按照普通的賬號/密碼方式實現,賬號/密碼傳遞過程進行數據加密。
雖然主機、網絡設備的賬號管理,與應用系統的賬號管理有所不同,但是在呈現給管理員時,賬號集中化管理系統應能夠提供統一的管理界面,無論所管理的網絡設備、服務器、工作站及應用系統爲何種平臺,都可視爲被管理對象,都採用一致的管理方式進行用戶管理,這樣就可以屏蔽各平臺之間的差異性。
安全管理員應該可以通過方便的圖形用戶界面或Web瀏覽器與系統交互,對用戶及信息資源進行管理。
在進行產品採購時,如果主機、網絡設備的賬號管理,與應用系統的賬號管理系統用的不是同一個系統,則需要系統集成商進行開發:
1. 保證兩個系統中用戶主賬號與企業安全目錄中的主賬號一致。
2.提供一個集成的界面,將兩個系統的功能集成在一起。這個界面不能通過簡單的Portal進行界面堆疊,還必須考慮兩個系統之間的數據交流,從而能夠在屏蔽系統差異的基礎上,爲管理員提供統一的資源管理功能、賬號管理功能和權限管理功能。
【自我服務系統】
爲了提高管理效率,降低管理成本,集中賬號管理系統還需要提供基於web的自我服務功能,供普通用戶使用。
自我服務系統使用戶不需要幫助桌面或支持人員的幫助,就能夠對自己的基本信息如部門、職務、聯繫方式、職責等進行管理;能夠在用戶忘記賬號口令時重設口令(如果未實施SSO,則用戶可以更改所有從賬號口令;如果已經實施SSO,則用戶不再需要更改從賬號口令,並且只有在SSO採用主賬號/密碼方式進行身份認證時纔有必要讓用戶更改主賬號口令),並且能夠提供自動提醒用戶修改主賬號口令的手段等。自我服務系統使得系統的安全策略得以貫徹,並能顯著減輕系統管理人員的維護負擔。
自我服務系統一般通過問答的方式對用戶進行身份驗證,驗證通過後用戶就可以對自己的信息,包括在某些系統中的口令進行設置和修改。
對於採用了SSO的情形,用戶一般通過自我服務系統修改自己在SSO服務器中的賬號(主賬號)信息。但用戶在各系統中的賬號(從賬號),也必須能夠由賬號集中管理系統按照安全策略或者密碼策略,自動進行修改。自動修改後的密碼可以通過自我服務系統查詢,或通過在自我服務系統中的設置,通過手機短消息等手段通知用戶。管理員可以通過這種手段定期備份幾個特殊賬號的密碼,供緊急情況下使用。
對於沒有采取SSO的情形,要求用戶完全的自助服務,即用戶可以修改自己在各系統中的從賬號信息,包括口令及聯繫方式等個人信息。