-
Type: Bug
-
Resolution: Fixed
-
Priority: Trivial - P5
-
Affects Version/s: None
-
Component/s: None
-
None
mongodump version: 4.0.18
$ mongodump --version mongodump version: r4.0.18 git version: 6883bdfb8b8cff32176b1fd176df04da9165fd67 Go version: go1.11.13 os: linux arch: amd64 compiler: gc OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
We're using a new method (vault kv get) to get the admin passwords for our mongodb clusters, however, it gets the password without an EOF. This is fine for the mongo CLI, but not for mongodump.
For example, this works with the mongo cli:
# 'echo -n' simulates the password output from {{vault kv get}} echo -n PASSWORD | mongo --host mongohost:27017 --authenticationDatabase admin -u admin --password '' --eval 'db.version()'
However, I get the following error when attempting to use mongodump with a password without EOF:
$ echo -n PASSWORD | mongodump --oplog --host configReplSet/mongohost:27019 --authenticationDatabase admin -u admin -p '' --out ~/backup.$(date +'%Y%m%d-%H%M') 2020-08-05T10:16:27.834+0100 reading password from standard input Enter password:panic: EOF goroutine 1 [running]: github.com/mongodb/mongo-tools/common/password.readPassFromStdin(0x563f43b86e20, 0xc000092010) /data/mci/ce93d12bfe87820173b89f89a2440d85/src/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common/password/password.go:52 +0x1ec github.com/mongodb/mongo-tools/common/password.Prompt(0x563f43b53d20, 0xc0000cc3c0) /data/mci/ce93d12bfe87820173b89f89a2440d85/src/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common/password/password.go:38 +0x162 github.com/mongodb/mongo-tools/common/db.NewSessionProvider(0x563f4364687c, 0x9, 0x563f43754a60, 0x7, 0xc000186000, 0xc0000a0800, 0xc0000a0820, 0xc000131080, 0xc0000cc320, 0xc000096780, ...) /data/mci/ce93d12bfe87820173b89f89a2440d85/src/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common/db/db.go:218 +0x234 github.com/mongodb/mongo-tools/mongodump.(*MongoDump).Init(0xc000098180, 0x563f43b82f20, 0xc000070360) /data/mci/ce93d12bfe87820173b89f89a2440d85/src/src/mongo/gotools/src/github.com/mongodb/mongo-tools/mongodump/mongodump.go:132 +0x11c main.main() /data/mci/ce93d12bfe87820173b89f89a2440d85/src/src/mongo/gotools/src/github.com/mongodb/mongo-tools/mongodump/main/mongodump.go:81 +0x5ea
Any chance both mongo and mongodump can handle passwords without EOF? For now we have a workaround.
Here's more information on Hashicorp's vault kv get:
https://www.vaultproject.io/docs/commands/kv/get
Thanks,
Robert
- duplicates
-
TOOLS-2709 Handle passwords without EOF
- Closed
- links to