启用用户访问控制后,MongoDB身份验证失败

时间:2018-11-20 22:39:00

标签: mongodb

我在Windows Server 2016标准中使用最新的MongoDB,试图设置身份验证。这是我要遵循的步骤。

# mongod --port 27017 --dbpath /data/db1
# mongo --port 27017
# use admin



     db.createUser(
          {
            user: "myUserAdmin",
            pwd: "abc123",
            roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
          }
        )

# mongod --auth --port 27017 --dbpath /data/db1

# use admin

# db.auth("myUserAdmin", "abc123" )

after all I got 

    C:\Program Files\MongoDB\Server\4.0\bin>mongo
    MongoDB shell version v4.0.3
    connecting to: mongodb://127.0.0.1:27017
    Implicit session: session { "id" : UUID("63f22acf-9f5b-4949-b804-82d141ba2761") }
    MongoDB server version: 4.0.3
    > use admin
    switched to db admin
    > db.auth("myUserAdmin", "abc123" )
    Error: Authentication failed.
    0
    >

请帮助。.我很新

1 个答案:

答案 0 :(得分:0)

创建用户后,您需要重新启动mongod和mongo。使用以下命令重新启动mongod

mongod --auth --port 27017 --dbpath /data/db1

现在打开命令提示符,并使用以下命令连接mongo

mongo --port 27017 -u user_name -p password --authenticationDatabase database_name

现在使用以下命令

use admin
db.auth("myUserAdmin", "abc123" )

也许会对您有帮助。