Q - Не удается аутентифицироваться через драйвер Mongo Java. Все отлично работает на оболочке монго.Проверка подлинности Java-драйвера MongoDB - ошибка несоответствия версии?
MongoDB Server Version -
db version v3.2.6
Java MongoDB Driver Maven зависимостей
version 2.6.2
Это то, что я сделал -
- Начало MongoDB - Суд mongod --port 27017 --dbpath/данные/дб
- Открытая оболочка - Монго --port 27017
- использование админы
- db.createUser ({пользователь: "а", PWD: "а »роли: [{роль: "корень", дб: "админы"}]})
- Restart с AUTH требуется - Суд mongod --auth --port 27017 --dbpath/данные/дб
Сторона со стороны Java
MongoOptions moptions = new MongoOptions();
moptions.autoConnectRetry = Boolean.getBoolean(prop.getProperty("MONGO_OPTIONS_AUTOCONNECT_RETRY"));
moptions.connectionsPerHost = Integer.parseInt(prop.getProperty("MONGO_OPTIONS_CONNECTIONS_PER_HOST"));
moptions.threadsAllowedToBlockForConnectionMultiplier = Integer.parseInt(prop.getProperty("MONGO_OPTIONS_THREADS_BLOCK"));
ServerAddress srvAddr = new ServerAddress(prop.getProperty("MONGODB_HOST"), Integer.parseInt(prop.getProperty("MONGODB_PORT")));
client = new Mongo(srvAddr, moptions);
DB adminDB = client.getDB("admin");
Boolean auth = adminDB.authenticate("abc", "abc".toCharArray());
Результат
аутентификации всегда выходит FALSE.
MongoCredential только с Mongodb версия 2.11 – abipc
Модернизация - это правильный путь. Tnx. – abipc