Я установил MongoDB для моего исследования, и я создал для DBS: MYDB, рабочие местааутентификация пользователя MongoDB выполнение действий
Я создал пользователя:
db.createUser({ user: "devdbuser", pwd: "123456", roles: [ "readWrite" ] })
Тогда в моем Jave кода я пытаюсь:
MongoClient client = new MongoClient(Arrays.asList(new ServerAddress[] { new ServerAddress("localhost", 27017)}),
Arrays.asList(new MongoCredential[] { MongoCredential.createMongoCRCredential("devdbuser", "mydb", "123456".toCharArray()) }));
DB myDB = client.getDB("jobs"); // Here I get the jobs DB with user I created for 'mydb'
DBCollection collection = myDB.getCollection("myfirstcollection");
collection.insert((DBObject)JSON.parse("{\"name\": \"First user\", \"email\": \"[email protected]\"}"));
client.close();
Обратите внимание, что когда я создаю MongoClient, я прошу подключиться к «mydb», и я предоставляю учетные данные для созданного пользователя. Но когда я беру DB задания и пытаюсь вставить данные в коллекцию, все работает хорошо.
Я ожидал бы ошибки, что у пользователя нет привилегий, я что-то упустил?
Благодарим за помощь.