sql >> データベース >  >> NoSQL >> MongoDB

新しい/別のmongoデータベースにユーザーを追加するには、どのMongoDBユーザー権限が必要ですか?

    間違いは、userAdminAnyDatabaseを使用していたことです。 そうではなかったユーザー 管理者で データベース(このメモを参照)。したがって、必須 adminというデータベースになります あなたのサーバー上で!ドキュメントに「AnyDatabase」特権について記載されているように:

    これらの役割のいずれかをadminデータベースの外部のユーザー特権ドキュメントに追加した場合、特権は効果がありません。

    したがって、次のことを行う必要があります:

    • userAdminAnyDatabaseを追加します admin db

      $ mongo admin
      > db.createUser({ user: "myadmin", pwd: "1234", roles: ["userAdminAnyDatabase"] })
      
    • 認証をオンにする

      auth = true
      setParameter = enableLocalhostAuthBypass=0
      
    • 新しいmyadminを使用して接続します ユーザーを任意のデータベースに追加し、さらにユーザーを追加します:

      $ mongo another -u myadmin -p 1234
      > db.createUser({ user: "user", pwd: "1234", roles: ["readWrite"] })
      

      または

      > use another
      > db.createUser({ user: "user", pwd: "1234", roles: ["readWrite"] })
      


    1. AWSのリージョン間でのMongoDBレプリカセットのデプロイ

    2. casbahmongodbリストをscala/playでjsonに変換する方法

    3. pymongoを使用して値を更新するにはどうすればよいですか?

    4. 32ビット符号付き整数をRedisに格納するためのメモリ効率の高い方法