2013-05-07 83 views
1

我正在構建我的第一個(原始)內容管理系統。 用戶可以上傳/存儲文件(pdf,doc,xls等)。這些文件用mcrypt加密。我也有一個PDF /文檔查看器,所以用戶可以瀏覽他們的文件,而無需下載它們。但是我遇到了加密文件的問題。刪除PHP中的臨時解密文件

截至目前,當用戶點擊一個文件時,php腳本會將副本解密爲一個文件夾供插件訪問。顯然,我需要一種方法來查看後刪除這些解密的文件。我目前正在嘗試通過PHP來做到這一點,但是我無法將腳本拖延到插件加載文件足夠長的時間。這甚至是最好的辦法嗎?例如,一個cron工作會更好嗎?

有什麼建議嗎?

回答

1

我建議將插件定向到PHP腳本的URL,該腳本直接將解密內容提供給瀏覽器。這樣你可以完全避免臨時文件。

與任何有關安全性的問題一樣,問題在於你試圖抵禦的問題。您是否擔心服務器上暴露的明文內容?還是你更關心用戶猜測臨時文件名和訪問他們不應該訪問的內容?在後一種情況下,足夠強大(與用戶身份驗證和加密密鑰較弱相同)隨機文件名會被cronjob過期應該足夠了。在前一種情況下,請參閱我的初始建議,並特別注意保護服務器上的密鑰。

+0

我認爲這將是理想的。我不太清楚如何在不創建文件的情況下將內容解密到插件中。您可以在不需要了解我的整個加密設置的情況下詳細闡述這些內容嗎? – dsol828 2013-05-07 23:15:10

+0

至於第二點,我關心的是事實上服務器上暴露的內容。大多數用戶可以完全訪問所有文件,所以不用擔心。 – dsol828 2013-05-07 23:16:37