資源訪問控制方法及設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明實(shí)施例設(shè)及訪問控制技術(shù),尤其設(shè)及一種資源訪問控制方法及設(shè)備。
【背景技術(shù)】
[0002] 訪問控制是計(jì)算機(jī)保護(hù)中極其重要的一環(huán),它是在身份識(shí)別的基礎(chǔ)上,根據(jù)訪問 發(fā)起者的身份對(duì)提出的資源訪問請求加W控制。
[0003] 在訪問控制中,需要進(jìn)行訪問控制的各種資源稱為客體,如文件、端口等;訪問發(fā) 起者稱為主體,如進(jìn)程、用戶等。并且,訪問控制規(guī)則定義了主體與客體間可能的相互作用 途徑?,F(xiàn)有技術(shù)中,一種常見的訪問控制方案為強(qiáng)制訪問控制(MAC,MandatoryAccess Con化OI)。在MAC中每一個(gè)客體(例如,文件)和主體(例如,用戶)都被賦予了 一定的安全級(jí) 另IJ,系統(tǒng)通過比較主體與客體的安全級(jí)別來界定主體是否可W訪問該客體。例如,若系統(tǒng)的 訪問控制規(guī)則為下讀(readdown)和上寫(writeup),則表示用戶的安全級(jí)別大于文件的 安全級(jí)別時(shí),用戶可W對(duì)文件進(jìn)行讀操作,當(dāng)用戶的安全級(jí)別小于文件的安全級(jí)別時(shí),用戶 可W對(duì)文件進(jìn)行寫操作。
[0004] 但是,現(xiàn)有技術(shù)中,存在MAC控制過于簡單,無法實(shí)現(xiàn)基于主體和客體的分組進(jìn)行 訪問控制的問題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提供一種資源訪問控制方法及設(shè)備,用W解決現(xiàn)有技術(shù)中MAC控制過于簡 單,無法實(shí)現(xiàn)基于主體和客體的分組進(jìn)行訪問控制的問題。
[0006] 第一方面,本發(fā)明實(shí)施例提供一種資源訪問控制方法,所述方法的執(zhí)行主體為計(jì) 算機(jī)或通信設(shè)備,所述方法包括:
[0007] 獲取主體對(duì)客體的訪問請求;
[0008] 根據(jù)所述訪問請求,確定所述主體的名稱、所述客體的名稱W及所述主體對(duì)所述 客體的訪問類型;
[0009] 根據(jù)所述主體的名稱確定所述主體所屬的域,并根據(jù)所述客體的名稱確定所述客 體所屬的組;
[0010] 根據(jù)所述主體所屬的域和所述客體所屬的組,確定所述主體所屬的域?qū)λ隹腕w 所屬的組的第一可執(zhí)行訪問類型;
[0011] 根據(jù)所述訪問類型及所述第一可執(zhí)行訪問類型,確定是否允許所述主體對(duì)所述客 體執(zhí)行所述訪問類型。
[0012] 結(jié)合第一方面,在第一方面的第一種可能實(shí)現(xiàn)的方式中,所述根據(jù)所述主體所屬 的域和所述客體所屬的組,確定所述主體所屬的域?qū)λ隹腕w所屬的組的第一可執(zhí)行訪問 類型之前,還包括:
[0013] 獲取用戶輸入的設(shè)置信息,所述設(shè)置信息包括所述主體所屬的域、所述客體所屬 的組及所述第一可執(zhí)行訪問類型;
[0014] 根據(jù)所述設(shè)置信息,將所述主體所屬的域?qū)λ隹腕w所屬的組的可執(zhí)行訪問類型 設(shè)置為所述第一可執(zhí)行訪問類型。
[0015] 本實(shí)施例中,通過設(shè)置信息,設(shè)置主體所屬的域?qū)腕w所屬的組的可執(zhí)行訪問類 型;使得可W設(shè)置根據(jù)主體所屬的域和客體所屬的組來進(jìn)行訪問控制時(shí),具體的控制策略。
[0016] 結(jié)合第一方面的第一種可能實(shí)現(xiàn)的方式,在第一方面的第二種可能實(shí)現(xiàn)的方式 中,所述根據(jù)所述主體所屬的域和所述客體所屬的組,確定所述主體所屬的域?qū)λ隹腕w 所屬的組的第一可執(zhí)行訪問類型,包括:
[0017] 根據(jù)所述主體所屬的域、所述客體所屬的組查找訪問控制表,確定所述訪問控制 表的第一表項(xiàng),并根據(jù)所述第一表項(xiàng)確定所述第一可執(zhí)行訪問類型;所述第一表項(xiàng)包括所 述客體所屬的組、所述主體所屬的域和所述第一可執(zhí)行訪問類型;
[0018] 相應(yīng)的,所述根據(jù)所述設(shè)置信息,將所述主體所屬的域?qū)λ隹腕w所屬的組的可 執(zhí)行訪問類型設(shè)置為第一可執(zhí)行訪問類型,包括:
[0019] 根據(jù)所述設(shè)置信息,生成所述第一表項(xiàng),并將所述第一表項(xiàng)添加至所述訪問控制 表。
[0020] 本實(shí)施例中,提供了通過查找訪問控制表來確定所述主體所屬的域?qū)λ隹腕w所 述的組的可執(zhí)行訪問類型的方式。
[0021] 結(jié)合第一方面的第二種可能實(shí)現(xiàn)的方式,在第一方面的第=種可能實(shí)現(xiàn)的方式 中,所述第一表項(xiàng)中的各信息為數(shù)值型的信息;所述根據(jù)所述主體所屬的域、所述客體所屬 的組查找訪問控制表,確定所述訪問控制表的第一表項(xiàng),包括:
[0022] 將所述主體所屬的域及所述客體所屬的組轉(zhuǎn)換為數(shù)值型的信息;
[0023] 根據(jù)數(shù)值型的所述主體所屬的域及所述客體所屬的組,查找所述訪問控制表,確 定所述第一表項(xiàng)。
[0024] 本實(shí)施例中,由于數(shù)值的比較效率要遠(yuǎn)遠(yuǎn)高于字符串,且所占空間也要更少;因 此,通過將訪問控制表的表項(xiàng)中的信息轉(zhuǎn)換為數(shù)值型的信息,可W提高查找訪問控制表的 效率表的效率,減小存儲(chǔ)訪問控制表所占的存儲(chǔ)空間。
[0025] 結(jié)合第一方面或第一方面的第一種至第=種任一種可能實(shí)現(xiàn)的方式,在第一方面 的第四種可能實(shí)現(xiàn)的方式中,所述根據(jù)所述主體的名稱確定所述主體所屬的域,根據(jù)所述 客體的名稱確定所述客體所屬的組之前,還包括:
[0026] 根據(jù)所述主體的名稱和所述客體的名稱,確定所述主體的名稱對(duì)所述客體的名稱 的第二可執(zhí)行訪問類型;
[0027] 根據(jù)所述訪問類型及所述第二可執(zhí)行訪問類型,確定不允許所述主體對(duì)所述客體 執(zhí)行所述訪問類型。
[0028] 本實(shí)施例中,通過首先根據(jù)所述主體的名稱和所述客體的名稱,確定所述主體的 名稱對(duì)所述客體的名稱的第二可執(zhí)行訪問類型;當(dāng)根據(jù)所述第二可執(zhí)行訪問類型,確定不 允許所述主體對(duì)所述客體執(zhí)行所述訪問類型時(shí),再根據(jù)所述主體所屬的域和所述客體所屬 的組,確定所述主體所屬的域?qū)λ隹腕w所屬的組的第一可執(zhí)行訪問類型;實(shí)現(xiàn)了在根據(jù) 組及域進(jìn)行訪問權(quán)限判斷的基礎(chǔ)上,優(yōu)先根據(jù)客體的名稱來進(jìn)行訪問權(quán)限的判斷;提高了 對(duì)于可W直接通過名稱進(jìn)行訪問權(quán)限判斷的效率。
[0029] 結(jié)合第一方面或第一方面的第一種至第四種任一種可能實(shí)現(xiàn)的方式,在第一方面 的第五種可能實(shí)現(xiàn)的方式中,所述獲取主體對(duì)客體的訪問請求之后,還包括:
[0030]根據(jù)所述訪問請求,確定所述客體的類別;
[0031] 相應(yīng)的,所述根據(jù)所述主體所屬的域和所述客體所屬的組,確定所述主體所屬的 域?qū)λ隹腕w所屬的組的第一可執(zhí)行訪問類型,包括:
[0032]根據(jù)所述主體所屬的域、所述客體所屬的組及所述客體的類別,確定所述主體所 屬的域?qū)λ隹腕w所屬的組的所述第一可執(zhí)行訪問類型。
[0033]本實(shí)施例中,通過根據(jù)所述主體所屬的域、所述客體所屬的組及所述客體的類別, 確定所述主體所屬的域?qū)λ隹腕w所屬的組的所述第一可執(zhí)行訪問類型;可W實(shí)現(xiàn)基于客 體的類別來區(qū)分不同類別的客體的可執(zhí)行訪問類型。
[0034]第二方面,本發(fā)明實(shí)施例提供一種設(shè)備,所述設(shè)備為計(jì)算機(jī)或通信設(shè)備,所述設(shè)備 包括:
[0035]獲取模塊,用于獲取主體對(duì)客體的訪問請求;
[0036]確定模塊,用于根據(jù)所述訪問請求,確定所述主體的名稱、所述客體的名稱W及所 述主體對(duì)所述客體的訪問類型;根據(jù)所述主體的名稱確定所述主體所屬的域,并根據(jù)所述 客體的名稱確定所述客體所屬的組;根據(jù)所述主體所屬的域和所述客體所屬的組,確定所 述主體所屬的域?qū)λ隹腕w所屬的組的第一可執(zhí)行訪問類型;
[0037]判斷模塊,用于根據(jù)所述訪問類型及所述第一可執(zhí)行訪問類型,確定是否允許所 述主體對(duì)所述客體執(zhí)行所述訪問類型。
[0038]結(jié)合第二方面,在第二方面的第一種可能實(shí)現(xiàn)的方式中,所述獲取模塊,還用于獲 取用戶輸入的設(shè)置信息,所述設(shè)置信息包括所述主體所屬的域、所述客體所屬的組及所述 第一可執(zhí)行訪問類型;
[0039]所述設(shè)備,還包括:設(shè)置模塊,用于根據(jù)所述設(shè)置信息,將所述主體所屬的域?qū)λ?述客體所屬的組的可執(zhí)行訪問類型設(shè)置為所述第一可執(zhí)行訪問類型。
[0040]結(jié)合第二方面的第一種可能實(shí)現(xiàn)的方式,在第二方面的第二種可能實(shí)現(xiàn)的方式 中,所述確定模塊根據(jù)所述主體所屬的域和所述客體所屬的組,確定所述主體所屬的域?qū)?所述客體所屬的組的第一可執(zhí)行訪問類型,具體包括:
[0041] 根據(jù)所述