を挿入することができ、読み取りの役割とモンゴでユーザーを作成しは私がrobomongoにログインしたときのみ、 は、私は挿入しても、TEST2データベースに新しいコレクションを作成することができます読み取りアクセス権を持つこのデータベースのモンゴでユーザーを作成しました
どうかしましたか?
use test2
db.createUser(
{
user: "user",
pwd: "123",
roles: [ "read"]
}
)
を挿入することができ、読み取りの役割とモンゴでユーザーを作成しは私がrobomongoにログインしたときのみ、 は、私は挿入しても、TEST2データベースに新しいコレクションを作成することができます読み取りアクセス権を持つこのデータベースのモンゴでユーザーを作成しました
どうかしましたか?
use test2
db.createUser(
{
user: "user",
pwd: "123",
roles: [ "read"]
}
)
あなたのmongod
でまだ認証を有効にしていないと思います。 ユーザーの権限に基づいてユーザーを制限するには、認証を有効にする必要があります。 documentation(emphasis mine)から:
MongoDBデプロイメントでアクセスコントロールを有効にすると、認証が強制され、ユーザーは自分自身を識別する必要があります。 アクセス制御が有効になっているMongoDBデプロイメントにアクセスすると、ユーザーは自分の役割によって決定されたアクションのみを実行できます。だから、
、あなたはmongod
に--auth
フラグを追加して、それを起動し、あなたがRoboMongoまたはシェルまたはどこでも他経由で接続したときに、ユーザーが唯一のtest2
のアクセス(および他のシステムを読んだことがあるかどうread
がアクセスを許可するデータベース)。 mongod
を実行している間、そのフラグを有効にしたままにしておきたい場合は、--auth
フラグを指定して実行する前に、そのドキュメントに指定されている管理者ユーザーを作成することをお勧めします。
複数の役割とユーザー、試行錯誤の方法を3日間で作成して読み、テストした後、私の質問に答えて時間を節約していただき、ありがとうございます。 乾杯! –
ヒーロー!レプリカセットのすべてのメンバーで有効にしていなかったことを忘れてしまった –