保護我的資料庫密碼不被開發人員發現

保護我的資料庫密碼不被開發人員發現

我們的工作場所有一個使用資料庫的應用程式。目前,它使用使用者名稱密碼進行身份驗證(儘管我們可以使用受信任的 IP 連線)。我們不想使用信任,因為我們將對應用程式和資料庫所在的特定電腦的 IP 進行移動。

目前,因為我們在應用程式中應用程式設定檔中設定的使用者名稱/密碼,所以除了我的老闆(系統管理員)和我們他的六個下屬(我是首席)之外,我們還有開發人員知道密碼,因為我們中的任何人輪流管理員維護和部署應用程式。因此,我們所有人都需要承擔保證密碼安全的風險。

我做了什麼 最近我們開始更頻繁地更改密碼,但我現在只想我自己知道這個密碼。我是唯一一個應該按照老闆的指示直接在資料庫上執行查詢的人。即使是我的老闆也不需要立即知道(也許在我不在場並記錄在案的情況下)。我想過這樣做:

  1. 在伺服器上建立一個只有應用程式可讀的文字檔案。
  2. 讓開發人員對應用程式進行編碼,以引用此檔案以取得純文字密碼。
  3. 應用程式使用它來登入。

我認為,如果開發人員在應用程式中儲存為他們執行此操作的程式碼,他們仍然能夠洩露密碼(並不是說他們是險惡的,我們只是試圖共同簡化集體風險)

問題 有沒有更好的方法來完善這種方法,除此之外我是否還可以使用另一種方​​法。

平台:Linux(Ubuntu 伺服器)、PostgreSQL、Java

答案1

舊的unix/linux方式是:

vi /etc/my_app.conf
database_ip=192.168.123.123
database_instance=db1
database_user=my_app
database_password=secret_in_plaintext

這並不能立即解決您的問題,但是...將來您可以將完全相同的應用程式二進位(war/jar)部署到不同的應用程式伺服器(生產、預生產、測試、開發)。這些都可以有不同的資料庫(prod、pre、test、dev)。這樣,開發人員最終將根本不需要訪問生產環境。

相關內容