亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種多要素訪問控制機(jī)制描述及解析方法與流程

文檔序號:12718820閱讀:245來源:國知局
一種多要素訪問控制機(jī)制描述及解析方法與流程

本發(fā)明屬于訪問控制及授權(quán)管理領(lǐng)域,特別是一種多要素訪問控制機(jī)制描述及解析方法。



背景技術(shù):

訪問控制技術(shù)起初用于數(shù)據(jù)共享系統(tǒng)的資源管理和權(quán)限描述,它通過對用戶訪問資源的活動進(jìn)行有效監(jiān)控,滿足合法用戶在合法時間內(nèi)獲得系統(tǒng)有效訪問權(quán)限的需求,同時防止未授權(quán)用戶對系統(tǒng)資源的非法訪問。訪問控制技術(shù)研究目前可以劃分為基于策略描述的訪問控制與基于密碼算法的訪問控制。其中,基于策略的訪問控制技術(shù)基于主體的角色、時空、屬性等,描述其對客體的訪問策略,約束主體的訪問行為;基于密碼算法的訪問控制技術(shù)則將加解密技術(shù)引入了訪問控制與權(quán)限管理的應(yīng)用場景中,產(chǎn)生了一系列具有代表性的模型與機(jī)制。

針對不同的應(yīng)用場景出現(xiàn)的眾多訪問控制機(jī)制無論是策略類還是密碼算法類,均以多要素為發(fā)展目標(biāo),角色已經(jīng)不在是唯一的訪問控制要素,時態(tài)、環(huán)境、多級安全級別、客體生命周期、密碼參數(shù)等均需要在訪問控制和授權(quán)過程中考慮。各種訪問控制機(jī)制的出現(xiàn)在性能、安全性等方面進(jìn)行了多方面的改進(jìn),但是訪問控制設(shè)計(jì)者多為理論研究或數(shù)學(xué)領(lǐng)域工作者,其描述的機(jī)制、協(xié)議、甚至算法僅僅能夠從數(shù)學(xué)理論方面進(jìn)行分析和證明,在理論層面保證其安全性;通過理論分析來對性能進(jìn)行評估。

但是通常情況下,訪問控制機(jī)制設(shè)計(jì)與理論研究者對計(jì)算機(jī)編程語言及相關(guān)程序設(shè)計(jì)相對比較陌生,往往出現(xiàn)編程實(shí)現(xiàn)困難、程序設(shè)計(jì)漏洞,從而影響訪問控制機(jī)制的性能測試和安全性分析,不能夠表示自己的設(shè)計(jì)初衷;而計(jì)算機(jī)編程工作者一般對訪問控制機(jī)制設(shè)計(jì)中所包含的數(shù)學(xué)理論和描述較為陌生,編程實(shí)現(xiàn)的過程中容易出現(xiàn)應(yīng)為理解的偏差導(dǎo)致的實(shí)現(xiàn)與設(shè)計(jì)脫節(jié)的問題。上述原因是目前多要素訪問控制機(jī)制設(shè)計(jì)與測試面臨的主要困境。因此如何設(shè)計(jì)一種既能夠適用于訪問控制理論研究人員描述,又能夠與計(jì)算機(jī)編程語言無縫對接的多要素訪問控制描述語言及其解析方法顯得至關(guān)重要。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于提供一種多要素訪問控制機(jī)制描述及解析方法。

實(shí)現(xiàn)本發(fā)明目的的技術(shù)方案為:一種多要素訪問控制機(jī)制描述及解析方法,包括以下步驟:

第一步,定義多要素訪問控制機(jī)制描述語言,用于用戶針對其訪問控制主客體、訪問控制策略進(jìn)行類數(shù)學(xué)語言的描述;

第二步,根據(jù)訪問控制機(jī)制描述語言對用戶設(shè)計(jì)的訪問控制機(jī)制進(jìn)行描述,生成描述源文件;

第三步,對描述源文件進(jìn)行語言解析,生成算法描述中間代碼;

第四步,依據(jù)用戶的目標(biāo)代碼需求,選擇計(jì)算機(jī)編程語言對應(yīng)的代碼底層庫,生成目標(biāo)代碼。

