A. 詳解Yearning sql審核平台許可權規劃--基於用戶的細粒度許可權
Yearning的許可權規范還是挺有特點的,這里簡單記錄一下,僅供參考。
Yearning採用基於用戶的細粒度許可權/角色許可權,許可權最低下放至數據源。
Yearning中神孫喚用戶先以角色的形式分為三大類,分別為 使用者/管理員/執行人。其中管理員/執行人角色為可見管理頁面角色, 使用者為非可見管理頁面角色。通過角色Yearning在細粒度許可權劃分之前先將用戶分類。使管理類許可權不會出現在使用者細粒度許可權劃分中
可根據每個用戶的實際需求配置相應ddl/dml/查詢數據源。每一類許可權相互獨立互不幹擾。
基於用戶的拼圖式許可權可最大化保證細粒度許可權的多樣化,可實現對每一個用戶都設置不同許可權的目的。
用戶界面如下:
資料庫界面如下:
這里其實就是把用戶跟資料庫,用戶跟具體許可權,用戶和上級審核人做一個綁凱知定關系。
許可權界面如下:
4.1、基於用戶自主申請
在Yearning中用戶可通過 首頁個人信息欄-查看許可權按鈕 查看當前許可權並可通過 申請許可權按鈕 提交許可權申請。
該許可權申請將會以工單的形式發送給超級管理員進行審批。(超級管理員為admin用戶)如開啟消息推送,該工單將會進行相應推送。
當超級管理員收到申請之後,可對相應許可權工單進行 審閱/修改 。由於用戶申請的許可權可能並非實際應授予的許可權。所以超級管理員可對許可權工單進行直接修改,新增/刪除相應權游凱限。修改確認無誤後點擊同意,該用戶許可權將自動更新。
4.1.1、許可權申請
4.1.2、管理員審核
4.1.3、同意或駁回
注意:
為了防止用戶過度提交許可權申請。Yearning強制規定用戶只有在之前的許可權申請通過/駁回之後才能提交新的許可權申請。
許可權工單為 覆蓋更新 並非增量更新,用戶提交時因把 之前的許可權與申請的許可權 一起提交
同時超級管理員也可在 設置頁面 設置每個用戶單日最大許可權申請數。 設置後每個用戶一天之內申請許可權次數不得超過設置的閾值
4.2 超級管理員直接修改
在Yearning中超級管理員可自行對任意用戶的許可權進行修改,如需修改 ,可以在用戶許可權頁面進行相應設置
4.2.1、單個用戶授權
4.2.2、普通用戶批量授權
4.2.3、清空許可權
後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~
B. 上有哪些好的SQL資料庫開發工具
1:首選工具pl/sql developer
PL/SQL Developer是一種集成的開發環境,專門用於開發、測試、調試和優化Oracle PL/SQL存儲程序單元,比如觸發器等。PL/SQL Developer功能十分全面,大大縮短了程序員的開發周期
2:Oracle SQL Developer是一個免費的,並完全支持圖形資料庫開發工具。使用SQL Developer,您可以瀏覽資料庫對象,運行SQL語句和SQL腳本,編輯和調試PL / SQL語句。您還可以運行任何報告的數量,以及創建和保存您自己的的。SQL Developer可以提高工作效率並簡化資料庫開發任務。
C. 詳解Yearning SQL審核平台功能模塊設計
Yearning SQL審核平台目前兼容99%的Mysql 標准SQL語法。
已知不支持的語句類型有:
下面對其中的功能模塊做一下介紹,以下基於Yearning 2.0版本。
1、dashboard
dashboard主要展示Yearning各項數據包括用戶數/數據源數/工單數/查詢數以及其他圖表,個人信息欄內用戶可以修改密碼/郵箱/真實姓名,同時可以查看該用戶許可權以及申請許可權。
2、我的工單
展示用戶提交的工單信息,對於執行失敗/駁回的工單點擊詳細信息後可以重新修改sql並提交,對於執行成功的工單可以查看回滾語句並且快速提交SQL
3、工單-DDL
具有以下功能:
1)DDL相關SQL提交審核
2)查看錶結構/索引
3)SQL語法高亮/自動補全
如果想獲取表結構詳細信息,必須選填表名並完整填寫工單信息。所有的SQL只有在檢測後錯誤等級為0時提交按鈕才會激活,如下拉列表框內沒有相關數據源顯示請聯系管理員是否賦予相應數據源許可權
4、工單--DML
具備以下功能:
1)DML相關SQL提交審核
2)SQL語法高亮/自動補全
所有的SQL只有在檢測後錯誤等級為0時提交按鈕才會激活,如下拉列表框內沒有相關數據源顯示請聯系管理員是否賦予相應數據源許可權
5、查詢
具備以下功能:
1)查詢/導出數據
2)SQL語法高亮/自動補全
3)快速DML語句提交
如果開啟查詢審核,提交該查詢申請後需對應審核人同意後方可查詢,超級管理員在設置頁面開啟數據導出功能後,查詢申請頁面才會顯示數據導出按鈕(默認為.csv格式),獲取表結構功能必須點擊相應表名此為前置條件,快速提交功能僅支持DML語句,如下拉列表框內沒有相關數據源顯示請聯系管理員是否賦予相應數據源許可權
1、工單審核
功能:DDL/DML管理員審核並執行
實時刷新開關默認打開,如需刪除記錄請先關閉該開關。如定時工單的時間小於當前時間,執行該工單將會立即執行,目前僅支持延時工單中止,其他工單執行後無法中止!
2、查詢審核
功能:用戶查詢審核
點擊全部中止按鈕將會中止所有用戶的查詢許可權 如沒有在設置頁面開啟查詢審核開關,則默認用戶查詢申請提交後自動獲得查詢許可權。 用戶查詢時限在設置頁面進行設置
3、許可權審核
功能:用戶許可權審核
許可權由用戶在首頁個人信息處自主申請,管理員可在該審核頁面決定是否給予用戶申請的許可權,由於用戶可能存在胡亂申請許可權的問題,所以 管理員在查看用戶許可權申請工單的同時可對工單申請的許可權進行修改,確定具體的許可權給予 。
1、工單審計
主要是審計工單的執行情況,記錄工單的執行時間、申請人、執行人等信息。
2、查詢審計
針對資料庫查詢記錄做審計
1、用戶
功能:創建/修改/刪除用戶
當多級審核關閉後系統並不會自動將角色為執行人的用戶重置角色,需要自行重置相應用戶角色
2、資料庫
功能:添加/編輯/刪除 數據源
所有添加的數據源應在添加之前點擊測試連接按鈕進行連接性測試,保證連接性。
數據源分為 查詢數據源/非查詢數據源 。查詢數據源僅會出現在細粒度許可權的查詢數據源范圍內。非查詢數據源同理。(對於查詢與執行數據源應拆分為二,保障線上執行數據源不會因為查詢慢sql影響業務),此類別添加後 無法通過編輯進行修改 ,需要慎重添加。
3、用戶許可權
功能:用戶許可權修改/清空
批量賦權僅支持角色為使用人的用戶。由於批量賦權為覆蓋更新,僅適合在用戶許可權為空時使用。
4、設置
功能:
在配置填寫無誤後點擊測試按鈕進行相關測試, 使用消息推送前必須先打開對應消息推送開關,否則Yearning不會進行推送
5、審核規則
功能:設置SQL檢測規則
保存後即時生效
後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~