2011-03-24 61 views
3

什麼是保護SQL查詢的一些有效且安全的方法?保護SQL查詢,確保沒有人知道密碼

總之,我想確保程序員不會看到應用程序用來執行查詢的密碼。想起了RSA或PGP之類的東西,但不知道如何在不在應用程序中編碼的情況下實現更改密碼。

我們的環境是一個典型的Linux/MySQL。

回答

0

如果程序員無法訪問包含登錄憑證的配置文件,並且無法通過調試或JMX接口訪問它們,那麼應該可以工作。當然,這會引入其他問題,但這可能會滿足您的要求。 (我不是合格的安全評估員 - 請檢查您的PCI符合性。)

1

這可能更多是一個流程問題,而不是一個編碼問題。

在軟件開發過程中,您需要嚴格分離實施流程和推出流程。包含密碼的配置文件必須在轉出期間填入真實密碼,而不是之前。程序員可以使用開發環境的密碼,並且推出團隊在應用程序完成後更改這些密碼。這樣真正的密碼永遠不會泄漏給編碼應用程序的人。

如果您不能確保程序員無法訪問實時系統,則需要加密配置文件。做到這一點的最好方法取決於編程語言。我目前正在開發一個Java應用程序,該應用程序使用ESAPI project的相應功能加密.properties文件,我可以推薦。如果您使用其他語言,則必須找到等效的機制。

任何時候如果您想要更改密碼,管理員都會在將文件複製到服務器之前生成一個新文件並對其進行加密。如果您想最大的安全性,並且不希望存儲的密鑰來解密您的系統,當系統重新啓動管理員可以提供它的配置

。但是這可能會花費太多,取決於您的需求。