diff options
author | Spencer T Brody <spencer@10gen.com> | 2013-09-06 14:12:13 -0400 |
---|---|---|
committer | Spencer T Brody <spencer@10gen.com> | 2013-09-09 11:43:45 -0400 |
commit | eb46cc62a0d6e08e2cabc0862490d76f2833e8b1 (patch) | |
tree | 780c981e5ec88f919775bc8d3225c58fc820b503 /src/mongo/db/auth/authorization_manager_test.cpp | |
parent | 667648a2d9e97ca0ecf995e89eba75fd3e70a08c (diff) | |
download | mongo-eb46cc62a0d6e08e2cabc0862490d76f2833e8b1.tar.gz |
SERVER-9518 Store delegatable roles list in User object in memory
Diffstat (limited to 'src/mongo/db/auth/authorization_manager_test.cpp')
-rw-r--r-- | src/mongo/db/auth/authorization_manager_test.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mongo/db/auth/authorization_manager_test.cpp b/src/mongo/db/auth/authorization_manager_test.cpp index a053c9c7cc7..b5d86841923 100644 --- a/src/mongo/db/auth/authorization_manager_test.cpp +++ b/src/mongo/db/auth/authorization_manager_test.cpp @@ -562,7 +562,7 @@ namespace { "credentials" << BSON("MONGODB-CR" << "password") << "roles" << BSON_ARRAY(BSON("name" << "clusterAdmin" << "source" << "admin" << - "canDelegate" << false << + "canDelegate" << true << "hasRole" << true))))); User* v2read; @@ -576,6 +576,7 @@ namespace { ASSERT_EQUALS("test", roleName.getDB()); ASSERT_EQUALS("read", roleName.getRole()); ASSERT_FALSE(it.more()); + ASSERT(!v2read->canDelegateRole(roleName)); ActionSet actions = v2read->getActionsForResource("test"); ASSERT(actions.contains(ActionType::find)); ASSERT_FALSE(actions.contains(ActionType::insert)); @@ -597,6 +598,13 @@ namespace { ASSERT_EQUALS("admin", roleName.getDB()); ASSERT_EQUALS("clusterAdmin", roleName.getRole()); ASSERT_FALSE(it.more()); + it = v2cluster->getDelegatableRoles(); + ASSERT(it.more()); + roleName = it.next(); + ASSERT_EQUALS("admin", roleName.getDB()); + ASSERT_EQUALS("clusterAdmin", roleName.getRole()); + ASSERT_FALSE(it.more()); + ASSERT(v2cluster->canDelegateRole(roleName)); actions = v2cluster->getActionsForResource("*"); ASSERT(actions.contains(ActionType::listDatabases)); ASSERT(actions.contains(ActionType::dropDatabase)); |