[發(fā)明專利]基于代碼生成和符號(hào)執(zhí)行的訪問控制策略測(cè)試自動(dòng)生成方法有效
| 申請(qǐng)?zhí)枺?/td> | 201310711611.2 | 申請(qǐng)日: | 2013-12-20 |
| 公開(公告)號(hào): | CN103645987A | 公開(公告)日: | 2014-03-19 |
| 發(fā)明(設(shè)計(jì))人: | 王林章;李永超;趙建華;李宣東;陳志 | 申請(qǐng)(專利權(quán))人: | 南京大學(xué) |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36 |
| 代理公司: | 南京瑞弘專利商標(biāo)事務(wù)所(普通合伙) 32249 | 代理人: | 楊曉玲 |
| 地址: | 210023 江蘇省南京市棲霞*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 代碼 生成 符號(hào) 執(zhí)行 訪問 控制 策略 測(cè)試 自動(dòng) 方法 | ||
1.一種基于代碼生成和符號(hào)執(zhí)行的訪問控制策略測(cè)試自動(dòng)生成方法,其特征在于該方法包含的步驟為:
步驟1:用戶指定受測(cè)試的XACML策略所在的文件,該文件采用XML格式存儲(chǔ);
步驟2:對(duì)受測(cè)試的XACML策略進(jìn)行數(shù)值化處理,得到屬性值-整型值映射表,步驟2具體過程如下
步驟21:初始化屬性值-整型值映射表;
步驟22:深度優(yōu)先遍歷XACML策略,對(duì)發(fā)現(xiàn)的新屬性值進(jìn)行整型化處理;
步驟23:將得到的每個(gè)屬性值對(duì)應(yīng)的屬性值-整型值對(duì)加入到屬性值-整型值映射表;得到受測(cè)試XACML的屬性值-整型值映射表;
步驟3:將受測(cè)試的XACML策略文件中所描述的訪問控制策略轉(zhuǎn)換為語義等價(jià)的C代碼表示形式,具體過程如下:
步驟31:深度優(yōu)先遍歷受測(cè)試的XACML策略;
步驟32:每遍歷到一個(gè)策略元素,若該元素為策略集,轉(zhuǎn)步驟33;若該元素為策略,轉(zhuǎn)步驟34;若該元素為規(guī)則,轉(zhuǎn)步驟36;
步驟33:查看當(dāng)前遍歷到的策略集對(duì)應(yīng)的策略組合算法;轉(zhuǎn)步驟35;
步驟34:查看當(dāng)前遍歷到的規(guī)則對(duì)應(yīng)的規(guī)則組合算法;
步驟35:根據(jù)組合算法,選擇組合算法對(duì)應(yīng)的代碼模式;轉(zhuǎn)步驟37;
所述的代碼模式包含8種,分別是:最先適用策略組合算法代碼模式、最先適用規(guī)則組合算法代碼模式、允許覆蓋策略組合算法代碼模式、允許覆蓋規(guī)則組合算法代碼模式、拒絕覆蓋策略組合算法代碼模式、拒絕覆蓋規(guī)則組合算法代碼模式、唯一適用策略組合算法代碼模式以及規(guī)則代碼模式;
步驟36:選擇規(guī)則代碼模式;
步驟37:解析該策略元素,填充代碼模式,得到該元素對(duì)應(yīng)的C語言代碼;
所述的元素對(duì)應(yīng)的C語言代碼具體形式為C函數(shù)定義,函數(shù)的參數(shù)個(gè)數(shù)為4個(gè),類型皆為整型,函數(shù)返回值為整型,返回值域?yàn)閧-1,0,1},-1表示不適用,0表示允許,1表示拒絕;
所述填充代碼模式的方法是,找出目標(biāo)中出現(xiàn)的屬性值,查找屬性值-整型值映射表得到屬性值對(duì)應(yīng)的整型值,填充到代碼模式中的條件語句中,查找規(guī)則所定義的效果,填充函數(shù)的返回值;
步驟38:當(dāng)遍歷結(jié)束,構(gòu)造主函數(shù);
步驟39:得到受測(cè)試的XACML策略對(duì)應(yīng)的C代碼表示形式;
步驟4:通過符號(hào)執(zhí)行工具,即采用開源工具KLEE生成C代碼的測(cè)試輸入;
步驟41:自動(dòng)對(duì)C代碼進(jìn)行編譯,采用的編譯環(huán)境為L(zhǎng)LVM,生成LLVM字節(jié)碼文件;
步驟42:自動(dòng)啟動(dòng)KLEE,將步驟41生成的字節(jié)碼文件作為KLEE的輸入進(jìn)行符號(hào)執(zhí)行;
步驟43:KLEE輸出,得到C代碼的測(cè)試輸入;
步驟5:將步驟43生成的C代碼的測(cè)試輸入翻譯為XACML請(qǐng)求;
步驟51:自動(dòng)生成shell腳本,將KLEE的多個(gè)輸出文件整合到一個(gè)文件中;
步驟52:對(duì)KLEE產(chǎn)生的每一個(gè)C代碼輸入,將輸入即整型值代入屬性值-整型值映射表查詢,得到一組屬性值;
步驟53:將得到的每組屬性值填充到XACML請(qǐng)求的相應(yīng)位置;
步驟54:直到所有輸入都被翻譯完,得到受測(cè)試的XACML策略的一組請(qǐng)求;
步驟6:以生成的XACML請(qǐng)求作為策略評(píng)估器的輸入,發(fā)送到XACML策略進(jìn)行評(píng)估,得到授權(quán)結(jié)果。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南京大學(xué),未經(jīng)南京大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310711611.2/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種奶粉罐裝箱碼垛裝置
- 下一篇:一種刀片快拆支架結(jié)構(gòu)
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 遙控器代碼格式結(jié)構(gòu)及其收發(fā)信方法及裝置
- 在虛擬機(jī)中驗(yàn)證代碼模塊的方法及裝置
- 一種用于代碼的管理方法及裝置
- 虛擬代碼提供系統(tǒng)、生成裝置、驗(yàn)證裝置、提供方法
- 一種自動(dòng)化代碼質(zhì)量檢查方法及系統(tǒng)
- 代碼掃描方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 用于更新代碼的方法和裝置
- 前端代碼打包方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種代碼審查服務(wù)同步方法、裝置及計(jì)算機(jī)設(shè)備
- 一種高效智能源代碼安全管理平臺(tái)
- 碼轉(zhuǎn)換裝置、接收機(jī)以及碼轉(zhuǎn)換方法
- TrueType符號(hào)與基于路徑的點(diǎn)狀地圖符號(hào)交換方法
- 一種生成嵌入式程序運(yùn)行符號(hào)表的方法和裝置
- 控制車內(nèi)后視鏡的按鈕符號(hào)的方法
- 一種基于矢量符號(hào)描述語言的電子海圖擴(kuò)展符號(hào)構(gòu)建系統(tǒng)
- 一種用于無線光通信的方法及通信裝置
- 計(jì)算機(jī)圖形符號(hào)化表達(dá)方法、電子設(shè)備、存儲(chǔ)介質(zhì)
- 一種圖像識(shí)別的方法和裝置
- 標(biāo)點(diǎn)符號(hào)的校正方法及設(shè)備、介質(zhì)
- 一種被用于無線通信的節(jié)點(diǎn)中的方法和裝置





