Do not let admin put password on cli argument when reseting password
This commit is contained in:
parent
b99290b1d5
commit
c129e2a167
|
@ -10,10 +10,9 @@ const db = require('../server/initializers/database')
|
||||||
|
|
||||||
program
|
program
|
||||||
.option('-u, --user [user]', 'User')
|
.option('-u, --user [user]', 'User')
|
||||||
.option('-p, --password [new password]', 'New password')
|
|
||||||
.parse(process.argv)
|
.parse(process.argv)
|
||||||
|
|
||||||
if (program.user === undefined || program.password === undefined) {
|
if (program.user === undefined) {
|
||||||
console.error('All parameters are mandatory.')
|
console.error('All parameters are mandatory.')
|
||||||
process.exit(-1)
|
process.exit(-1)
|
||||||
}
|
}
|
||||||
|
@ -30,15 +29,32 @@ db.init(true, function () {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
user.password = program.password
|
const readline = require('readline')
|
||||||
|
const Writable = require('stream').Writable
|
||||||
|
const mutableStdout = new Writable({
|
||||||
|
write: function (chunk, encoding, callback) {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const rl = readline.createInterface({
|
||||||
|
input: process.stdin,
|
||||||
|
output: mutableStdout,
|
||||||
|
terminal: true
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log('New password?')
|
||||||
|
rl.on('line', function (password) {
|
||||||
|
user.password = password
|
||||||
|
|
||||||
user.save().asCallback(function (err) {
|
user.save().asCallback(function (err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
return
|
} else {
|
||||||
|
console.log('User password updated.')
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('User pasword updated.')
|
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
})
|
||||||
|
|
Loading…
Reference in New Issue