mongodb 认证方式(version:3.0.4)

之前一直在本机上跑,前段时间把后台架到云服务器上了,在settings里加上了username和password,希望同步的时候修改一下settings就能在本地测试。

因为云服务器端数据库连接需要验证,于是在本地也打算加上身份验证,而mongodb默认是没有验证的。

在网上搜索了一下,方法都比较旧,主要是在本地的mongodb中新增一个user:

进入mongodb下的bin

mongodb $ cd bin

不开启验证的方式启动mongodb

bin $ ./mongod -dbpath ../blog

输入mongo命令,进入test数据库

bin $ ./mongo

添加admin用户

1 use admin
2 db.createUser({
3      user:‘admin‘,
4      pwd:‘admin‘,
5      roles:[{role:‘userAdminAnyDatabase‘,db:‘admin‘}]
6 })

切换到我的数据库(blog 为我的数据库名称),在我的数据库下创建用户

1 use blog
2 db.createUser({
3      user:‘testuser‘,
4      pwd:‘test‘,
5      roles:[{role:‘dbOwner‘,db:‘blog‘}]
6 })

重启服务器,开启验证

bin $ ./mongod -dbpath ../blog --auth

使用Robomongo登陆,显示Authentication Failed,查看服务器日志:

2015-08-31T17:39:46.416+0800 I ACCESS   [conn46] Failed to authenticate [email protected] with mechanism MONGODB-CR: AuthenticationFailed MONGODB-CR credentials missing in the user document

查看文档,发现是因为mongodb验证方式改变,加入了(SCRAM)SHA-1

在mongo里将刚创建的用户删除

use blog
db.dropUser(‘testuser‘) 

关闭验证重启数据库

在mongo里修改system.version文档里面的authSchema版本为3(旧版本)

1 use admin
2 db.system.version.update({‘_id‘:‘authSchema‘},{$set:{‘currentVersion‘:3}})
3 db.system.version.find()

可以看到:{ "_id" : "authSchema", "currentVersion" : 3 }

删除之前创建的用户,重新创建用户(这一次使用验证方式为MONGODB-CR)

1 use blog
2 db.dropUser(‘testuser‘)
3 db.createUser({
4      user:‘testuser‘,
5      pwd:‘test‘,
6      roles:[{role:‘dbOwner‘,db:‘blog‘}]
7 })

这一次可以用Robomongo成功登陆~

时间: 2024-10-09 06:25:20

mongodb 认证方式(version:3.0.4)的相关文章

mongoDB的读书笔记(via3.0)(00)_【概览】(02)_mongoDB3.0中的mongod启动方式小试牛刀

mongod启动 本来想写Replica的非测试模式的集群架构的,但是实在是手痒痒,把mongoDB的3.0给download下来了,看了一两眼文档后决定还是先大概写一点点关于启动的话题,之后写Replica的时候基本上就用mongoDB 3.0的方式+YAML的 配置方式来做了. mongod利用mmapv1启动 这个是default的启动方式.mongod的启动参数多如牛毛,本来想有空总结一下的,我勒个去的,有些估计这辈子也用不到的场景也不知道如何写,等我再考虑一下再说吧. 准备配置文件 s

新浪微博SSO登录方式及OAUTH2.0认证和获取我的微博

今天弄了下新浪微博SSO登录方式及OAUTH2.0认证和获取我的微博,实现的效果如下图: //========================================================================================================================== 就这么简单的界面,简单的请求json,我居然弄了一整天,主要是新浪微博的文档写的看不懂,感觉他们的文档跟他们的sdk接不上. 遇到的一个问题是: sso pac

MongoDB 副本集+分片 认证方式搭建

MongoDB 副本集+分片 认证方式搭建 参考资料: https://www.cnblogs.com/ityouknow/p/7344005.htmlhttps://jorwen-fang.iteye.com/blog/2031756https://www.cnblogs.com/bjx2020/p/9350232.htmlhttps://www.jb51.net/article/161315.htmhttps://blog.51cto.com/beigai/1751381 环境规划: 服务器

RHCE7.0答案之使用LDAP作为本地用户认证方式

使用LDAP作为本地用户认证方式配置: 用户信息和验证信息由不同程序提供. yum -y install sssd auth config-gtk krb5-workstation(若不用kerberos验证则不用装) authconfig-gtk 图形界面 ldapuser0:password 由ldap提供 ldapuser0=kerberos 由kerberos提供认证 若是kerberos认证则会提供kerberos地址及realm.example.com grep ldapuser0

Unsupported major.minor version 52.0 处理方式

Exception in thread "main" java.lang.UnsupportedClassVersionError: com/globalroam/openstack/OpenStackRestApi : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLo

修改CAS源码是的基于DB的认证方式配置更灵活

最近在做CAS配置的时候,遇到了数据源不提供密码等数据的情况下,怎样实现密码输入认证呢? 第一步:新建Java项目,根据假面算法生成CAS加密工具 出于保密需要不提供自定义的加密工具,在您的实际项目中,你可采用cas默认的加密方式比如md5. 第二步:修改CAS源码 找到cas-server-support-jdbc子模块找到包路径cas-server-support-jdbc\src\main\java\org\jasig\cas\adaptors\jdbc\,在复制一份QueryDataba

Sharepoint 2010配置form认证方式(SQL账号)

Sharepoint 2010配置form认证方式(SQL账号) 一.准备工作: 1.首先我们创建我们form认证中所需要的数据库. 找到aspnet_regsql.exe,一般在C:\Windows\Microsoft.NET下,根据操作系统进行选择.因为本人是win2008 R2x64,所以打开目录为C:\Windows\Microsoft.NET\Framework64\v2.0.50727 2.双击运行后,点击下一步,然后选择为应用程序配置sql server,如图: 3.填写,服务器名

源码剖析Django REST framework的认证方式及自定义认证

源码剖析Django REST framework的认证方式 由Django的CBV模式流程,可以知道在url匹配完成后,会执行自定义的类中的as_view方法. 如果自定义的类中没有定义as_view方法,根据面向对象中类的继承可以知道,则会执行其父类View中的as_view方法 在Django的View的as_view方法中,又会调用dispatch方法. 现在来看看Django restframework的认证流程 Django restframework是基于Django的框架,所以基

异常:Unsupported major.minor version 52.0 (Use --stacktrace to see the full trace)

异常:Unsupported major.minor version 52.0 (Use --stacktrace to see the full trace) 正在写一个功能,更新了同事提交的代码之后,出现了如下错误: 1 Fatal error during compilation org.apache.tools.ant.BuildException: java.lang.UnsupportedClassVersionError: org/elasticsearch/index/query