diff options
Diffstat (limited to 'jstests/sharding/cleanup_orphaned_auth.js')
-rw-r--r-- | jstests/sharding/cleanup_orphaned_auth.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/jstests/sharding/cleanup_orphaned_auth.js b/jstests/sharding/cleanup_orphaned_auth.js index cb4490ec00b..dd6b384a276 100644 --- a/jstests/sharding/cleanup_orphaned_auth.js +++ b/jstests/sharding/cleanup_orphaned_auth.js @@ -26,8 +26,13 @@ function assertUnauthorized(res, msg) { var st = new ShardingTest({auth: true, other: {keyFile: 'jstests/libs/key1', useHostname: false}}); var shardAdmin = st.shard0.getDB('admin'); -shardAdmin.createUser({user: 'admin', pwd: 'x', roles: ['clusterAdmin', 'userAdminAnyDatabase']}); -shardAdmin.auth('admin', 'x'); +if (!TestData.catalogShard) { + // In catalog shard mode, this will create a user on the config server, which we already do + // below. + shardAdmin.createUser( + {user: 'admin', pwd: 'x', roles: ['clusterAdmin', 'userAdminAnyDatabase']}); + shardAdmin.auth('admin', 'x'); +} var mongos = st.s0; var mongosAdmin = mongos.getDB('admin'); @@ -42,7 +47,9 @@ assert.commandWorked( mongosAdmin.runCommand({shardCollection: coll.getFullName(), key: {_id: 'hashed'}})); // cleanupOrphaned requires auth as admin user. -assert.commandWorked(shardAdmin.logout()); +if (!TestData.catalogShard) { + assert.commandWorked(shardAdmin.logout()); +} assertUnauthorized(shardAdmin.runCommand({cleanupOrphaned: 'foo.bar'})); var fooDB = st.shard0.getDB('foo'); |