[教程]MongoDB从入门到进阶(User系统)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[教程]MongoDB从入门到进阶(User系统),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2440字,纯文字阅读大概需要4分钟。
内容图文
![[教程]MongoDB从入门到进阶(User系统)](/upload/InfoBanner/zyjiaocheng/546/06f9debb936944b2a0bce1514dd0b1bc.jpg)
自从MongoDB升级到2.4之后,User系统,或者说是权限系统有了翻天覆地的变化。 在MongoDB2.4之前的User系统,除了用户名和密码之外,只有一个ReadOnly属性。 如果一个用户在admin数据库里面进行了登陆,则admin数据库里面的Readonly属性将被沿用到其他所有的
自从MongoDB升级到2.4之后,User系统,或者说是权限系统有了翻天覆地的变化。
在MongoDB2.4之前的User系统,除了用户名和密码之外,只有一个ReadOnly属性。
如果一个用户在admin数据库里面进行了登陆,则admin数据库里面的Readonly属性将被沿用到其他所有的数据库。
这样的权限管理当然是最最容易管理的,任何能够登入到MongoDB的用户,如果在Admin的数据库的用户表里面存在记录,则对于整个服务器上的所有数据库的访问权限也就固定下来了。
当然,用户可以了在个别的数据库的用户表中定义自己的权限。所谓的权限也就是只读或者非只读。
到了2.4之后,MongoDB的用户模型发生了很大的变化
MongoUser(2.4之前)
用户名
密码
是否只读
MongoUser(2.4之后)
用户名
密码
角色
其他数据库角色(如果该用户在Admin数据库的User表里面登陆的话,可以个别指定对于具体数据库访问的权限)
外部验证
“角色”这个概念,也“是否只读”比起来,内容丰富多了,不同的角色可以进行的操作是不同的,有的可以管理用户,看得到用户表,有的只能看到普通的数据表。
最近一直在对用户和权限进行研究,总结了一下心得:
1.由于要顾及以前的版本,ReadOnly属性还是可以使用的,不过,ReadOnly和Role是不能共存的
2.密码和外部验证,也是不能共存的,要么用密码验证身份,要么用外部验证数据库来验证身份
3.其他数据库角色只能在Admin里面进行登录。
接下来说说坑爹的C#的驱动程序:C#的驱动程序,对于MongoUser的巨大变化,还没有开始进行对应。自己动手丰衣足食,我现在的开发都是使用自己改写的MongoUser类。
我不是很明白,为什么C#驱动不对应MongoUser的变化,我也不清楚其他语言的驱动程序是否也没有对应。。。。
这里是新的添加用户的GUI
添加了用户后,请不要忘记在启动MongoDB的时候加上 --auth的参数,不然的话,默认是不会启动认证的,不管是谁,都是完全的Admin的权限。
如果对于我的GUI工具感兴趣,Github上面有所有的代码
https://github.com/magicdict/MagicMongoDBTool
这次工具开始尝试提供性能监视工具,当然,只是一个小的尝试罢了。
再说几句题外话,最近IBM宣布和10gen(MongoDB的开发公司)进行合作。我不知道IBM准备多大限度的支持MongoDB。但是不管怎么说,,对于MongoDB的爱好者来说,是一个不错的消息。
MongoDB现在还是冷门的数据库。园子里面也少有介绍MongoDB的文章,或者即使介绍,也是入门级别的。
技术就像赌博一样,谁知道明年的这个时候,Mongo是不是会大红大紫,成为另一个Oracle。不管怎么样,先投资一下吧。。。。。
想要直接体验工具的: Net3.5是必须的。。。。
内容总结
以上是互联网集市为您收集整理的[教程]MongoDB从入门到进阶(User系统)全部内容,希望文章能够帮你解决[教程]MongoDB从入门到进阶(User系统)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。