2016-12-19 44 views
1

我有一個小的CF9應用程序,沒有涉及數據庫。在配置中,我需要存儲一個網絡密碼,其中一個功能需要,但我不希望以人類可讀形式將其存儲在Application.cfc中(例如)。ColdFusion 9,祕密設置

存儲/讀取密碼的最佳方式是什麼?

+4

如果你沒有數據庫,那麼我會建議至少加密密碼,但是如果代碼中的一切都在代碼中,任何人都可以找出密碼。 –

+1

這可能會給你一些想法。 http://niallodoherty.com/assets/content/enclosures/Documents/Sourceless%20Deployment%20of%20ColdFusion.pdf –

回答

1

步驟1:在網頁中是不會投入生產,運行:

<cfoutput>#hash('My_pa55w0rd')#</cfoutput> 

,將顯示密碼的哈希值。

第2步:在要投入生產的網頁上,將散列添加到變量中,例如application.pass_hash。根據需要對照pass_hash進行驗證。

<cfif hash(form.password) EQ application.pass_hash> 
    <p>Successful login!</p> 
</cfif> 
+1

這聽起來不像用戶輸入密碼,但如果他們是,那麼這是最好的解決方案。 –

+0

如果您在源代碼中擁有密碼的哈希版本,那麼它如何用於身份驗證? –

+0

我們可以知道密碼與代碼中沒有原始密碼的情況相匹配 –