diff options
author | Eric Milkie <milkie@10gen.com> | 2014-01-22 11:24:14 -0500 |
---|---|---|
committer | Eric Milkie <milkie@10gen.com> | 2014-01-23 08:47:51 -0500 |
commit | 6f7364be380fd69a9725339123e5476518ddbaee (patch) | |
tree | 121970905ae7d88eec9fadb07dee3a8366205a4c | |
parent | eff37e9c0e5f4a3cd1178cb42fa4c1f518b8b597 (diff) | |
download | mongo-6f7364be380fd69a9725339123e5476518ddbaee.tar.gz |
SERVER-11572 permit no-password auth for Windows Kerberos mongo shell from command line
-rw-r--r-- | src/mongo/shell/dbshell.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mongo/shell/dbshell.cpp b/src/mongo/shell/dbshell.cpp index 59f2c876fa0..38e2a2017a7 100644 --- a/src/mongo/shell/dbshell.cpp +++ b/src/mongo/shell/dbshell.cpp @@ -706,7 +706,9 @@ int _main( int argc, char* argv[], char **envp ) { if (!shellGlobalParams.nodb && shellGlobalParams.username.size()) { authStringStream << "var username = \"" << shellGlobalParams.username << "\";" << endl; - authStringStream << "var password = \"" << shellGlobalParams.password << "\";" << endl; + if (shellGlobalParams.usingPassword) { + authStringStream << "var password = \"" << shellGlobalParams.password << "\";" << endl; + } if (shellGlobalParams.authenticationDatabase.empty()) { authStringStream << "var authDb = db;" << endl; } @@ -715,8 +717,11 @@ int _main( int argc, char* argv[], char **envp ) { << shellGlobalParams.authenticationDatabase << "\");" << endl; } authStringStream << "authDb._authOrThrow({ " << - saslCommandUserFieldName << ": username, " << - saslCommandPasswordFieldName << ": password });" << endl; + saslCommandUserFieldName << ": username "; + if (shellGlobalParams.usingPassword) { + authStringStream << ", " << saslCommandPasswordFieldName << ": password "; + } + authStringStream << "});" << endl; } authStringStream << "}())"; mongo::shell_utils::_dbAuth = authStringStream.str(); |