无码人妻丰满熟妇奶水区码,成年高潮网址,观看免费干B,欧美日韩深喉

低代碼平臺(tái)如何做數(shù)據(jù)范圍權(quán)限控制——關(guān)系數(shù)據(jù)庫(kù)(低代碼 數(shù)據(jù)庫(kù)設(shè)計(jì))

幾乎每一個(gè)軟件系統(tǒng)都涉及到權(quán)限設(shè)計(jì),權(quán)限控制又分為功能權(quán)限控制和數(shù)據(jù)范圍權(quán)限控制。toC的軟件權(quán)限控制一般都是根據(jù)用戶畫像(特征數(shù)據(jù))來控制的,即使有部分可以配置也相對(duì)比較簡(jiǎn)單。toB的系統(tǒng)一般都需要靈活的配置,功能權(quán)限配置也有RBAC(Role-Based Access Control)這樣的標(biāo)準(zhǔn),數(shù)據(jù)范圍權(quán)限控制就沒有這樣的標(biāo)準(zhǔn)的解決方案了。

常見的數(shù)據(jù)范圍權(quán)限控制方案

常見的一種數(shù)據(jù)范圍權(quán)限控制方案是將業(yè)務(wù)按照歸屬人員和歸屬部門來劃分,在配置時(shí)可有以下選項(xiàng):

  • 我的業(yè)務(wù);
  • 部門的業(yè)務(wù);
  • 下級(jí)部門的業(yè)務(wù)。

這樣的設(shè)計(jì)一般也能夠滿足大部分業(yè)務(wù)的需求,但是它有以下幾個(gè)明顯的缺點(diǎn):

  • 不是非常靈活,只能根據(jù)業(yè)務(wù)的歸屬來進(jìn)行范圍劃分;
  • 數(shù)據(jù)必須內(nèi)置歸屬人員和歸屬部門字段,有的系統(tǒng)還約定了字段名稱。

基于條件表達(dá)式的數(shù)據(jù)范圍設(shè)置

條件表達(dá)式類似與sql語(yǔ)句條件表達(dá)式,在數(shù)據(jù)查詢時(shí)植入到查詢語(yǔ)句中,在修改時(shí)對(duì)數(shù)據(jù)對(duì)象進(jìn)行驗(yàn)證。

低代碼平臺(tái)如何做數(shù)據(jù)范圍權(quán)限控制——關(guān)系數(shù)據(jù)庫(kù)(低代碼 數(shù)據(jù)庫(kù)設(shè)計(jì))

數(shù)據(jù)范圍權(quán)限條件表達(dá)式設(shè)置

條件表達(dá)式的形式是一個(gè)邏輯表達(dá)式,其中方括號(hào)中的是 [表名.字段名],花括號(hào)中的是 { 環(huán)境變量或?qū)傩? ':' 在SQL語(yǔ)句中的變量名},這個(gè)SQL語(yǔ)句中的變量名是可選的,它的作用是個(gè)前面環(huán)境變量和屬性重命名,避免命名SQL語(yǔ)句不合法。

低代碼平臺(tái)如何做數(shù)據(jù)范圍權(quán)限控制——關(guān)系數(shù)據(jù)庫(kù)(低代碼 數(shù)據(jù)庫(kù)設(shè)計(jì))

配置不同角色的 數(shù)據(jù)權(quán)限范圍

接口的權(quán)限遵循RBAC規(guī)范,將接口和角色關(guān)聯(lián),系統(tǒng)在關(guān)聯(lián)角色時(shí)同時(shí)配置數(shù)據(jù)范圍表達(dá)式,實(shí)現(xiàn)范圍的權(quán)限控制。

條件表達(dá)式數(shù)據(jù)范圍控制的實(shí)現(xiàn)方式

訪問關(guān)系數(shù)據(jù)庫(kù)有兩種方式,一種通過ORM接口訪問數(shù)據(jù)庫(kù)中的表,另一種是直接用SQL語(yǔ)句訪問數(shù)據(jù)庫(kù)。這兩種方式有不同的控制方式:

一、ORM接口訪問

需要對(duì)ORM接口進(jìn)行擴(kuò)展或者自己設(shè)計(jì)一套ORM方案,南大先騰做了MyBatisHibernate的對(duì)應(yīng)功能的拓展 https://github.com/ndxt/centit-persistence/tree/before-delete-hibernate-mybatis ,因?yàn)楹髞砉救垦邪l(fā)都轉(zhuǎn)移到自研的ORM,這個(gè)擴(kuò)展也不再更新了,各位有興趣可以獲取。

