diff options
author | Kristina <kristina@10gen.com> | 2011-04-08 10:31:05 -0400 |
---|---|---|
committer | Eliot Horowitz <eliot@10gen.com> | 2011-04-28 01:55:05 -0400 |
commit | 19d7fd194d5793441b945ef07f1ae46b0de6ceaa (patch) | |
tree | 189098796a83317d61b5a5ac77193e347e74442b | |
parent | bd136c1c16b21ffa5d1afad0172a415d718db9e2 (diff) | |
download | mongo-19d7fd194d5793441b945ef07f1ae46b0de6ceaa.tar.gz |
authenticate rs manager thread SERVER-2919
-rw-r--r-- | db/repl/manager.cpp | 3 | ||||
-rw-r--r-- | jstests/replsets/auth1.js | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/db/repl/manager.cpp b/db/repl/manager.cpp index ed39c3107d7..d2e0764ad1b 100644 --- a/db/repl/manager.cpp +++ b/db/repl/manager.cpp @@ -64,6 +64,9 @@ namespace mongo { void Manager::starting() { Client::initThread("rs Manager"); + if (!noauth) { + cc().getAuthenticationInfo()->authorize("local"); + } } void Manager::noteARemoteIsPrimary(const Member *m) { diff --git a/jstests/replsets/auth1.js b/jstests/replsets/auth1.js index 4945869d2a1..60e4b951b90 100644 --- a/jstests/replsets/auth1.js +++ b/jstests/replsets/auth1.js @@ -182,3 +182,15 @@ wait(function() { return results.members[3].state == 2; }); +print("make sure it has the config, too"); +assert.soon(function() { + for (var i in rs.nodes) { + rs.nodes[i].setSlaveOk(); + rs.nodes[i].getDB("admin").auth("foo","bar"); + config = rs.nodes[i].getDB("local").system.replset.findOne(); + if (config.version != 2) { + return false; + } + } + return true; + }); |