我擁有MySQL數據庫並在其中包含多個表。當然,其中一個是存儲用戶名和密碼的用戶表(其中還包含其他信息)。對於架構中的所有表,我希望能夠授予用戶(或組)對各個字段的權限。也許一個例子會有所幫助:授予MySQL中單個字段的權限
那裏;有一張名爲ACCOUNTS的表。在此表中,用戶填寫(並保持最新)關於其公司的所有數據(姓名,地址,POC等)。但是我也希望有附在這張表上的字段,這些字段只讀給那些用戶使用,比如LastPaymentDate(不能讓他們改變它!)。此外,在這些用戶中,權限不同。例如,admin/superuser可以更改公司的名稱和地址,但標準用戶不應該這樣做。
我在想這可能需要通過爲表格製作多個視圖來完成,每個權限級別(組)都有一個視圖。我對MySQL比較陌生,所以我不知道這是否是最好的方法。我還可以看到一個查詢表,說明哪些字段被允許查看/編輯。
我最初的想法是在評論(或字段的名稱)中包含0-5的值,然後用戶將擁有權限級別(0-不能看; 1只讀; 2-讀寫; 3-(未使用); 4-(未使用); 5-編輯/刪除該字段本身
任何建議?視圖?查找表以確定要顯示哪些字段?倒是沒有爲整個表,對錶中的每一列
我會在一分鐘內閱讀該鏈接,但是如果我正確理解該示例,那麼將授予選擇(或參見)col1的能力以及將值添加到(col1,col2)的能力?我將要編寫PHP來爲用戶動態創建頁面,並且我想要執行PHP代碼來確定用戶a)是否看不到該字段,b)將其作爲只讀列還是c )獲得讀/寫訪問權限。猜猜我正在尋找如何保持每個領域的訪問級別列表。 – Tanoshimi
@Tanoshimi權限存儲在'mysql'數據庫:columns_priv,db和主表中。使用它們你將能夠解決你的任務。也許,你會有更多的問題。 – user4035
我想我唯一的問題是我可以讀取權限。基本上,我想要「隱藏」「只讀」和「寫入」。當PHP構建頁面時,我想用這些來確定我是否a)不顯示任何內容,b)將其顯示爲文本,或者c)將它顯示爲帶有用於更新表格的代碼的文本框。我知道我可以將USAGE用於None,但我想我只是想知道是否可以在創建頁面時閱讀這些內容。 – Tanoshimi