When upgrading config servers to use WireTiger, the running config server with wiredtiger does not authenticate the existing pass and user?
It looks like the current MongoDB 3.0 upgrade instructions are missing mention of two important parameters for backing up and restoring users and roles:


mongodump --dumpDbUsersAndRoles (see also: Required Access to Backup User Data).
mongorestore --restoreDbUsersAndRoles (see also: Required Access to Restore User Data)


I can think of several approaches to fix:


If you don't have many user accounts on the config servers, recreate the administrator &amp; user accounts. This isn't ideal, but is probably the fastest approach.
Export the users from your mmap database. This is more involved, but saves you recreating the users &amp; roles. I've described steps for this below.
Redo the config server migration with the user &amp; role information included. I expect this is the least desirable option.


Exporting the users

Assuming you have already upgraded all of your config servers to WiredTiger, here are some steps to add the user information:


Disable the balancer
Stop the last config server listed in your mongos' configDB setting (will call that config3 for the purpose of these steps). This will ensure your sharded cluster metadata remains read-only for the following steps.
Re-start config2 using the mmap data directory

At this stage you should have:


config1 (running WiredTiger)
config2 (running mmap with user/role data)
config3 (stopped)

Export the data from config2:


  mongodump --db config --dumpDbUsersAndRoles --username .. --password ..


Add any other parameters needed, eg --authenticationDatabase .. if you need to auth against another database.
If you have users in the admin database on your config server, you will also want to dump that as well.
(optional) Remove files from your dump except for the user/role information. If you are certain nothing has changed since you did the original migration from mmap to WiredTiger you could skip this step, however it would be safer to not overwrite any existing data.

Preview the files to remove:


  find ./dump -type f -not -name "\$admin.system*"


WARNING: removing files, make sure you have previewed to confirm:


  find ./dump -type f -not -name "\$admin.system*" | xargs rm

Re-start config2 using the wiredTiger storage engine
Run: mongorestore --db config --restoreDbUsersAndRoles dump/config/

You should see messages about restoring users &amp; roles, for example:


  2015-03-18T02:41:34.887+1100  restoring users from dump/config/$admin.system.users.bson
  
  2015-03-18T02:41:34.887+1100  restoring roles from dump/config/$admin.system.roles.bson

Login to config2 and confirm the users are correctly setup (i.e. auth with admin account, use db.getUsers() to check).

At this stage you should have:


config1 (running WiredTiger)
config2 (running WiredTiger with user/role data)
config3 (stopped)

Copy the dump directory to config1 and repeat the mongorestore step.
Shutdown config2 (to keep the sharded cluster metadata readonly for the next step).

At this stage you should have:


config1 (running WiredTiger with user/role data)
config2 (stopped)
config3 (stopped)

Start config3. Copy the dump directory to config3, and repeat the mongorestore step.

At this stage you should have:


config1 (running WiredTiger with user/role data)
config2 (stopped)
config3 (running WiredTiger with user/role data)

Start config2. At this point all config servers should be online with the user information.
Re-enable the balancer so normal balancing activity &amp; chunk migration can resume.