diff options
author | Andy Schwerin <schwerin@10gen.com> | 2013-10-18 15:03:39 -0400 |
---|---|---|
committer | Andy Schwerin <schwerin@10gen.com> | 2013-10-18 15:03:39 -0400 |
commit | d88fa196ad24d2061ae29e608106b2d075485bdb (patch) | |
tree | 41ca4611cfe795241b6d21245474350928956dbf /src/mongo/db/auth/authz_manager_external_state_mock.cpp | |
parent | ee36f600438b349a2325bb12dcdaa7ea238053e7 (diff) | |
download | mongo-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.cpp | 15 |
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; |