Mongodb

cron觸發的MongoDB腳本——如何實現合理的密碼安全

  • September 15, 2017

我們希望每晚從 mongo 集群中清除舊數據。第一個想法是編寫連接到其中一個 mongos 並發出刪除指令的 shell 腳本。

evalString='db.fs.files.remove({uploadDate: {$lte : ISODate("2017-01-01")}})'

mongo localhost:1234/databaseName -u USER -p PWD --eval $evalString

這很好用,但我當然不喜歡在腳本中使用純文字 PWD。至少可以對其進行 chmod 500,但在腳本中使用純文字密碼仍然感覺不理想。

什麼是最好的選擇?

我在 RHEL 7.3 上執行 Mongo 3.4.4。它是 Mongo 的非企業版,因此沒有 LDAP/Kerberos。我們也沒有使用 x509 安全性,我正在尋找不涉及升級到 Enterprise 或採用 x509 路線的替代方案,儘管我很樂意聽到為什麼做這些事情確實是正確的做法,而且也沒有做那些事情是什麼差距是開放的。

首先.. 最好使用 –eval=‘command’ 而不是向 mongo 回顯一個字元串…該密碼是什麼,您可以使用-p $(cat /etc/secret/password)文件 chmod 就像 0400

引用自:https://dba.stackexchange.com/questions/185591