與現(xiàn)有技術(shù)相比,本發(fā)明的顯著優(yōu)點(diǎn)為:

(1)本發(fā)明的多要素訪問控制機(jī)制描述及解析方法既能夠適用于訪問控制理論研究人員描述,又能夠與計(jì)算機(jī)編程語言無縫對接;

對于訪問控制理論研究人員,通過類數(shù)學(xué)語言進(jìn)行描述,既可實(shí)現(xiàn)機(jī)制的性能測評,又無需關(guān)注計(jì)算機(jī)的實(shí)現(xiàn)細(xì)節(jié);

對于計(jì)算機(jī)專業(yè)人員,可以獲取多要素訪問控制機(jī)制的準(zhǔn)確實(shí)現(xiàn)代碼,保證了代碼的安全性。

附圖說明

圖1為本發(fā)明多要素訪問控制機(jī)制描述及解析方法的流程示意圖。

圖2為多要素訪問控制機(jī)制描述流程示意圖。

圖3為多要素訪問控制機(jī)制描述主體定義流程示意圖。

圖4為多要素訪問控制機(jī)制描述客體定義流程示意圖。

圖5為多要素訪問控制機(jī)制描述策略函數(shù)定義流程示意圖。

圖6為多要素訪問控制機(jī)制描述語言解析流程示意圖。

具體實(shí)施方式

結(jié)合圖1,本發(fā)明的一種多要素訪問控制機(jī)制描述及解析方法,包括以下步驟:

第一步,定義多要素訪問控制機(jī)制描述語言,用于用戶針對其訪問控制主客體、訪問控制策略進(jìn)行類數(shù)學(xué)語言的描述;

第二步,根據(jù)訪問控制機(jī)制描述語言對用戶設(shè)計(jì)的訪問控制機(jī)制進(jìn)行描述,生成描述源文件;

第三步,對描述源文件進(jìn)行語言解析,生成算法描述中間代碼;

第四步,依據(jù)用戶的目標(biāo)代碼需求,選擇計(jì)算機(jī)編程語言對應(yīng)的代碼底層庫,生成目標(biāo)代碼。

進(jìn)一步的,第一步中定義多要素訪問控制機(jī)制描述語言包括關(guān)鍵字定義、機(jī)制總體定義、變量定義、主體定義、客體定義和策略函數(shù)定義;

關(guān)鍵字定義包括def、var、subject、time、env、mls、object、lifecycle、crypt、permissions、operations、policies關(guān)鍵字,分別用于表示機(jī)制總體、變量、主體、主體時態(tài)、主體環(huán)境、多級安全級別、客體、客體生命周期、密碼參數(shù)、權(quán)限、操作類型以及策略授權(quán)函數(shù)定義;

機(jī)制總體定義以關(guān)鍵字\def為起始,以/def為終止,格式定義為“\def subject object policies/def”,描述說明主體subject在訪問客體object對應(yīng)的策略policy;

例如,描述主體s1對客體o1訪問的策略p1,定義形式為:

\def s1o1p1/def

變量定義以關(guān)鍵字\var為起始,以/var為終止,格式定義為“\var變量名稱變量內(nèi)容/var”,變量的內(nèi)容描述遵循規(guī)則(‘a(chǎn)’-‘z’|‘A’-‘Z’|‘0’-‘9’)+,即包含字母a-z的大小寫以及數(shù)字的任意組合;

例如:\var subject s1/var

主體定義以關(guān)鍵字\subject為起始,以/subject為終止,格式定義為“\subject主體ID,角色,time:時態(tài),env:環(huán)境,mls:多級安全屬性,操作類型,權(quán)限/subject”;

主體ID以變量var進(jìn)行定義;

角色的描述通過變量關(guān)鍵字進(jìn)行定義和描述;

時態(tài)定義以關(guān)鍵字time:為起始,格式定義為“time:(<timestate>)”或“time:(startfrom:<timestate>end at:<timestate>)”;<timestate>為時間點(diǎn)表示包含日期、小時、分鐘、秒,采用年-月-日:時:分:秒的格式;

例如:在時刻2017年11月1日上午7:00:00,描述為time:2017-11-1:7:00:00,時間的描述以24小時為周期。

