[教程]MongoDB 从入门到进阶 (User系统)

自从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是不能共存的

阶跃AI 阶跃AI

阶跃星辰旗下AI智能问答搜索助手

阶跃AI 291 查看详情 阶跃AI

2.密码和外部验证,也是不能共存的,要么用密码验证身份,要么用外部验证数据库来验证身份

3.其他数据库角色只能在Admin里面进行登录。

接下来说说坑爹的C#的驱动程序:C#的驱动程序,对于MongoUser的巨大变化,还没有开始进行对应。自己动手丰衣足食,我现在的开发都是使用自己改写的MongoUser类。

我不是很明白,为什么C#驱动不对应MongoUser的变化,我也不清楚其他语言的驱动程序是否也没有对应。。。。

这里是新的添加用户的GUI

[教程]MongoDB 从入门到进阶 (User系统)

添加了用户后,请不要忘记在启动MongoDB的时候加上 –auth的参数,不然的话,默认是不会启动认证的,不管是谁,都是完全的Admin的权限。

如果对于我的GUI工具感兴趣,Github上面有所有的代码

https://github.com/magicdict/MagicMongoDBTool

这次工具开始尝试提供性能监视工具,当然,只是一个小的尝试罢了。

[教程]MongoDB 从入门到进阶 (User系统)

再说几句题外话,最近IBM宣布和10gen(MongoDB的开发公司)进行合作。我不知道IBM准备多大限度的支持MongoDB。但是不管怎么说,,对于MongoDB的爱好者来说,是一个不错的消息。

MongoDB现在还是冷门的数据库。园子里面也少有介绍MongoDB的文章,或者即使介绍,也是入门级别的。

技术就像赌博一样,谁知道明年的这个时候,Mongo是不是会大红大紫,成为另一个Oracle。不管怎么样,先投资一下吧。。。。。

想要直接体验工具的:   Net3.5是必须的。。。。

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/532163.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 11:07:29
下一篇 2025年11月9日 11:13:45

