系統的使用者通常稱爲用戶,用戶登錄後,系統通過各種標識賦予用戶操作和查看權限。
後臺需要對用戶賬戶、操作權限和數據權限等進行管理。用戶管理貫穿業務各個環節,是支撐業務運營的核心部分。
本文對後臺用戶管理進行總結,期望對大家有所幫助。
一、外部用戶
系統用戶一般分爲內部用戶和外部用戶。這種區分是從平臺運維角度出發,平臺運維公司的員工稱爲內部用戶,其他用戶稱爲外部用戶。
外部用戶隸屬關係比較複雜,有的掛靠在某公司之下,無需註冊,由系統管理員分配賬戶。
有的則以獨立個體存在,例如:釘釘,以獨立個體註冊,公司邀請員工,員工同意後纔有了歸屬。
第三種情況是用戶以獨立個體註冊時選擇所屬公司,這種方式存在兩個問題:
用戶隨意選擇企業,不能保證準確性;
是否要在後臺維護企業基礎數據,不維護的話,無法統一數據源,維護的話,不能覆蓋全部註冊用戶的企業。
選擇哪種方式,需要根據實際業務情況進行設計。
目前平臺的服務對象是門店銷售員,由於業務衝突,平臺無法獲得企業級的合作,前兩種情況需要隸屬公司在平臺上進行操作,只能選擇第三種方式,用戶以獨立個體註冊平臺,並填寫所屬企業。
爲避免第三種方式存在的問題,做如下處理:
用戶註冊填寫企業,無需選擇基礎數據;
後臺維護企業基礎數據;
用戶審覈時,有平臺客服人員選擇企業基礎數據。
這樣既減少了用戶操作的繁瑣,平臺又能獲得精準的數據。
二、內部用戶
內部用戶也有歸屬,舊有的平臺添加員工時選擇歸屬,在員工管理菜單下展示爲員工列表,這樣做需要提前維護組織機構,頻繁切換菜單。
像釘釘、企業微信等,在維護員工時,按照公司的組織架構進行維護,在同一頁面完成部門和員工的添加,層級關係清晰:
內部用戶一般無需註冊,由系統管理員分配。分配的賬戶可以是字符串,也可以是員工的手機號碼。
三、角色與權限
每個賬號,都被賦予了特定的角色;而每個角色的背後,都有其對應的權限信息。
通過RBAC權限管理模型,用戶可按照實際業務的需要分配不同的角色和權限,在共享一個
軟件平臺的基礎上,實現不同用戶的不同功能。
權限的賦予分爲自動賦權和手動賦權兩種。
外部用戶的自動賦權一般是賬戶有默認的基礎權限,要想獲得更多的權限需要另外開通;內部用戶的自動賦權,一般是把角色與行政關係下的部門建立綁定關係,用戶進入到該部門後,賬戶自動被加入到對應的角色中,並且擁有該角色所有的權限。
手動賦權無法通過用戶行政關係自動綁定來實現,需要手動建立角色賦予給賬戶。
例如:要求客服專員只能看分到自己名下的客戶,上級領導看全部下級的客戶,通過兩種方式實現:
一是通過組織機構的上下級歸屬自動賦予數據權限;
另外一種用數據角色,實現跨部門查看數據。
另外,角色可以繼承,子賬戶繼承父系角色的權限。例如:賦予某企業級外部用戶admin某些權限,該企業下的其他子賬戶只能從admin權限中選擇可用權限。
權限依據屬性可分爲操作權限和數據權限。
操作權限會從功能菜單、功能操作兩方面考慮,角色勾選上菜單和功能,擁有該角色的賬戶即可操作相應的菜單和菜單下的操作(例如新、增、改、查)。
數據權限會從菜單、列表及數據字段三個顆粒度考慮:
菜單是最粗顆粒度的數據權限,獲得授權即可查看該菜單下的全部數據;
列表是較細顆粒度的權限,不同角色的用戶進入同一菜單頁後,查看的列表字段相同,但量級不同,例如上面描述的員工看自己的數據,領導看全部員工數據;
數據字段是最細顆粒度的權限,不同角色的用戶進入同一菜單頁後,可見的數據字段有差異,這些字段共存在一個菜單頁中,只是受限於不同的角色權限。
四、單點登錄
平臺會涉及多個應用系統,例如:合同管理、資金管理、小程序管理、兌換商城等,可通過單點登錄(SSO)。
在多個應用系統中,實現登錄一次就可以訪問所有相互信任的應用系統。
應用系統加入了單點登錄協議,管理用戶帳號的負擔就會減輕,實現應用系統的用戶、角色和組織機構統一化管理。
要實現SSO,需要:
統一集中的用戶身份管理系統。所有應用系統共享一個身份認證系統,用戶登錄時,信息和用戶信息庫相比較,對用戶進行登錄認證;認證成功後,認證系統生成統一的認證標誌(ticket),返還給用戶。另外,認證系統還應該對ticket進行效驗,判斷其有效性。
所有應用系統能夠識別和提取ticket信息。應用系統對ticket進行識別和提取,通過與認證系統的通訊,自動判斷當前用戶是否登錄過,從而完成單點登錄功能。通過基於互聯網協議的單點登錄、登出體系實現用戶不同應用系統間身份一致性,實現信息空間身份一致性。
不論是外部用戶,還是內部用戶管理,都涉及到賬戶、角色和權限的管理。
本文從自身經驗出發,總結了各個環節需要注意的地方,另外單點登錄涉及到用戶管理,貫穿整個平臺,此部分技術人員參與的比較多,本文只做了簡要的總結。
用戶管理系統最難的是後續的維護,系統中往往會出現很多冗餘的角色,這都需要慎重思考,和業務溝通清楚後再做調整。