環(huán)境定義以關(guān)鍵字env:為起始,包含物理位置、網(wǎng)絡(luò)地址、硬件信息和軟件信息的描述,其中物理位置、硬件信息和軟件信息采用變量var的格式描述形式,網(wǎng)絡(luò)地址采用標(biāo)準(zhǔn)的IPv4和IPv6格式;

硬件信息可以為MAC地址或者具體硬件環(huán)境的名稱,軟件可以包含操作系統(tǒng)、信息系統(tǒng)的名稱;例如:env:room1 192.168.0.1HP-PC-1003Linux2.4.16表示在room1中以192.168.0.1的IP地址,使用名稱為HP-PC-1003的計(jì)算機(jī),需要在Linux2.4.16的軟件環(huán)境下進(jìn)行訪問。

多級安全屬性定義以關(guān)鍵字“mls:”為起始,格式為“mls:安全等級信息”,安全等級信息為自然數(shù)的形式;

例如:mls:1,表示安全等級為1。

操作類型以關(guān)鍵字“operations:”為起始,格式“operations:操作”,其中操作描述為var的描述形式,分為“讀、寫、執(zhí)行”;

權(quán)限定義以關(guān)鍵字“permissions:為起始”,格式“permissions:權(quán)限描述”,其中權(quán)限描述為var的描述形式,通過“,”分開;

例如:permissions:p1,p2;表示權(quán)限p1,p2對應(yīng)策略描述中的策略ID。

客體定義以關(guān)鍵字\object為起始,以/object為終止,格式定義為:“\object客體ID,生命周期,多級安全屬性,密碼參數(shù)/object”;

客體ID以變量var進(jìn)行定義;

生命周期定義以關(guān)鍵字“l(fā)ifecycle:”起始,格式為“l(fā)ifecycle:生命周期階段ID(startfrom:<timestate>endat:<timestate>)”,其中<timestate>為時間點(diǎn)表示包含日期、小時、分鐘、秒,采用年-月-日:時:分:秒的格式。

多級安全屬性定義以關(guān)鍵字“mls:”為起始,格式為“mls:安全等級信息”,安全等級信息為自然數(shù)的形式;

密碼參數(shù)以關(guān)鍵字“crypt:”為起始,格式為“crypt:算法類型密鑰”,其中算法類型和密鑰為變量方式定義;

策略定義以關(guān)鍵字“\policies”為起始,“/policies”為截止,格式為“\policies策略描述1,策略描述2,策略描述3,…,策略描述N/policies”;

策略描述采用格式為“策略ID:具體描述”,策略ID采用變量形式定義,具體描述為授權(quán)、轉(zhuǎn)授權(quán)、撤銷。

例如:策略p1表示授權(quán)Grant,p2表示撤銷Revoke,表示為:

\policies p1,p2

p1:Grant

p2:Revoke

/policies

進(jìn)一步的,第二步中用戶根據(jù)訪問控制機(jī)制描述語言對其設(shè)計(jì)的訪問控制機(jī)制進(jìn)行描述,生成描述源文件的具體過程為:

首先,使用關(guān)鍵字def定義機(jī)制總體,描述該機(jī)制包含的主體、客體和策略的對應(yīng)關(guān)系;

其次,使用關(guān)鍵字var描述機(jī)制中包含的變量,涉及到主體ID、客體ID、主體操作類型、權(quán)限以及其他中間變量的描述和定義;

然后,以subject關(guān)鍵字和object關(guān)鍵字描述主體和客體及其對應(yīng)的訪問控制要素;主體的訪問控制要素包括角色、時態(tài)、環(huán)境和多級安全屬性,客體的訪問控制要素包括生命周期、多級安全屬性和密碼參數(shù);

最后,使用關(guān)鍵字policies進(jìn)行策略授權(quán)函數(shù)描述。

進(jìn)一步的,第三步對描述源文件進(jìn)行語言解析包含對描述文件中的多要素訪問控制機(jī)制描述語言進(jìn)行詞法分析、語法分析和語義解析。

進(jìn)一步的,第四步中代碼底層庫包含底層函數(shù)庫和密碼實(shí)現(xiàn)函數(shù)庫。