在ORM接口訪問數(shù)據(jù)庫(kù)時(shí)對(duì)上面的表達(dá)式進(jìn)行轉(zhuǎn)換,主要是轉(zhuǎn)換花括號(hào){}中的環(huán)境變量。

二、SQL語(yǔ)句訪問

SQL語(yǔ)句訪問時(shí)也要對(duì)語(yǔ)句進(jìn)行拓展,在SQL語(yǔ)句中添加錨點(diǎn),形式如下:

select * from bussiness_chance a where 1=1 { bussiness_chance a } order by a.create_time

其中 { bussiness_chance a } 為錨點(diǎn),形式為 { 表名 別名, 表名 別名,……..} 別名是可選的,一個(gè)錨點(diǎn)可以有多個(gè)表。SQL語(yǔ)句再執(zhí)行前需要進(jìn)行預(yù)處理,系統(tǒng)根據(jù)當(dāng)前用戶的角色查找他用于的角色在當(dāng)前接口中的所有數(shù)據(jù)范圍權(quán)限表達(dá)式,如果有多個(gè)表達(dá)式則用or連接成符合比表達(dá)式,并替換到SQL語(yǔ)句的錨點(diǎn)中。比如上面的示例替換的結(jié)果為:

select * from bussiness_chance a where 1=1 and a.follow_user = :currUserCode order by a.create_time

同時(shí)在參數(shù)變量表中添加一個(gè)currUserCode的變量,對(duì)應(yīng)的值為 當(dāng)前用戶環(huán)境變量中的currentUser.userCode值。

總結(jié)

通過條件表達(dá)式的方式來控制數(shù)據(jù)范圍權(quán)限理論上可以對(duì)任何字段進(jìn)行過濾控制,可以在系統(tǒng)上線后同個(gè)配置的方式進(jìn)行靈活配置。但是也有一些缺點(diǎn):一、只能用于關(guān)系數(shù)據(jù)庫(kù)并且需要拓展ORM模塊或者自研ORM模塊,二、SQL語(yǔ)句需要添加數(shù)據(jù)范圍權(quán)限的控制錨點(diǎn),雖然不麻煩也不復(fù)雜但是不能忘掉。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。

(0)
上一篇 2024年1月11日 上午10:33
下一篇 2024年1月11日 上午10:49

