it-swarm.com.de

Mongodb erhält Fehler beim Erstellen eines neuen Benutzers

Ich habe gerade ein frisches Mongodb auf dem Ubuntu-Server installiert und wenn ich versuche, Benutzer hinzuzufügen, erhalte ich eine Fehlermeldung

db.createUser(
  {
    user: "admin",
    pwd: "[email protected]@33",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)


2018-07-03T13:29:41.556+0530 E QUERY    [thread1] Error: couldn't add user: Use of SCRAM-SHA-256 requires undigested passwords :
[email protected]/mongo/Shell/utils.js:25:13
[email protected]/mongo/Shell/db.js:1437:15
@(Shell):1:1
6
Aman Bansal

Das funktioniert für mich:

db.createUser({  
 user:"test1",
 pwd:"test1",
 roles:[  
  {  
     role:"readWrite",
     db:"u8"
  }
 ],
 mechanisms:[  
  "SCRAM-SHA-1"
 ]
})
19
user9681090

Wenn Sie User Management Methods verwenden, müssen Sie den Parameter passwordDigestor einstellen.

 db.createUser(
  {
    user: "admin",
    pwd: "[email protected]@33",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ],
    passwordDigestor: "<server|client>"
  }
)
8

Gehen Sie mit folgenden Befehlen in Mongo Shell:

use admin
db.createUser({
    user:"admin",
    pwd:"abc123",
    roles:[{role:"userAdminAnyDatabase",db:"admin"}],
    passwordDigestor:"server"
})

Sie können weiter verweisen Authentifizierung aktivieren

5
Abhay Gawade

Siehe die SCRAM-SHA-256-Passworterstellung mit Digest oder Undigest hier

db.createUser(
  {
    user: "admin",
    pwd: "[email protected]@33",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ],
    passwordDigestor : true //if version 4.0 else set it false
  }
)
1
Mohammad Raheem

Ich verwende ein Windows-Subsystem für Linux mit Ubuntu und erhielt diesen Fehler. Manchmal gibt es ein Problem, dass Windows mongod bei exit nicht richtig zu schließen scheint. Daher müssen Sie Ctrl+Shift+Esc in den Task-Manager eingeben und es manuell schließen. 

Wann immer der Mongo etwas Ungewöhnliches zu tun scheint, scheint dies das Problem zu sein.

Führen Sie dann mongod aus. Fügen Sie in einem anderen Terminal Ihren Benutzer erneut hinzu.

Hoffe das hilft jemandem.

0
luckyging3r