下面結(jié)合具體實(shí)施例對本發(fā)明作進(jìn)一步說明。

實(shí)施例

圖1描述了多要素訪問控制機(jī)制描述及解析的流程示意圖。本實(shí)施例的一種多要素訪問控制描述及解析方法,包括以下步驟:

第一步,定義多要素訪問控制機(jī)制描述語言,用于訪問控制機(jī)制設(shè)計(jì)用戶針對其訪問控制主客體、訪問控制策略進(jìn)行類數(shù)學(xué)語言的描述;

該訪問控制機(jī)制描述語言針對用戶的,不能為計(jì)算機(jī)直接識別和運(yùn)行,其描述的算法可以被解析成計(jì)算機(jī)可識別運(yùn)行的目標(biāo)代碼。

第二步,用戶根據(jù)訪問控制機(jī)制描述語言對其設(shè)計(jì)的訪問控制機(jī)制進(jìn)行描述,生成描述源文件,用戶進(jìn)行具體描述時,依據(jù)圖2所示流程。

此處描述主體s1對客體o1訪問控制策略,定義主體s1、客體o1、對應(yīng)策略p1;其中主體s1具有角色為teacher,安全級別1,在時間2017年1月11日,8:00:00開始到2017年1月12日,16:00:00,在教室IV,以網(wǎng)絡(luò)地址:192.168.0.12,使用HP-PC,軟件環(huán)境Win操作系統(tǒng),權(quán)限p1對應(yīng)讀的操作類型。客體o1安全級別1,處于生命周期創(chuàng)建期間creation,密碼算法為AES,密鑰1E2F3C67。策略p1授權(quán)結(jié)論為Grant(授權(quán))。進(jìn)一步來講,即主體s1以teacher角色、安全級別1,時間2017年1月11日,8:00:00開始到2017年1月12日,16:00:00,在教室IV,以網(wǎng)絡(luò)地址:192.168.0.12,使用HP-PC,軟件環(huán)境Win操作系統(tǒng)下可以對處于生命周期創(chuàng)建期間creation,密碼算法為AES,密鑰1E2F3C67的客體o1進(jìn)行讀操作。

上述實(shí)例的描述步驟:

1)描述機(jī)制總體定義,機(jī)制總體定義以關(guān)鍵字\def為起始,以/def為終止,格式定義為\def subject object policies/def,描述說明主體subject在訪問客體object對應(yīng)的策略policy。

2)定義機(jī)制相關(guān)變量,以關(guān)鍵字\var為起始,以/var為終止,格式定義為\var變量名稱變量內(nèi)容/var。

3)定義主體及其要素,以關(guān)鍵字\subject為起始,以/subject為終止,格式定義為:\subject主體ID,角色,time:時態(tài),env:環(huán)境,mls:多級安全屬性,操作類型,權(quán)限/subject。

具體步驟如圖3所示:

(1)描述主體ID

(2)描述主體角色

(3)描述時態(tài)屬性

(4)描述環(huán)境屬性

(5)描述多級安全屬性

(6)描述操作類型

(7)描述權(quán)限

上述描述遵循多要素訪問控制機(jī)制描述語言的具體描述規(guī)則。

4)客體定義以關(guān)鍵字\object為起始,以/object為終止,格式定義為:

\object客體ID,生命周期,多級安全屬性,密碼參數(shù)/object

具體步驟如圖4所示:

(1)描述客體ID

(2)描述生命周期

(3)描述多級安全屬性

(4)描述密碼參數(shù)

上述描述遵循多要素訪問控制機(jī)制描述語言的具體描述規(guī)則。

5)策略定義以關(guān)鍵字\policies為起始,/policies為終止。格式為\policies策略描述1,策略描述2,策略描述3,策略描述N/policies;

具體步驟圖5所示:

(1)描述策略ID

(2)描述策略

進(jìn)行上述描述后,用戶將產(chǎn)生算法類數(shù)學(xué)的描述文件,定義為AccessControl.des文件。文件內(nèi)容如下:

\def s1o1p1/def

\var

subject s1,

object o1,

policies p1

/var

\subject

s1,

teacher,

time:(startfrom:2017-1-11:8:00:00endat:2017-1-12:16:00:00),