相關(guān)推薦

  • 科研項(xiàng)目申報(bào)歸哪個(gè)部門

    科研項(xiàng)目申報(bào)歸哪個(gè)部門 科研項(xiàng)目申報(bào)是推動(dòng)科技創(chuàng)新的重要力量。在申報(bào)過程中,不同部門有不同的職責(zé)和權(quán)限,如何合理規(guī)劃和管理科研項(xiàng)目,成為了科技創(chuàng)新的關(guān)鍵。本文將探討科研項(xiàng)目申報(bào)歸哪…

    科研百科 2025年4月17日
    2
  • 如何搭建團(tuán)隊(duì)協(xié)作流程?基礎(chǔ)招式詳解(如何實(shí)現(xiàn)團(tuán)隊(duì)協(xié)作)

    協(xié)作是一項(xiàng)很復(fù)雜的工作,對(duì)于一個(gè)項(xiàng)目而言,很多項(xiàng)目成員在工作的過程中都會(huì)遇到需求不清、思維混亂、工作效率低下的情況,尤其是對(duì)于運(yùn)營(yíng)而言,方案在經(jīng)過檢驗(yàn)后運(yùn)營(yíng)效果不理想的問題尤為嚴(yán)重…

    2022年7月14日
    521
  • 嵌入式開發(fā)(嵌入式開發(fā)要學(xué)哪些課程)

    嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進(jìn)行開發(fā),一般常用的系統(tǒng)有WinCE、ucos、vxworks、linux、android等。另外,用c,c 或匯編開發(fā);用高級(jí)處理器,arm7,…

    科研百科 2023年5月18日
    266
  • 知識(shí)管理系統(tǒng)項(xiàng)目啟示

    知識(shí)管理系統(tǒng)項(xiàng)目啟示 隨著企業(yè)的不斷發(fā)展和壯大,知識(shí)管理已經(jīng)成為企業(yè)必不可少的一部分。知識(shí)管理系統(tǒng)可以幫助企業(yè)更好地組織和管理知識(shí),提高員工的工作效率,增強(qiáng)企業(yè)的創(chuàng)新能力和競(jìng)爭(zhēng)力。…

    科研百科 2025年6月20日
    0
  • 項(xiàng)目管理信息系統(tǒng)開發(fā)

    項(xiàng)目管理信息系統(tǒng)開發(fā) 隨著信息技術(shù)的不斷發(fā)展,項(xiàng)目管理信息系統(tǒng)(Project Management Information System,PMIS)也逐漸成為了項(xiàng)目管理中不可或缺…

    科研百科 2025年1月29日
    2
  • 信息系統(tǒng)項(xiàng)目管理公式

    信息系統(tǒng)項(xiàng)目管理公式 信息系統(tǒng)項(xiàng)目管理是項(xiàng)目管理中的一個(gè)重要組成部分,其目標(biāo)是通過合理的組織和管理信息系統(tǒng)項(xiàng)目,實(shí)現(xiàn)項(xiàng)目的預(yù)期成果和效益。在信息系統(tǒng)項(xiàng)目管理中,常用的公式包括信息系…

    科研百科 2025年1月15日
    3
  • 以黨員示范崗為抓手

    黨員示范崗為抓手,推動(dòng)全面從嚴(yán)治黨向縱深發(fā)展 自全面從嚴(yán)治黨以來,我們黨一直把全面從嚴(yán)治黨作為各項(xiàng)工作的核心任務(wù)來抓。其中,黨員示范崗為抓手為抓手,是推進(jìn)全面從嚴(yán)治黨的重要措施之一…

    科研百科 2024年11月12日
    6
  • 經(jīng)常性科研項(xiàng)目申報(bào)書范文

    經(jīng)常性科研項(xiàng)目申報(bào)書范文 尊敬的評(píng)審專家: 我謹(jǐn)代表申報(bào)單位,向您們提交本次經(jīng)常性科研項(xiàng)目申報(bào)書。本申報(bào)書旨在申請(qǐng)貴單位批準(zhǔn)為科研項(xiàng)目,并希望獲得貴單位的資助。 一、項(xiàng)目概述 本次…

    科研百科 2024年8月12日
    5
  • 進(jìn)度流程軟件

    進(jìn)度流程軟件簡(jiǎn)介 進(jìn)度流程軟件是一種功能強(qiáng)大的軟件,用于幫助人們管理時(shí)間和任務(wù)。它可以自動(dòng)生成進(jìn)度表,并為用戶提供實(shí)時(shí)的反饋,幫助用戶更好地了解他們的工作和任務(wù)。 使用進(jìn)度流程軟件…

    科研百科 2025年1月12日
    5
  • 醫(yī)藥行業(yè)科研項(xiàng)目分類

    醫(yī)藥行業(yè)科研項(xiàng)目分類 隨著醫(yī)藥科技的不斷發(fā)展,醫(yī)藥行業(yè)的科研項(xiàng)目也進(jìn)行分類。這些項(xiàng)目涉及各種不同的領(lǐng)域,包括藥物研發(fā)、臨床試驗(yàn)、醫(yī)療器械、生物技術(shù)等等。下面,我們將對(duì)醫(yī)藥行業(yè)的科研…

    科研百科 2025年5月4日
    7
日本不卡V 二区| 日韩无码成人巨乳| 丝袜少妇伦理电影在线观看| 亚洲论理视屏| 国产欧美日韩久久伊人| 非洲一级片日韩| 色诱AV电影| 毛片免费一区二区| 91成人视频卡一区二区三区| 久久好看的国产三级片| 漂亮裸体美女张开双腿让男人捅| 日韩一区二区午夜乱码| 无码精品一区二区三区蜜臀| 精品区二区区9999| 欧美综合图片久久久| 欧美久久成人整片| 国产欧美久久1区2区3区| 欧美大黄片雄久久| 久久日αV| 南京人妻少妇AV| 不卡高清av在线观看| AA热久久| 国产在线高清操| 欧美亚洲Aaaaaa| 亚洲 国产 欧美 日韩| 黄色美女视频网站| 日本高清不卡一区二区爱片| 亚洲地址一地址二地址三| 看美女啪啪啪啪啪啪啪一区二区三区| 欧美日本一区二区三区| 久久机热国产| 亚洲懂色性AV| 婷婷久久久久久电影| 一区二区三区四区乱| 看美女操大BB| 日韩成人MV| 亚洲永久无码精品一区二区| 成人爱导航AV在线| 综合网啪啪啪| 性日本一区二区| 青青操在线资源|