linux 設置文件權限,不讓操作者刪除文件

在linux中,現準備讓操作者 可讀 可寫 可修改,就是不讓操作者 刪除 文件,
此權限如何設置呀,

Linux的權限做不到這樣的要求

chattr +a filename可以設置文件不能刪除只能追加數據。

但是,你可以在php程序中進行程序權限設置啊,不然用戶使用刪除命令。

可以這樣 新建1個文件權限:444  

在文件裏新增文件(需要管理員權限新建)

新建的文件設置777 ,這樣就可以任何人讀寫修改 ,但是刪除需要管理員權限
已經告訴你了,用linux的權限控制做不到你的要求。
你應該在PHP程序裏面控制權限,你給用戶刪除和修改的操作權限難道不是用PHP來實現的嗎?!

安裝一個natruil-gsdk什麼的(名大概記不清了,英語不好)然後點右鍵就有“以管理員身份打開”。當然也就可以刪除了

每個程序類都有一個xxxACL.class.php文件對應,如果沒有就沒有權限
每個程序類的xxxACL.clas.php文件acl都有一個all鍵值,如果找不到對應的方法權限值
還有一次,爲一個單位設計權限相關的東西時,對很多流程要進行權限,當時我想出了樹形結構遍歷,去整權限,再配合一些臨時授權。
用CS_check_permissions($access_name) 判斷用戶是否有相應的權限
我就是要避免在程序中使用這種判斷程序
這種樣子又不夠靈活嗯,能做到這樣去實現依賴倒置當然更好。 我那只是一個偷懶的方法,適合中小型。

我倒覺得將權限生成json較簡單

按樓主的設計思路,如果要解決一個模塊下的子模塊權限問題,應該再設計一個用戶自定義的權限表。

public $aclid=array(2,3); //權限資源ID,如果登錄人員沒有擁用這個權限那麼其(下面)它值都爲0也不能訪問 
比如show 在rabc表中ID是3 因爲這個在訪問時候會檢查,比如用戶沒有這個ID權限是訪問不了的
主要是有時候變了,又要改程序,不太好。如果在前面就檢測了,這樣又不會對程序造成什麼影響
我們不要時候可以不要,但是你放了這個代碼,不要權限時候又得去刪除這個代碼

CS_check_permissions是統一的公用權限判定接口函數,函數內可以預先判定一個公用配置值,來決定是否開啓權限判定功能,不一定非要刪除代碼嘛,而且結合mvc代碼結構,也可以在url router階段未進入controller之前就預先判定好權限呀,我想對於你的框架來說,也應該提供一個這樣的函數,動態化 + 特殊化 = 擴展性 嘛
而且我覺得權限的指定對於一個產品來說,是應該使用產品的管理員去指定的,而不是開發人員,你的框架如果真正應用於一個產品,對於權限的配置,目前階段是否可以比較容易的結合後臺管理呢?比如你的每個模塊的xxxACL.class文件,是否可以考慮通過後臺權限管理模塊生成,而真正的用戶的權限數據到時候是需要數據庫也有一份的,這樣才方便後臺管理。

比如你的每個模塊的xxxACL.class文件,是否可以考慮通過後臺權限管理模塊生成,而真正的用戶的權限數據到時候是需要數據庫也有一份的,這樣才方便後臺管理。

是的數據庫也有一份,我設計好了數據庫,xxxACL.class文件是管理員生成的,不用程序員去寫代碼。
我前面是做演示,在因爲後臺還沒有做好,所以產前面爲什麼要加ID,而不是使用什麼名字之類
來源:英超直播

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章