2010-04-08 22 views
1

我剛剛創建了一個PHP頁面,吐出一些數據從我的數據庫中的XML格式。這些數據是從我製作的Flex應用程序中提取的。數據庫安全與PHP頁面,吐出XML

我花了很長時間格式化表格和數據庫信息,不希望任何人能夠簡單地鍵入www.mysite.com/page_that_spits_out_XML.php並竊取我的數據。但是,同時我需要能夠從我的Flex應用程序訪問此頁面。

有沒有辦法阻止其他人這樣做?謝謝!

+0

這需要有多安全?僅僅是爲了阻止一個偶然的用戶在網站中磕磕絆絆,或者是一些防彈的東西? – 2010-04-08 20:12:40

回答

-1

真正要減慢數據信道的唯一事情就是加密,確保你的flex應用程序被模糊處理,並且密鑰和加密函數存儲在內部既不可猜測也不易提取。

這是你可以做的最好的,但它不是我通常會推薦的一種解決方案。如果有人真的想要這些數據,他們會得到它。

+0

@大家,請繼續投票,不要質疑我寫的或提供更好的解決方案。這是非常有建設性的! – aaaaaaaaaaaa 2010-04-09 00:02:39

+0

我沒有downvote - 但你推薦的是錯誤的。混淆從來不是一個解決方案。攻擊者只能觀看http流量並從那裏提取密鑰。它根本不會放慢他的速度。 – 2010-04-09 07:37:07

+0

關鍵應該在程序中,而不是作爲明文存儲在那裏,而是作爲生成它的幾行,然後通過混淆程序進一步混合。攻擊者然後必須反編譯程序或者在調試器中運行它來弄清楚內部發生了什麼。 但我認爲我們普遍認同,這不是一個真正的解決方案,它只是一個小小的障礙。 – aaaaaaaaaaaa 2010-04-09 10:03:34

0

您是否使用Flex的HTTPService對象?

一些總體思路...

-1

讓您的Flex應用程序發送一個密鑰(散列或東西),然後讓你的PHP檢查,如果誰在訪問它有一個正確的密鑰。可能想使用POST請求來隱藏您發送的內容。這不是非常安全,但這是我的兩分錢!

0

您需要設置認證。 Flex應用程序將HTTP POST數據(通常是用戶名和密碼)發送到服務器,PHP應用程序將檢查該帳戶是否存在,如果存在,則會建立會話。無論何時訪問文件(如page_that_outputs_xml.php),PHP文件都將檢查會話中的帳戶是否有權查看此數據。

這與當今大多數登錄系統一樣無懈可擊。