2014-12-22 59 views
0

所以,這是怎麼一回事呢.. 公司至少有10臺服務器,十幾systems.My老闆要確保我們的MySQL密碼。在這種情況下,即使我們的程序員也無法更新,刪除或更改任何數據。原因在於一些IT員工正在更換機密數據,但在我們針對他們的行爲採取任何法律行動之前,我們決定首先確保服務器的安全,我們所做的是從程序員那裏獲取源代碼並更改所有連接字符串比如存儲在服務器5中的密碼和用戶名。但是服務器5的連接字符串在源代碼中仍然可見。我的問題是,如果我們做錯了,是否有其他方法可以使文件更安全,而不是更改和隱藏服務器密碼?如果不是,那麼最好的選擇是什麼?隱藏連接字符串和mysql的安全密碼

+0

有什麼阻止他們代碼調試,並且讓所有的用戶名和密碼? – Rob

+3

如果您確定他們這樣做了,並且您知道是誰:立即暫停工作。不要讓他們再次進入場所,除非護送,暫停登錄,扣留他們的筆記本電腦。你必須公平,你必須證明你是公平的。正式地說,這是一個預防措施,而事件正在調查之中,並且在你有機會聽到指控並作出迴應之前,你不應該公佈任何關於有罪/無罪的內容。很久以後 - 修改您的安全系統以防止再次發生這種情況。 – MarkJ

+0

我同意MarkJ,因爲我們不知道你的公司,所以它是一種主觀,所以他的解決方案是最好的。你有一個特定的編程問題或有關相關的安全代碼? –

回答

0

從本質上講,你有一個正常的問題: 你怎麼能允許應用程序訪問數據,而不允許同一接入開發商。

  • 如果開發人員無需應用程序即可訪問數據,請到此處停止。
  • 如果開發人員可以讀取源文件和配置文件,則不能在此保存密碼。
  • 如果開發人員可以讀取註冊表(你提到VB6),你不能保持密碼那裏。
  • 如果開發者能夠讀取可執行文件(十六進制編輯器,或Sysinternals Strings等),你不能保持密碼那裏。

事實上,如果你必須使用一個用戶名和密碼,MySQL的人都知道,你必須先禁止開發商都獲得生產,然後讓別人做的配置文件修改存儲(加密)密碼到prod服務器。 - 是的,現在別人可以得到和渣土周圍 - 或共享用戶名/密碼 - 你已經有了一個類似的問題用密鑰來加密口令。

但是,從商業化的MySQL 5.6.10開始,有一種替代方案:使用Windows本機(Active Directory)身份驗證。見MySQL Reference Manual 6.3.8.6 The Windows Native Authentication Plugin。 - 你得給開發商AD帳戶成員身份的AD組與發展權,也許測試 - 你得給一個AD組的真實用戶會員資格與權利生產

不管你那麼,你將不得不忍受來自非行政假的開發者的嗚嗚聲,而且你的現場調試生產調試速度至少會減少一點。