本發(fā)明涉及物聯(lián)網智能家居領域,具體地說,是一種基于RBAC模型改進的訪問控制模型;
背景技術:
在RBAC(Role-Based Access Control,基于角色的訪問控制模型)模型中,業(yè)務操作實體OPS和業(yè)務數(shù)據(jù)實體OBS是相互獨立的兩個元素,操作施加于受控對象從而產生數(shù)據(jù)授權實體P。RBAC是目前公認的解決統(tǒng)一資源訪問控制的有效方法,然而某些情況下需要對某個用戶授予特殊的權限時,RBAC就顯得有些不夠靈活,如果授予用戶所擁有的某種角色,則擁有該角色的所有用戶都會擁有該權限或被授予角色的用戶會擁有該角色的所有權限。如果為了實現(xiàn)這一需求而單獨創(chuàng)建一個角色又顯得繁瑣而不合常理,因此,結合智能家居遠程控制領域單獨對用戶授予權限的需要。
技術實現(xiàn)要素:
本發(fā)明提供了一種基于RBAC模型改進的訪問控制模型,目的在于克服現(xiàn)有技術的不足;
本發(fā)明公開了一種基于RBAC模型改進的訪問控制模型,其特征在于,包括賬號U、角色R、會話S、約束C、數(shù)據(jù)授權實體P、業(yè)務數(shù)據(jù)實體OBS、業(yè)務操作實體OPS;所述賬號U為業(yè)務操作主體,在智能家居領域中分為家庭主賬號和家庭成員子賬號;所述角色R指被授予一定的控制權限許可,派生子角色的許可是父角色許可的子集;所述會話S指賬號U和角色R間的多對多指派關系;所述約束C指角色R間的互斥、包含和優(yōu)先級關系;所述數(shù)據(jù)授權實體P是訪問控制的授權許可;所述業(yè)務數(shù)據(jù)實體OBS為智能家居領域內的房間和可控設備;所述業(yè)務操作實體OPS為智能家居領域中開關、遙控、聯(lián)動操作;
所述訪問控制模型的建立分為以下三個環(huán)節(jié):
(1)建立模型:
基于RBAC基本模型,對數(shù)據(jù)授權實體P部分結合面向業(yè)務的特征進行擴展,將模型中的業(yè)務操作實體OPS及業(yè)務數(shù)據(jù)實體OBS以業(yè)務單元為單位劃分,將操作 和數(shù)據(jù)按照業(yè)務內聚度歸集到業(yè)務單元下,使應用系統(tǒng)中不再存在獨立的操作和數(shù)據(jù);具體內容包括:
業(yè)務單元實體作為數(shù)據(jù)授權實體P的基本單位,包含業(yè)務數(shù)據(jù)結構實體OBS和業(yè)務操作實體OPS,其中業(yè)務數(shù)據(jù)結構實體用于描述業(yè)務單元下的業(yè)務實體數(shù)據(jù)結構,業(yè)務操作實體用于識別業(yè)務單元下需要進行授權訪問控制的操作;業(yè)務操作實體OPS定義可在多個業(yè)務單元間復用,因此它與業(yè)務單元實體之間是一種聚合關系;業(yè)務操作實體OPS和業(yè)務數(shù)據(jù)實體OBS的關聯(lián)關系是一種多對多關系,表示一個業(yè)務操作在執(zhí)行時受到哪些數(shù)據(jù)權限的約束;
業(yè)務數(shù)據(jù)實體OBS定義,采用數(shù)據(jù)模型來描述業(yè)務數(shù)據(jù)結構;業(yè)務數(shù)據(jù)定義映射到關系型數(shù)據(jù)庫中是一組具有主從關系或關聯(lián)關系的表或視圖的集合,因此業(yè)務數(shù)據(jù)是一組數(shù)據(jù)集,每個數(shù)據(jù)集是一個二維表結構;
數(shù)據(jù)授權實體P定義,用于定義數(shù)據(jù)權限控制的數(shù)據(jù)范圍的劃分依據(jù);其中數(shù)據(jù)范圍是指業(yè)務單元中的業(yè)務數(shù)據(jù)的取值范圍;根據(jù)上文所述,業(yè)務數(shù)據(jù)的取值范圍的劃分,就是對業(yè)務數(shù)據(jù)對應的每一個二維表的行、列兩個維度進行劃分,數(shù)據(jù)權限實體用于定義對此數(shù)據(jù)范圍的劃分的依據(jù);業(yè)務數(shù)據(jù)實體OBS和數(shù)據(jù)授權實體P之間是一種多對多關系,表示一個數(shù)據(jù)權限在作用于業(yè)務實體數(shù)據(jù)時,具體和該業(yè)務實體數(shù)據(jù)的哪個數(shù)據(jù)域,即字段或字段組合相關;
(2)權限分配
角色R以業(yè)務單元為單位進行授權分配;分配時的具體內容包括:
角色R和業(yè)務單元實體之間是一種多對多關聯(lián)關系,表示一個角色可以分配多個業(yè)務單元的數(shù)據(jù)授權實體P,一個業(yè)務單元的數(shù)據(jù)授權實體P可以分配給多個角色,角色和業(yè)務單元之間的一個分配關系,產生一個關聯(lián)的角色的授權分配實體;在一個業(yè)務單元的角色授權中,一個角色實體可選擇分配一個業(yè)務單元實體下的一個或多個業(yè)務操作實體OPS,表示該角色在當前業(yè)務單元下可執(zhí)行哪些業(yè)務操作;如果該業(yè)務操作在業(yè)務單元授權定義時定義了數(shù)據(jù)權限約束,則應根據(jù)數(shù)據(jù)權限的定義為角色分配執(zhí)行該操作時可訪問的數(shù)據(jù)范圍,從而產生角色的數(shù)據(jù)授權分配實體數(shù)據(jù);
(3)訪問控制
服務調用接口遵循基本的RBAC模型定義的操作接口標準,在角色的授權訪問控制部分,采用以業(yè)務單元為基本單位的訪問控制;在運行時服務的內部,根據(jù)輸 入的會話S和業(yè)務單元、業(yè)務操作等信息,加載業(yè)務單元定義,根據(jù)分配時設置的角色的授權分配S和C結果進行邏輯運算,向調用返回授權訪問控制的結果。
與現(xiàn)有技術相比,本發(fā)明的積極效果是:
1.本發(fā)明比傳統(tǒng)的RBAC模型靈活,滿足了智能家居遠程控制領域單獨對用戶授予權限的需要。
附圖說明
圖1是本發(fā)明所述的訪問控制模型示意圖;
具體實施方式
本發(fā)明提供一種基于RBAC模型改進的訪問控制模型,為使本發(fā)明的目的、技術方案及效果更佳清楚、明確,以下對本發(fā)明進一步詳細說明;應當理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用與限定本發(fā)明;
本發(fā)明公開了一種基于RBAC模型改進的訪問控制模型,其特征在于,包括賬號U、角色R、會話S、約束C、數(shù)據(jù)授權實體P、業(yè)務數(shù)據(jù)實體OBS、業(yè)務操作實體OPS;所述賬號U為業(yè)務操作主體,在智能家居領域中分為家庭主賬號和家庭成員子賬號;所述角色R指被授予一定的控制權限許可,派生子角色的許可是父角色許可的子集;所述會話S指賬號U和角色R間的多對多指派關系;所述約束C指角色R間的互斥、包含和優(yōu)先級關系;所述數(shù)據(jù)授權實體P是訪問控制的授權許可;所述業(yè)務數(shù)據(jù)實體OBS為智能家居領域內的房間和可控設備;所述業(yè)務操作實體OPS為智能家居領域中開關、遙控、聯(lián)動操作;
所述訪問控制模型的建立分為以下三個環(huán)節(jié):
(1)建立模型:
基于RBAC基本模型,對數(shù)據(jù)授權實體P部分結合面向業(yè)務的特征進行擴展,將模型中的業(yè)務操作實體OPS及業(yè)務數(shù)據(jù)實體OBS以業(yè)務單元為單位劃分,將操作和數(shù)據(jù)按照業(yè)務內聚度歸集到業(yè)務單元下,使應用系統(tǒng)中不再存在獨立的操作和數(shù)據(jù);具體內容包括:
業(yè)務單元實體作為數(shù)據(jù)授權實體P的基本單位,包含業(yè)務數(shù)據(jù)結構實體OBS和業(yè)務操作實體OPS,其中業(yè)務數(shù)據(jù)結構實體用于描述業(yè)務單元下的業(yè)務實體數(shù)據(jù)結構,業(yè)務操作實體用于識別業(yè)務單元下需要進行授權訪問控制的操作;業(yè)務操作實體OPS定義可在多個業(yè)務單元間復用,因此它與業(yè)務單元實體之間是一種聚合關系;業(yè) 務操作實體OPS和業(yè)務數(shù)據(jù)實體OBS的關聯(lián)關系是一種多對多關系,表示一個業(yè)務操作在執(zhí)行時受到哪些數(shù)據(jù)權限的約束;
業(yè)務數(shù)據(jù)實體OBS定義,采用數(shù)據(jù)模型來描述業(yè)務數(shù)據(jù)結構;業(yè)務數(shù)據(jù)定義映射到關系型數(shù)據(jù)庫中是一組具有主從關系或關聯(lián)關系的表或視圖的集合,因此業(yè)務數(shù)據(jù)是一組數(shù)據(jù)集,每個數(shù)據(jù)集是一個二維表結構;
數(shù)據(jù)授權實體P定義,用于定義數(shù)據(jù)權限控制的數(shù)據(jù)范圍的劃分依據(jù);其中數(shù)據(jù)范圍是指業(yè)務單元中的業(yè)務數(shù)據(jù)的取值范圍;根據(jù)上文所述,業(yè)務數(shù)據(jù)的取值范圍的劃分,就是對業(yè)務數(shù)據(jù)對應的每一個二維表的行、列兩個維度進行劃分,數(shù)據(jù)權限實體用于定義對此數(shù)據(jù)范圍的劃分的依據(jù);業(yè)務數(shù)據(jù)實體OBS和數(shù)據(jù)授權實體P之間是一種多對多關系,表示一個數(shù)據(jù)權限在作用于業(yè)務實體數(shù)據(jù)時,具體和該業(yè)務實體數(shù)據(jù)的哪個數(shù)據(jù)域,即字段或字段組合相關;
(2)權限分配
角色R以業(yè)務單元為單位進行授權分配;分配時的具體內容包括:
角色R和業(yè)務單元實體之間是一種多對多關聯(lián)關系,表示一個角色可以分配多個業(yè)務單元的數(shù)據(jù)授權實體P,一個業(yè)務單元的數(shù)據(jù)授權實體P可以分配給多個角色,角色和業(yè)務單元之間的一個分配關系,產生一個關聯(lián)的角色的授權分配實體;在一個業(yè)務單元的角色授權中,一個角色實體可選擇分配一個業(yè)務單元實體下的一個或多個業(yè)務操作實體OPS,表示該角色在當前業(yè)務單元下可執(zhí)行哪些業(yè)務操作;如果該業(yè)務操作在業(yè)務單元授權定義時定義了數(shù)據(jù)權限約束,則應根據(jù)數(shù)據(jù)權限的定義為角色分配執(zhí)行該操作時可訪問的數(shù)據(jù)范圍,從而產生角色的數(shù)據(jù)授權分配實體數(shù)據(jù);
(3)訪問控制
服務調用接口遵循基本的RBAC模型定義的操作接口標準,在角色的授權訪問控制部分,采用以業(yè)務單元為基本單位的訪問控制;在運行時服務的內部,根據(jù)輸入的會話S和業(yè)務單元、業(yè)務操作等信息,加載業(yè)務單元定義,根據(jù)分配時設置的角色的授權分配S和C結果進行邏輯運算,向調用返回授權訪問控制的結果。
對于本領域技術人員而言,顯然本發(fā)明不限于上述示范性的實施例的細節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實現(xiàn)本發(fā)明;因此,無論從哪一點來看,均應將實施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的 含義和范圍內的所有變化囊括在本發(fā)明內,不應將權利要求中的任何附圖標記視為限制所涉及的權利要求。