env:roomIV 192.168.0.12HP-PC Win,

mls:1,

operations:read,

permissions:p1

/subject

\object

o1,

lifecycle:creation(startfrom:2017-1-11:7:00:00endat:2017-1-23:19:00:00),

mls:1,

crypt:AES 1E2F3C67

/object

\policiesp1

p1:Grant

/policies

上述機(jī)制描述語言中涉及的部分簡單的邏輯語句,如下:

if……then……(else)……表示條件判定,具體形式為“if條件描述then……”或者“if條件描述then……else……”,其中else語句為可選,then與else后分別對應(yīng)相關(guān)的執(zhí)行語句。條件的描述使用運(yùn)算符“==”和“!=”表示等于和不等于。

上述定義和描述僅限于本實(shí)施例,具體主客體要素、操作類型、授權(quán)描述可依據(jù)用戶的需求進(jìn)行擴(kuò)展。

第三步,對描述文件AccessControl.des進(jìn)行解析,產(chǎn)生中間代碼。如圖6所示,具體流程如下:

(1)對多要素訪問控制機(jī)制描述文件進(jìn)行詞法分析,主要工作包含:

1)預(yù)處理,去除無效的空格、制表符、換行這些無效字符;

2)識別關(guān)鍵字,為其指定相應(yīng)的屬性值,并將相應(yīng)的TOKEN碼,為語法分析程序準(zhǔn)備;

3)識別字符串、數(shù)字、字符這些常量,保存該數(shù),并將對應(yīng)的TOKEN碼,為語法分析程序準(zhǔn)備;

(2)對多要素訪問控制機(jī)制描述文件進(jìn)行語法分析,根據(jù)前述類數(shù)學(xué)描述語言的語法規(guī)則,把詞法分析的結(jié)果分解為各個語法單元,并語法錯誤的檢查與識別。

語法分析主要依托的是詞法分析中產(chǎn)生的TOKEN碼表,識別各類語法成分,分別包含關(guān)鍵字、變量、主體、客體、要素、策略函數(shù),并進(jìn)行關(guān)鍵字單詞撰寫錯誤、括號不匹配錯誤的識別。

(3)對多要素訪問控制機(jī)制描述文件進(jìn)行語義分析,進(jìn)行描述語言具體語義含義的識別和分析,并進(jìn)行靜態(tài)語義檢查,例如:指定變量是否定義、類型是否匹配、訪問控制主客體、要素描述以及策略授權(quán)函數(shù)是否沒描述完整、齊全,為代碼生成階段搜集相關(guān)的語義信息。

經(jīng)過語義分析將構(gòu)造如下表格信息:

1)全局變量、常量信息表;

2)策略授權(quán)函數(shù)信息表;

3)策略授權(quán)函數(shù)聲明信息表;

(4)產(chǎn)生中間代碼

此時生成的中間代碼已經(jīng)類似于用戶指定的計(jì)算機(jī)編程語言對應(yīng)的代碼,但是具體子函數(shù)的實(shí)施還未進(jìn)行處理。

第四步:依據(jù)用戶的目標(biāo)代碼需求,選擇對應(yīng)計(jì)算機(jī)編程語言對應(yīng)的代碼底層庫,生成目標(biāo)代碼。

該步驟依托于中間代碼中的子函數(shù)調(diào)用信息表,在現(xiàn)有的代理底層支持庫中進(jìn)行選擇,調(diào)用不同的子函數(shù)實(shí)現(xiàn)程序及相關(guān)代碼,并產(chǎn)生對應(yīng)的頭文件函數(shù)生成列表。

將第三步產(chǎn)生的中間代碼與第四步中產(chǎn)生的子函數(shù)代碼與頭文件信息進(jìn)行整合,生成輸出文件AccessControl.cpp和AccessControl.h文件,此處以C語言為例,若用戶選擇其他編程語言,則后綴名與文件格式會發(fā)生相應(yīng)的變化。

本發(fā)明中的描述語言及方法可以依據(jù)用戶的具體要求進(jìn)行描述追加,通過解析程序的更新最終實(shí)現(xiàn)描述與解析方法的用戶定制化和適應(yīng)化。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1