2017-01-08 6 views
1

もう1つの答えはCan't connect to MongoDB with authentication enabledです。私はそれを試しましたが、まだできます;私の設定が間違っているのを理解しません。認証でmongodbに接続できません。

私は、インストール後にサービス

まずとしてインストールのUbuntu 14.04、モンゴ3.4.1(最新)を使用

私はちょうどそのドキュメントhereのように、このコマンドを実行します。それはSuccessfully added userを返し

mongo --port 27017 
use admin 
db.createUser({user: "adminUser",pwd: "abc123",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]}) 

。接続するsudo service mongod restart

試し:それから私はのmongodサーバーを/etc/mongod.conf

storage: 
    dbPath: /var/lib/mongodb 
    journal: 
    enabled: true 

systemLog: 
    destination: file 
    logAppend: true 
    path: /var/log/mongodb/mongod.log 

net: 
    port: 27017 
    bindIp: 127.0.0.1 

security: 
    authorization: enabled 

保存を再設定し、再起動、私はコマンドuse testDatabaseで別のデータベースに変更した場合、その後、成功しているmongo -u "adminUser" -p "abc123" --authenticationDatabase "admin"

、Iそれに何らかの操作を行うことはできません。

use testDatabase 
db.createCollection("people") 

結果:

{ 
    "ok" : 0, 
    "errmsg" : "not authorized on testDatabase to execute command { create: \"people\" }", 
    "code" : 13, 
    "codeName" : "Unauthorized" 
} 

ここでは、userAdminAnyDatabase役割はもう動作しないか、私の設定に何か問題があると思われ、私のデータベース内に登録されたユーザー

use admin 
db.system.users.find() 
{ "_id" : "admin.adminUser", 
    "user" : "adminUser", 
    "db" : "admin", 
    "credentials" : { "SCRAM-SHA-1" : {....} }, 
    "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] 
} 

のですか?

答えて

1

ロールで組み込むUserAdmin & UserAdminAnyDatabaseロールでは、データベースにユーザーとロールを作成できます。

データベースの読み取り/読み取り書き込み操作では、そのデータベースの役割がread/readWriteのユーザーを作成する必要があります。

その他のオプションは、現在のユーザーにロールを追加することです。

たとえば、次のようなものです。

use test 
db.createUser(
    { 
    user: "myTester", 
    pwd: "xyz123", 
    roles: [ { role: "readWrite", db: "test" }, 
      { role: "read", db: "reporting" } ] 
    } 
) 
+0

これは機能しますが、別のデータベース用に別のユーザーを作成する必要がありますか? – DennyHiu

+0

ユースケースによって異なります。どちらにしてもかまいません。詳細はこちら。 https://docs.mongodb.com/manual/reference/built-in-roles/およびhttps://docs.mongodb.com/manual/tutorial/manage-users-and-roles/ – Veeram

関連する問題