Я пытаюсь настроить NoSQL log4j, прилагаемый для работы с MongoDB, но у меня возникли проблемы с аутентификацией с моей вновь созданной учетной записью.Ошибка аутентификации mongodb log4j2
Я создал следующий пользователю:
use admin
db.createUser({
user: "loguser1",
pwd: "logpassword",
roles: ["readWrite", "dbAdmin"]
})
И, я могу подключиться с помощью:
mongo - u loguser1 - p logpassword
Но, когда log4 j2 пытается соединиться, я получаю следующее сообщение об ошибке в mongod:
2015-03-31T13:08:24.137-0500 I NETWORK [initandlisten] connection accepted from 127.0.0.1:63098 #9 (2 connections now open)
2015-03-31T13:08:24.161-0500 I NETWORK [initandlisten] connection accepted from 127.0.0.1:63099 #10 (3 connections now open)
2015-03-31T13:08:24.166-0500 I ACCESS [conn10] authenticate db: test { authenticate: 1, user: "loguser1", nonce: "xxx", key: "xxx" }
2015-03-31T13:08:24.167-0500 I ACCESS [conn10] Failed to authenticate [email protected] with mechanism MONGODB-CR: AuthenticationFailed MONGODB-CR credentials missing in the user document
2015-03-31T13:08:25.410-0500 I NETWORK [conn10] end connection 127.0.0.1:63099 (2 connections now open)
2015-03-31T13:08:25.411-0500 I NETWORK [conn9] end connection 127.0.0.1:63098 (2 connections now open)
А вот мой (фрагмент правильно отформатированный) log4j2.yml:
Configuration:
status: info
Appenders:
\t NoSql:
name: Mongo
MongoDb:
databaseName: test
server: localhost
username: loguser1
password: logpassword
Должно быть, я делаю что-то глупое, я надеюсь, что кто-то из вас сможет это увидеть. Спасибо, что посмотрели!
EDIT: Я потратил еще некоторое время, ударяя головой о клавиатуру, и попробовал вернуться к MongoDb 2.6.9 (я пытался использовать 3.0) и потратил свое время на настройку учетной записи администратора и пользователя (http://docs.mongodb.org/v2.6/tutorial/add-user-administrator/) и, похоже, он работает. Я не на 100% положителен, но я не уверен, работает ли log4j2, как указано выше, с MongoDB 3.0 (или, возможно, я закрыл свои учетные записи пользователей).
Глядя на ваш ответ, и что я сделал 2-й раз, когда я настроенную базу данных, я заверил что ты прав. Пользователь, которого я пытался аутентифицировать, не был в этой базе данных. Маркировка как решена, спасибо! – Andrew