From f11a31e0a902b7c4168747fe977e56a40a89f0c5 Mon Sep 17 00:00:00 2001 From: Jakub Vrana Date: Tue, 9 Feb 2021 16:13:28 +0100 Subject: [PATCH] MongoDB: Modern extension doesn't allow connecting with random user/password --- adminer/drivers/mongo.inc.php | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/adminer/drivers/mongo.inc.php b/adminer/drivers/mongo.inc.php index 02941bc4..74163daa 100644 --- a/adminer/drivers/mongo.inc.php +++ b/adminer/drivers/mongo.inc.php @@ -381,7 +381,16 @@ if (isset($_GET["mongo"])) { function connect($uri, $options) { try { - return new MongoClient($uri, $options); + $this->_link = new MongoClient($uri, $options); + if ($options["password"] != "") { + $options["password"] = ""; + try { + new MongoClient($uri, $options); + $this->error = lang('Database does not support password.'); + } catch (Exception $e) { + // this is what we want + } + } } catch (Exception $e) { $this->error = $e->getMessage(); } @@ -634,14 +643,6 @@ if (isset($_GET["mongo"])) { if ($connection->error) { return $connection->error; } - if ($password != "") { - $options["password"] = ""; - $connection2 = new Min_DB; - $connection2->connect("mongodb://$server", $options); - if (!$connection2->error) { - return lang('Database does not support password.'); - } - } return $connection; }