相关推荐

  • 为什么多年的经验让我选择全栈而不是平均栈

    在全栈和平均栈开发方面工作了 6 年多,我可以告诉您,虽然这两种方法都是流行且有效的方法,但它们满足不同的需求,并且有自己的优点和缺点。这两个堆栈都可以帮助您创建 Web 应用程序,但它们的实现方式却截然不同。如果您在两者之间难以选择,我希望我在两者之间的经验能给您一些有用的见解。 在这篇文章中,我…

    2025年12月24日
    000
  • 从初学到专业:掌握这五种前端CSS框架

    CSS是网站设计中重要的一部分,它控制着网站的外观和布局。前端开发人员为了让页面更加美观和易于使用,通常使用CSS框架。这篇文章将带领您了解这五种前端CSS框架,从入门到精通。 Bootstrap Bootstrap是最受欢迎的CSS框架之一。它由Twitter公司开发,具有可定制的响应式网格系统、…

    2025年12月24日
    200
  • CSS开发进阶秘籍:项目经验教你提升开发技能

    CSS开发是前端工程师不可或缺的一项技能。随着前端技术的不断发展,CSS也在不断更新和演进。想要成为一名优秀的CSS开发者,除了掌握基本的CSS语法和属性之外,还需要不断提升自己的实战经验和技巧。 本文将分享一些项目经验,帮助你进一步提升CSS开发技能。 一、充分利用CSS预处理器CSS预处理器可以…

    2025年12月24日
    000
  • CSS动画教程:手把手教你实现脉冲特效

    CSS动画教程:手把手教你实现脉冲特效,需要具体代码示例 引言:CSS动画是网页设计中常用的一种效果,它可以为网页增添活力和视觉吸引力。本篇文章将带您深入了解如何利用CSS实现脉冲特效,并提供具体的代码示例教您一步步完成。 一、了解脉冲特效脉冲特效是一种循环变化的动画效果,通常用在按钮、图标或其他元…

    2025年12月24日
    000
  • CSS动画教程:手把手教你实现流水流光特效

    CSS动画教程:手把手教你实现流水流光特效,需要具体代码示例 前言:CSS动画是网页设计中常用的技术,它使得网页更生动有趣,吸引用户的注意力。在这篇教程中,我们将会学习如何使用CSS实现一个流水流光的特效,并提供具体的代码示例。让我们开始吧! 第一步:HTML结构首先,我们需要创建一个基本的HTML…

    2025年12月24日
    000
  • 初学者如何快速入门CSS3技术

    初学者如何快速入门CSS3技术 CSS3是一种用于网页设计的样式表语言,它为开发者提供了丰富的样式特性和效果。对于初学者来说,学习CSS3技术可能会感觉困难和复杂,但只要掌握了基本的概念和语法,就能快速入门并开始使用CSS3来设计出令人印象深刻的网页。 本文将以简单明了的方式介绍CSS3的一些基本概…

    2025年12月24日
    000
  • word-wrap怎么自动换行?css强行自动换行教程

    本篇文章给大家带来的内容是关于word-wrap怎么自动换行?css强行自动换行教程,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 word-wrap介绍 word-wrap是设置对象内文字遇到对象顶边时是否采取换行排版布局。 1、语法 立即学习“前端免费学习笔记(深入)”; wo…

    2025年12月24日
    000
  • 用CSS实现网站变黑白色

    这篇文章主要介绍了关于用css实现网站变黑白色,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 以下为全站CSS代码.  html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); } 使用方法:这段…

    好文分享 2025年12月24日
    000
  • 详解css加载会造成阻塞吗_CSS教程_CSS_网页制作

    这次给大家带来详解css加载会造成阻塞吗,css加载造成阻塞的注意事项有哪些,下面就是实战案例,一起来看一下。 终于考试完了,今天突然想起来前阵子找实习的时候,今日头条面试官问我,js执行会阻塞DOM树的解析和渲染,那么css加载会阻塞DOM树的解析和渲染吗?所以,接下来我就来对css加载对DOM树…

    2025年12月24日 好文分享
    000
  • 关于CSS3中选择符的实例详解

    英文原文: www.456bereastreet.com/archive/200601/css_3_selectors_explained/中文翻译: www.dudo.org/article.asp?id=197注:本文写于2006年1月,当时IE7、IE8和Firefox3还未发行,文中所有说的…

    好文分享 2025年12月23日
    000
  • 阐述什么是CSS3?

    网页制作Webjx文章简介:CSS3不是新事物,更不是只是围绕border-radius属性实现的圆角。它正耐心的坐在那里,已经准备好了首次登场,呷着咖啡,等着浏览器来铺上红地毯。            CSS3不是新事物,更不是只是围绕border-radius属性实现              …

    好文分享 2025年12月23日
    000
  • CSS教程(三)伪类——动态链接

    伪类可以看做是一种特殊的类选择符,是能被支持css的浏览器自动所识别的特殊选择符。它的最大的用处就是可以对链接在不同状态下定义不同的样式效果。 1.  语法 伪类的语法是在原有的语法里加上一个伪类(pseudo-class):selector:pseudo-class {property: valu…

    2025年12月23日
    000
  • CSS教程(四)如何在网页中插入CSS

    前两章我们了解了css的语法,但要想在浏览器中显示出效果,就要让浏览器识别并调用。当浏览器读取样式表时,要依照文本格式来读,这里介绍四种在页面中插入样式表的方法:链入外部样式表、内部样式表、导入外表样式表和内嵌样式。   链入外部样式表 链入外部样式表是把样式表保存为一个样式表文件,然后在页面中?l…

    2025年12月23日
    000
  • CSS教程(五)如何使用DW4创建CSS

    1. css styles面板 通过前面几章的学习,相信大家对css有了一定的了解,这一章我们来讲解如何利用dreamweaver4来创建css。首先运行dreamweaver4,启动后,选择菜单下的windows->css styles(或按shitf+f11),系统弹出css styles…

    2025年12月23日
    000
  • CSS教程(六) DW4中CSS属性详解

    在dreamweaver4的css样式里包含了w3c规范定义的所有css1的属性,dreamweaver4把这些属性分为type(类型)、background(背景)、block(块)、box(盒子)、border(边框)、 list(列表)、positioning(定位)、extensions(扩…

    2025年12月23日
    000
  • CSS教程(七) 滤镜

    css提供了一些内置的多媒体滤镜特效,使用这种技术可以把可视化的滤镜和转换效果添加到一个标准的html元素上,例如图片、文本容器、以及其他一些对象。dreamweaver4提供了16种滤镜可供选择,如下图: 下面,我们就来看看在dreamweaver4里如何方便的使用这些css滤镜。 建立一个自定义…

    2025年12月23日
    000
  • CSS教程(八) 简单介绍CSS结合JS的运用

    八、 简单介绍css结合js的运用(针对事件动作) 利用css配合javascript的可以做很多更酷的动态页面效果,在本教程的最后给大家简单介绍一下css配合js的应用。首先,我们要搞清楚事件和动作的概念。在客户端脚本中,javascript 通过对事件进行响应来获得与用户的交互。例如,当用户单击…

    2025年12月23日
    000
  • CSS教程(一)初识CSS

    css教程(一)认识css     dreamweaver4是现今最好的网站编辑工具之一,用它来给制作网页的css样式表会更简单、更方便。本教程教你如何利用dreamweaver4在页面中加入css,你不用死记硬背的记代码标记,也不用去看很厚的css手册,你就可以轻松自如的在网页中运用css。不过首…

    2025年12月23日
    000
  • 记事本写完代码后怎么运行html_记事本代码运行html步骤【教程】

    将记事本编写的HTML代码保存为.html格式文件,通过“另存为”选择“所有文件”并添加.html扩展名;2. 双击或右键用浏览器打开该文件即可查看网页效果;3. 也可直接将文件拖拽至浏览器窗口快速预览;4. 熟悉命令行者可用cmd进入文件目录后输入start 文件名.html运行。 如果您已经使用…

    2025年12月23日
    000
  • 记事本的html代码怎么运行_记事本运html代码方法【教程】

    首先用记事本编写HTML代码,输入基础结构如标题和段落;接着在“另存为”时选择保存类型为“所有文件”,文件名设为myweb.html并采用UTF-8编码;然后双击保存的.html文件,浏览器将自动打开显示网页内容;若需修改,右键用记事本重新编辑并保存后刷新浏览器即可。 用记事本写好的HTML代码想要…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信