summaryrefslogtreecommitdiff
path: root/src/mongo/db/auth/authz_manager_external_state_mock.cpp
diff options
context:
space:
mode:
authorAndy Schwerin <schwerin@10gen.com>2013-10-18 15:03:39 -0400
committerAndy Schwerin <schwerin@10gen.com>2013-10-18 15:03:39 -0400
commitd88fa196ad24d2061ae29e608106b2d075485bdb (patch)
tree41ca4611cfe795241b6d21245474350928956dbf /src/mongo/db/auth/authz_manager_external_state_mock.cpp
parentee36f600438b349a2325bb12dcdaa7ea238053e7 (diff)
downloadmongo-d88fa196ad24d2061ae29e608106b2d075485bdb.tar.gz
SERVER-9516 Support for determining and examining the version of the auth schema in durable storage.
Diffstat (limited to 'src/mongo/db/auth/authz_manager_external_state_mock.cpp')
-rw-r--r--src/mongo/db/auth/authz_manager_external_state_mock.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/mongo/db/auth/authz_manager_external_state_mock.cpp b/src/mongo/db/auth/authz_manager_external_state_mock.cpp
index 9a4feed74be..8002baa577e 100644
--- a/src/mongo/db/auth/authz_manager_external_state_mock.cpp
+++ b/src/mongo/db/auth/authz_manager_external_state_mock.cpp
@@ -84,10 +84,23 @@ namespace {
return Status::OK();
}
+ Status AuthzManagerExternalStateMock::getStoredAuthorizationVersion(int* outVersion) {
+ if (_authzVersion < 0) {
+ return Status(ErrorCodes::UnknownError,
+ "Mock configured to fail getStoredAuthorizationVersion()");
+ }
+ *outVersion = _authzVersion;
+ return Status::OK();
+ }
+
Status AuthzManagerExternalStateMock::getUserDescription(
const UserName& userName, BSONObj* result) {
BSONObj privDoc;
- Status status = getPrivilegeDocument(userName, 2, &privDoc);
+ Status status = _findUser(
+ "admin.system.users",
+ BSON(AuthorizationManager::USER_NAME_FIELD_NAME << userName.getUser() <<
+ AuthorizationManager::USER_SOURCE_FIELD_NAME << userName.getDB()),
+ &privDoc);
if (!status.isOK())
return status;