【Datagear】如何給Datagear追加Admin
背景】
Datagear默認(rèn)是只設(shè)置了一個Admin,這個Admin可以完成用戶的各種管理操作,并且對所有數(shù)據(jù)源,數(shù)據(jù)集,圖表,面板擁有全部編輯權(quán)限。
【問題】
只有一個Admin很多場景下不夠用。但是應(yīng)用設(shè)置本身沒有提供追加Admin用戶的入口,也沒有直接可賦予的Admin角色。
【思路】
直接修改Datagear內(nèi)置的derby數(shù)據(jù)庫。
【操作】
首先找工具,所有數(shù)據(jù)庫表可視化工具中,發(fā)現(xiàn)能連derby內(nèi)嵌數(shù)據(jù)庫的只有dbeaver。
這是一個開源工具,直接官網(wǎng)下載:
https://dbeaver.io/download/
下載后解壓有個Exe,雙擊后出現(xiàn)圖形界面,點(diǎn)擊新建連接,種類選擇全部,然后找到derby embeded種類。

點(diǎn)擊下一步,開始DB設(shè)置。由于是內(nèi)嵌,只需要選中datagear在c盤user名錄下.datagear文件夾下的derby文件夾,用戶名和密碼都填寫默認(rèn)admin即可。

完成設(shè)置后展開derby,可能會自動讓你下載需要的驅(qū)動,點(diǎn)擊下載即可。如果無法下載,那就是網(wǎng)絡(luò)問題,想辦法疏通下網(wǎng)絡(luò),下載結(jié)束后,展開derby數(shù)據(jù)庫,這時(shí)候已經(jīng)可以看到內(nèi)容。

展開APP,雙擊User表,會出現(xiàn)User表的具體內(nèi)容,點(diǎn)擊數(shù)據(jù),找到想變?yōu)锳dmin的ID,將是否Admin一欄設(shè)置為True即可。

【追加】
有時(shí)候datagear在內(nèi)網(wǎng),沒有上網(wǎng)條件搞工具。沒關(guān)系,只需要將derby文件夾拷貝到外網(wǎng)機(jī)器,修改后復(fù)制回去即可。本質(zhì)上就是套文件。
【追加2】
Admin權(quán)限已重新在生產(chǎn)環(huán)境賦予,請自行登錄驗(yàn)證一下。
這次發(fā)現(xiàn),由于是我繞過系統(tǒng)本身設(shè)計(jì)的范疇,通過修改內(nèi)嵌數(shù)據(jù)庫給你們賦予的管理權(quán)限,所以特別賦權(quán)的管理員在自行修改密碼后會導(dǎo)致原有管理權(quán)限消失。
由于是繞過系統(tǒng)進(jìn)行的賦權(quán),所以操作比較繁瑣,還涉及換版才能夠生效(需要暫停服務(wù)),根據(jù)這次的經(jīng)驗(yàn),作為特別賦權(quán)的管理員今后請不要對密碼進(jìn)行改動。實(shí)在需要修改,就需要通知我重新再操作(今天前后操作大概需要一個小時(shí))。