2012-12-08 25 views
-1

我securty應用程序需要使文件以任何方式或任何其他解決方案undeleteable做同樣的事情
plz dont告訴我讓它只讀(它的安全)
有沒有在nio pakege幫助我的事情!如何使文件無法刪除在Java?或給它的訪問權限也admin無法刪除它?(Windows 7)

+5

即使管理員使文件無法被刪除本身也會導致安全漏洞。 – Perception

+0

必須是沒有人可以編輯文件其他創建文件甚至管理員 –

回答

0

恐怕我沒有準備好的證明,但我相信這是不可能的。甲骨文公司不會向Java那樣添加這樣的功能,因爲只要做到這一點,他們就會面臨巨大的法律風險。正如Perception所暗示的那樣,它可能很容易被濫用。

出於好奇,你想用這個完成什麼?

0

文件系統在此處形成限制。基本上,管理員可以隨時讀取或寫入文件,但我不知道有哪些文件系統可以禁止任何人進行編輯。

+0

可以設置NTFS權限,以便即使管理員不能*意外*刪除文件。但出於安全考慮,這樣做是沒有用的,因爲管理員可以輕鬆獲取文件的所有權來覆蓋限制。 – cHao

1

有點黑客,並沒有充分證明將打開你的Java應用程序中的文件流。這應該會阻止其他人刪除該文件。只要你的Java應用程序關閉,但它可能會被刪除。程序運行時,用戶也不能編輯它。不是一個好的解決方案,因爲我認爲它有太多的漏洞(例如,當Java程序啓動時需要知道文件名,需要讓java程序一直運行,用戶不能做任何事情來存檔,用戶可以殺死java進程等),但是對於它應該工作的小利基要求

+0

請注意,這會增加磁盤使用量並且是不需要的。看起來像最好的'解決方案'雖然。 – siebz0r

+0

請注意,這僅適用於鎖定打開文件(例如Windows)的平臺。並非所有平臺都這樣做。 – EJP

1

不,你不能這樣做,這樣的應用程序不會被稱爲「安全應用程序」,而是某種形式的惡意軟件,病毒,間諜軟件等。管理員擁有並且必須完全控制文件系統。唯一的例外是操作系統的某些關鍵文件,這些文件受os本身的保護,因爲如果它們被刪除就會崩潰。 Java對文件系統設置任何類型的安全權限沒有任何支持(文件屬性不完全是安全權限)