2011-02-03 71 views
2

我目前正在開發使用PHP/MySQL的PUBLIC和OPEN SOURCE軟件。我在一個文件夾中有幾個重要的SECRET TXT文件。我使用他們的軟件,但問題是,他們也是由誰知道文件夾和文件名可讀:保護祕密數據不受損害

secret_folder \ my_data.txt 

我需要掩飾他們對大家誰可能會試圖獲取機密數據,而無需許可。我發現這種方式(保持了特有的文件夾中所有的祕密文件夾):

U3IPpe8J_2573HkBfR0iYteH8X \ secret_folder \ my_data.txt 

唯一鍵將改變每個網站(記住,軟件將是開源的和公共的)。

對於安全性還是不夠好,還是應該使用HTACCESS?如果是,我該如何使用它;或者你有什麼更好的主意?

+1

http://superuser.com/可能是一個更好的地方問 – 2011-02-03 15:10:21

+1

@mario:這是不正確的。這些文件在目錄索引*中不是**可見**,但是如果您知道正確的URL,則它們是可公開訪問的。您可能正在考慮`^ .ht`規則,該規則阻止訪問類似`.htaccess`和`.htpasswd`的文件 - 這是默認配置,但僅適用於以.ht開頭的文件。儘管創建這樣的規則很簡單,但是在默認配置中是__not__,並且最好說它是誤導性的。 – Piskvor 2011-02-03 15:21:37

回答

7

請記住,通過隱晦的安全不是安全。所以不,這不夠好。

.htaccess中爲secret_folder添加拒絕規則並完成。

所以,你.htaccess將包括:

<Directory /secret_folder> 
    order allow,deny 
    deny from all 
<Directory> 

更妙的仍然是移動secret_folder上述Web根目錄(所以它不提供的話)。

/public_html/index.php 
/secret_folder/my_data.txt 

這樣,它在字面上任何人都不可能要求my_data.txt通過Apache(他們可以,如果他們砍死PHP代碼,但不能直接通過Web服務器)。

2

對於單個文件的保護使用的.htaccess這樣

<Files my_data.txt> 
order deny,allow 
deny from all 
AuthType Basic 
require valid-user 
satisfy any 
</Files> 
2

一種方法來幫助保護文件是不是讓他們爲文本文件。也許把結構中所需的數據放在一個php文件中。服務器會干擾這段代碼,而不是將其作爲txt文件提供。

我必須同意其他評論者:默默無聞並不安全。