summaryrefslogtreecommitdiff
path: root/src/mongo/db/auth/authz_manager_external_state_s.cpp
diff options
context:
space:
mode:
authorRandolph Tan <randolph@10gen.com>2015-07-29 17:24:35 -0400
committerRandolph Tan <randolph@10gen.com>2015-08-06 09:58:01 -0400
commit1cfa49411655640a5b1d2da60573c3f01d3c7c38 (patch)
treead5b8f6c570905441a51fb283910125f6ebfae65 /src/mongo/db/auth/authz_manager_external_state_s.cpp
parent1eee2b3a8c079c15ddc79e03e1b1d16b37d427d2 (diff)
downloadmongo-1cfa49411655640a5b1d2da60573c3f01d3c7c38.tar.gz
SERVER-19390 Make config server read commands do read committed
Diffstat (limited to 'src/mongo/db/auth/authz_manager_external_state_s.cpp')
-rw-r--r--src/mongo/db/auth/authz_manager_external_state_s.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/mongo/db/auth/authz_manager_external_state_s.cpp b/src/mongo/db/auth/authz_manager_external_state_s.cpp
index bb62e56168c..b71cf0cf08c 100644
--- a/src/mongo/db/auth/authz_manager_external_state_s.cpp
+++ b/src/mongo/db/auth/authz_manager_external_state_s.cpp
@@ -69,7 +69,8 @@ Status AuthzManagerExternalStateMongos::getStoredAuthorizationVersion(OperationC
// that runs this command
BSONObj getParameterCmd = BSON("getParameter" << 1 << authSchemaVersionServerParameter << 1);
BSONObjBuilder builder;
- const bool ok = grid.catalogManager()->runReadCommand("admin", getParameterCmd, &builder);
+ const bool ok =
+ grid.catalogManager()->runUserManagementReadCommand("admin", getParameterCmd, &builder);
BSONObj cmdResult = builder.obj();
if (!ok) {
return Command::getStatusFromCommandResult(cmdResult);
@@ -94,7 +95,8 @@ Status AuthzManagerExternalStateMongos::getUserDescription(OperationContext* txn
<< userName.getDB())) << "showPrivileges" << true
<< "showCredentials" << true);
BSONObjBuilder builder;
- const bool ok = grid.catalogManager()->runReadCommand("admin", usersInfoCmd, &builder);
+ const bool ok =
+ grid.catalogManager()->runUserManagementReadCommand("admin", usersInfoCmd, &builder);
BSONObj cmdResult = builder.obj();
if (!ok) {
return Command::getStatusFromCommandResult(cmdResult);
@@ -123,7 +125,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescription(const RoleName& roleN
<< roleName.getRole() << AuthorizationManager::ROLE_DB_FIELD_NAME
<< roleName.getDB())) << "showPrivileges" << showPrivileges);
BSONObjBuilder builder;
- const bool ok = grid.catalogManager()->runReadCommand("admin", rolesInfoCmd, &builder);
+ const bool ok =
+ grid.catalogManager()->runUserManagementReadCommand("admin", rolesInfoCmd, &builder);
BSONObj cmdResult = builder.obj();
if (!ok) {
return Command::getStatusFromCommandResult(cmdResult);
@@ -150,7 +153,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescriptionsForDB(const std::stri
BSONObj rolesInfoCmd = BSON("rolesInfo" << 1 << "showPrivileges" << showPrivileges
<< "showBuiltinRoles" << showBuiltinRoles);
BSONObjBuilder builder;
- const bool ok = grid.catalogManager()->runReadCommand(dbname, rolesInfoCmd, &builder);
+ const bool ok =
+ grid.catalogManager()->runUserManagementReadCommand(dbname, rolesInfoCmd, &builder);
BSONObj cmdResult = builder.obj();
if (!ok) {
return Command::getStatusFromCommandResult(cmdResult);
@@ -164,7 +168,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescriptionsForDB(const std::stri
bool AuthzManagerExternalStateMongos::hasAnyPrivilegeDocuments(OperationContext* txn) {
BSONObj usersInfoCmd = BSON("usersInfo" << 1);
BSONObjBuilder builder;
- const bool ok = grid.catalogManager()->runReadCommand("admin", usersInfoCmd, &builder);
+ const bool ok =
+ grid.catalogManager()->runUserManagementReadCommand("admin", usersInfoCmd, &builder);
if (!ok) {
// If we were unable to complete the query,
// it's best to assume that there _are_ privilege documents. This might happen