MongoDBの「root」ユーザーのようなスーパーUNIXはありますか?私は http://docs.mongodb.org/manual/reference/user-privileges/ を見て、多くの組み合わせを試しましたが、それらはすべて、あるエリアまたは他のエリアに欠けているようです。確かにそこにリストされているものよりも上の役割があります。
初期状態では、MongoDbには認証がありませんが、admin
データベースに対する特定のユーザーに「any」ロールを使用することで、ルート/スーパーユーザーに相当するものを作成できます。
このようなもの:
use admin
db.addUser( { user: "<username>",
pwd: "<password>",
roles: [ "userAdminAnyDatabase",
"dbAdminAnyDatabase",
"readWriteAnyDatabase"
] } )
2.6には新しい root ユーザーがいますが、まだいくつかの制限があるため、ニーズに合わない場合があります。
ReadWriteAnyDatabase、dbAdminAnyDatabase、userAdminAnyDatabase、clusterAdminロールを組み合わせた操作とすべてのリソースへのアクセスを提供します。
ルートには、システムで始まるコレクションへのアクセスは含まれません。プレフィックス。
db.createUser
が削除されたため、db.addUser
を使用します。
root には、上記の制限がなくなりました。
ルートには、システム上で権限の検証アクションがあります。コレクション。以前は、ルートにはシステムで始まるコレクションへのアクセスは含まれていません。 system.indexesおよびsystem.namespaces以外のプレフィックス。
Mongodbユーザー管理:
役割リスト:
read
readWrite
dbAdmin
userAdmin
clusterAdmin
readAnyDatabase
readWriteAnyDatabase
userAdminAnyDatabase
dbAdminAnyDatabase
ユーザーの作成:
db.createUser(user, writeConcern)
db.createUser({ user: "user",
pwd: "pass",
roles: [
{ role: "read", db: "database" }
]
})
ユーザーの更新:
db.updateUser("user",{
roles: [
{ role: "readWrite", db: "database" }
]
})
drop user:
db.removeUser("user")
または
db.dropUser("user")
ユーザーの表示:
db.getUsers();
スーパーユーザーの役割があります: root (組み込みの役割)は、あなたのニーズを満たすかもしれません。