zoukankan      html  css  js  c++  java
  • MongoDB用户权限管理

    前提条件:具备管理员账号

    注意:MongoDB原生特性:账号都在特定的库里认证,不像mysql使用全局认证,也就是说登录时mysql不需指定认证的库,而mongo的账号在特定的库中,admin库或者普通库,因此登录时需指定--authenticationDatabase <dbname>  指定创建User的数据库;在特定的数据库中创建User,该DB就是User的authentication database。在连接mongo时,使用参数 --authenticationDatabase,会认证 -u 和 -p 参数指定的账户和密码。如果没有指定验证数据库,mongo使用连接字符串中指定的DB作为验证数据块。

    ---

    查看所有用户

    use admin  /使用admin库

    show users

    ---

    创建只读用户

    use admin  /使用admin库

    db.createUser({user:'readonly',pwd:'123456',roles:['readAnyDatabase']})  /创建具有所有库只读的readonly账号。

    ---

    创建读写用户

    use admin  /使用admin库

    db.createUser({user:'rw',pwd:'123456',roles:['readWriteAnyDatabase']})  /创建具有所有库读写的账号。

    ---

    创建单库只读,读写用户

    use admin  /使用admin库,也可以在use 单库,这样登录时需使用该库做认证

    db.createUser({user: "readonly2", pwd: "123456", roles: [{ role: "readWrite", db: "account_openid_0" }]})  /创建单库只读账号

    db.createUser({user: "readonly3", pwd: "123456", roles: [{ role: "read", db: "cash_guild_room_flow" }]})  /创建单库读写账号

    ---

    更新用户权限

    use admin  /使用admin库

    db.updateUser("readonly2",{roles:[ {role:"read",db:"testDB"} ]})  /修改单库权限为只读

    ---

    增加用户权限

    use admin  /使用admin库

    db.grantRolesToUser("rw", [{role:"readWrite", db:"audit_admin_op_log"}])   /给rw用户增加单库读写权限

     

  • 相关阅读:
    [LeetCode]4Sum
    [LeetCode]3Sum
    [LeetCode]Two Sum
    [LeetCode]Maximal Rectangle
    [LeetCode]Largest Rectangle in Histogram
    [LeetCode]Sudoku Solver
    [LeetCode]Group Anagrams
    jQuery验证控件jquery.validate.js使用说明+中文API
    js操作cookie,实现登录密码保存
    Java中getResourceAsStream的用法
  • 原文地址:https://www.cnblogs.com/normanlin/p/13754766.html
Copyright © 2011-2022 走看看