Hay un super UNIX como usuario «root» para MongoDB? He estado mirando http://docs.mongodb.org/manual/reference/user-privileges/ y he probado muchas combinaciones, pero todos ellos parecen a la falta en un área o en otra. No hay duda de que es un papel que está por encima de todos los de la lista no.

InformationsquelleAutor No_name | 2013-11-21

5 Comentarios

  1. 76

    Mientras que fuera de la caja, MongoDb no tiene autenticación, puede crear el equivalente de un root/superusuario mediante el uso de la «cualquiera» roles a un usuario específico para el admin de la base de datos.

    Algo como esto:

    use admin
    db.addUser( { user: "<username>",
              pwd: "<password>",
              roles: [ "userAdminAnyDatabase",
                       "dbAdminAnyDatabase",
                       "readWriteAnyDatabase"
    
    ] } )

    Actualización 2.6+

    Mientras que hay una nueva raíz usuario en 2.6, usted puede encontrar que no satisface sus necesidades, ya que todavía tiene un par de limitaciones:

    Proporciona acceso a las operaciones y todos los recursos de la
    readWriteAnyDatabase, dbAdminAnyDatabase, userAdminAnyDatabase y
    clusterAdmin funciones combinadas.

    raíz no incluye el acceso a las colecciones que comienzan con la
    sistema. prefijo.

    Actualización 3.0+

    Uso db.createUser como db.addUser fue eliminado.

    • addUser está en desuso desde 2.6 en 3.2.3 he utilizado db.createUser
    • desde este enlaceChanged in version 3.0.7: The root has validate action on system. collections. Previously, root does not include any access to collections that begin with the system. prefix other than system.indexes and system.namespaces.
    • Algunos de error : db.createUser({ usuario: «dev1», pwd: «pase», papeles de: [ { papel: «userAdminAnyDatabase», db: «xxxxxxx» } ] }); 2018-02-26T16:59:28.688+0500 E CONSULTA [thread1] Error: no se pudo agregar usuario: No función con el nombre [email protected] : [email protected]/mongo/shell/utils.js:25:13 [email protected]/mongo/shell/db.js:1267:15 @(shell):1:1
    • Prefiero @Jerry ‘s respuesta sobre esto.
  2. 68

    El mejor de superusuario papel sería el raíz.La Sintaxis es:

    use admin
    
    db.createUser(
    {
        user: "root",
        pwd: "password",
        roles: [ "root" ]
    })

    Para más detalles mirar las funciones incorporadas.

    Espero que esto ayude !!!

    • gracias – el administrador de la base de datos es la conexión de la base de datos aquí
    • esta debe ser la respuesta correcta, gracias.
    • Veo a algunas personas usan el ‘db’ en ‘papeles’ de la propiedad. Así que, ¿qué pasa si no tenemos ‘db’ ? He creado el usuario y he asignado la función de ‘root’, pero db : ‘admin’ y ahora no puedo acceder a la colección en el uso de la mangosta. se puede mostrar cómo solucionar eso ya que soy nuevo con este tipo de tecnología.
  3. 20

    Mongodb gestión de usuarios:

    lista de funciones:

    read
    readWrite
    dbAdmin
    userAdmin
    clusterAdmin
    readAnyDatabase
    readWriteAnyDatabase
    userAdminAnyDatabase
    dbAdminAnyDatabase

    crear usuario:

    db.createUser(user, writeConcern)
    
    db.createUser({ user: "user",
      pwd: "pass",
      roles: [
        { role: "read", db: "database" } 
      ]
    })

    actualización de usuario:

    db.updateUser("user",{
      roles: [
        { role: "readWrite", db: "database" } 
      ]
    })

    drop user:

    db.removeUser("user")

    o

    db.dropUser("user")

    vista de los usuarios:

    db.getUsers();

    más información: https://docs.mongodb.com/manual/reference/security/#read

    • db.createUser({ usuario: «dev1», pwd: «pase», papeles de: [ { papel: «userAdminAnyDatabase», db: «xxxxxxx» } ] }); 2018-02-26T16:59:28.688+0500 E CONSULTA [thread1] Error: no se pudo agregar usuario: No función con el nombre [email protected] : [email protected]/mongo/shell/utils.js:25:13 [email protected]/mongo/shell/db.js:1267:15 @(shell):1:1
    • stackoverflow.com/a/20547852/4652706 ver esto.
    • consulta: db.createUser({ user: "dev1", pwd: "pass", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] }); resultado: Successfully added user: { "user" : "user", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
    • uso de administración de base de datos de su [email protected]
    • Han creado userAdminAnyDatabase regla en el sistema o Que ya estaba allí ? Por qué no está en mi sistema. Estoy usando centOS 7
  4. 6

    Hay un Superusuario Funciones: raíz, que es una de las Funciones incorporadas, puede satisfacer su necesidad.

    • Sí, y sólo para el registro, la root papel fue introducido en MongoDB 2.6.
  5. -1

    «userAdmin es, efectivamente, el papel de superusuario para una base de datos específica. Los usuarios con userAdmin puede concederse a sí mismos de todos los privilegios. Sin embargo, userAdmin no autoriza explícitamente a un usuario para que ninguno de los privilegios más allá de la administración de usuarios.» de el enlace que has publicado

Dejar respuesta

Please enter your comment!
Please enter your name here