summaryrefslogtreecommitdiff
path: root/src/mongo/db/auth
diff options
context:
space:
mode:
authorGregory Wlodarek <gregory.wlodarek@mongodb.com>2020-08-16 21:10:33 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-08-17 01:48:12 +0000
commit3cc779415f2777223b5549d3dfd1b85eef01842b (patch)
treee165efebd7b0d7d83c68f0de5d88d46b3ac2285e /src/mongo/db/auth
parentecd1e0b022a68110ada6517f84ffd91ea8a91bca (diff)
downloadmongo-3cc779415f2777223b5549d3dfd1b85eef01842b.tar.gz
Revert "SERVER-48693 Add network counter for cluster authentication"
This reverts commit 24dd72daae9e4cf59ad51910058bc111f20edbff.
Diffstat (limited to 'src/mongo/db/auth')
-rw-r--r--src/mongo/db/auth/sasl_commands.cpp32
-rw-r--r--src/mongo/db/auth/sasl_mechanism_registry.h9
2 files changed, 10 insertions, 31 deletions
diff --git a/src/mongo/db/auth/sasl_commands.cpp b/src/mongo/db/auth/sasl_commands.cpp
index 81d784e64a3..7f4b1010462 100644
--- a/src/mongo/db/auth/sasl_commands.cpp
+++ b/src/mongo/db/auth/sasl_commands.cpp
@@ -335,26 +335,18 @@ bool runSaslStart(OperationContext* opCtx,
}
std::string principalName;
- try {
- auto session =
- uassertStatusOK(doSaslStart(opCtx, db, cmdObj, &result, &principalName, speculative));
- const bool isClusterMember = session->getMechanism().isClusterMember();
- if (isClusterMember) {
- uassertStatusOK(authCounter.incClusterAuthenticateReceived(mechanismName));
- }
- if (session->getMechanism().isSuccess()) {
+ auto swSession = doSaslStart(opCtx, db, cmdObj, &result, &principalName, speculative);
+
+ if (!swSession.isOK() || swSession.getValue()->getMechanism().isSuccess()) {
+ audit::logAuthentication(
+ client, mechanismName, UserName(principalName, db), swSession.getStatus().code());
+ uassertStatusOK(swSession.getStatus());
+ if (swSession.getValue()->getMechanism().isSuccess()) {
uassertStatusOK(authCounter.incAuthenticateSuccessful(mechanismName));
- if (isClusterMember) {
- uassertStatusOK(authCounter.incClusterAuthenticateSuccessful(mechanismName));
- }
- audit::logAuthentication(
- client, mechanismName, UserName(principalName, db), Status::OK().code());
- } else {
- AuthenticationSession::swap(client, session);
}
- } catch (const AssertionException& ex) {
- audit::logAuthentication(client, mechanismName, UserName(principalName, db), ex.code());
- throw;
+ } else {
+ auto session = std::move(swSession.getValue());
+ AuthenticationSession::swap(client, session);
}
return true;
@@ -416,10 +408,6 @@ bool CmdSaslContinue::run(OperationContext* opCtx,
if (mechanism.isSuccess()) {
uassertStatusOK(
authCounter.incAuthenticateSuccessful(mechanism.mechanismName().toString()));
- if (mechanism.isClusterMember()) {
- uassertStatusOK(authCounter.incClusterAuthenticateSuccessful(
- mechanism.mechanismName().toString()));
- }
}
} else {
AuthenticationSession::swap(client, sessionGuard);
diff --git a/src/mongo/db/auth/sasl_mechanism_registry.h b/src/mongo/db/auth/sasl_mechanism_registry.h
index 0215328d9cb..98f2d8ddae9 100644
--- a/src/mongo/db/auth/sasl_mechanism_registry.h
+++ b/src/mongo/db/auth/sasl_mechanism_registry.h
@@ -155,15 +155,6 @@ public:
}
/**
- * Provides logic for determining if a user is a cluster member or an actual client for SASL
- * authentication mechanisms
- */
- bool isClusterMember() const {
- return _principalName == internalSecurity.user->getName().getUser().toString() &&
- getAuthenticationDatabase() == internalSecurity.user->getName().getDB();
- };
-
- /**
* Performs a single step of a SASL exchange. Takes an input provided by a client,
* and either returns an error, or a response to be sent back.
*/