(1) actionId來源于哪里?
Action是對資源的所有操作信息,故actionId來源于xml文檔
(2)resourceId來源于哪里?
Resource可以分為靜態(tài)的資源和動態(tài)的資源。
靜態(tài)的資源:指系統(tǒng)預(yù)定義的資源,這來源于xml文檔,類似于靜態(tài)的權(quán)限。
動態(tài)的資源:在系統(tǒng)運行過程中的產(chǎn)生的資源。例如:增加一個社區(qū)、增加一個頁面、增加一個欄目、增加一篇文章等,都會在Resource_表中增加相應(yīng)的記錄。
2、權(quán)限的分類
靜態(tài)的權(quán)限:指系統(tǒng)預(yù)定義的權(quán)限,這來源于xml文檔;xml文檔中配置好的權(quán)限保存在數(shù)據(jù)庫中。
動態(tài)的權(quán)限:在系統(tǒng)運行過程中,或者說在使用系統(tǒng)的過程中,進行權(quán)限分配后,產(chǎn)生的權(quán)限。例如:給角色SupportMBAdmin,對Portlet資源Message Boards Portlet,添加Add Category操作后,就會在Permissions_表中新增一條記錄。
二、
與權(quán)限有關(guān)的實體包括:資源、權(quán)限、角色、用戶、組織、地區(qū)、用戶組、社區(qū)。
1、各實體的定義
Resource :在Liferay中,可以簡單的認為Resource是一個個可以操作的實體對象。一般resources包括portlets(如:Message Boards,Report, etc),java類(如:Message Board Topics,Report Events, etc),flies(如:documents,images,etc)。資源可以用三種范圍:enterprise, community, or individual;關(guān)系如下圖所示:
Permission :所謂的權(quán)限是定義在某個資源上的操作動作(比如:高級文章編審這個portlet資源中的編輯)。
Role :角色是權(quán)限的組合(也就是說一些資源的權(quán)限的組合起來,形成一個權(quán)限集合,我們把這個集合叫做一個角色)。
Users :用戶就是執(zhí)行某些操作完成某些任務(wù)的人,隸屬于用戶組(也可以單獨存在)。在沒有登錄系統(tǒng)之前,所有的用戶都被當作是一個Guest。
Organizations and Locations :是Groups的集合。
Communities/Groups :社區(qū),用戶自定義的用戶集合。
UserGroups :用戶組,不屬于任何公司、任何組織、任何地區(qū),純粹只是為了方便分配角色或權(quán)限,而將具有共性(比如:具有相同興趣愛好等)的一些用戶進行分組。
2、實體間的層次關(guān)系
(1)角色之間不存在層次關(guān)系;
(2)組織之間存在層次關(guān)系;
(3)地區(qū)之間不存在層次關(guān)系;
(4)用戶組之間不存在層次關(guān)系;
3、特別注意:
(1)當新增或編輯一個用戶時,可以不指定社區(qū),只指定一個組織;
(2)當新增或編輯一個用戶時,可以不指定組織,只指定一個社區(qū);
(3)當新增或編輯一個用戶時,可以既不指定組織,也不指定社區(qū),不過為了方便管理,一般會為用戶指定一個組織或社區(qū)。
(4)為用戶指定組織后,Liferay會為用戶指定社區(qū)。