分享
  1. 首页
  2. 文章

mongodb中的添加用户操作

黄淑宁 · · 2321 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

mongodb添加用户

本教程介绍mongodb中添加用户的一些操作

mongodb中的用户是什么

在mongodb中通过用户来管理每个数据库的权限,想要控制数据库的使用权,就需要添加用户,给指定的用户分配权限,让特定用户来做特定的操作。

添加用户有什么用

细分权限,限制数据库的访问和使用,提高mongodb的安全性。

为什么要添加用户

防止被人非法使用,做一些非法操作,导致一些严重后果。
比如删库跑路─=≡Σ(((つ•̀ω•́)つ

怎么添加用户

首先,在mongod启动时是不会启动校验的

mongod

启动mongod后,连接到mongod

root@e444205572bd:/# mongo
MongoDB shell version v4.1.9
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("e3fd959c-db96-4853-a306-9edcc8c5baa7") }
MongoDB server version: 4.1.9
......

指定到admin数据库下

> use admin
switched to db admin

通过指定的函数创建用户

> db.createUser({user:"user", pwd:"123123", roles:["root"]})
Successfully added user: { "user" : "user", "roles" : [ "root" ] }

通过show查看该数据库的用户

> show users
{
 "_id" : "admin.user",
 "userId" : UUID("95e02aca-49c2-4852-b2bc-7dc4f2738175"),
 "user" : "user",
 "db" : "admin",
 "roles" : [
 {
 "role" : "root",
 "db" : "admin"
 }
 ],
 "mechanisms" : [
 "SCRAM-SHA-1",
 "SCRAM-SHA-256"
 ]
}

创建用户成功

添加用户之后如何连接mongodb

使用mongo连接

root@1410aa527d51:/# mongo -u user -p 123123 
MongoDB shell version v4.1.9
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("8e9a9173-8263-40ea-b814-39090f0c90b7") }
MongoDB server version: 4.1.9
........

在mgo中进行连接

"mongodb://user:123123@localhost:27017"
info := &mgo.DialInfo{
 Addrs:[]string{
 "localhost:27017",
 },
 Direct:false,
 Timeout:30 * time.Second,
 Database: "user",
 Source:"admin",
 Username:"user",
 Password:"123123",
 
 }
 session, err := mgo.DialWithInfo(info)
 //session, err := mgo.Dial(url)
 if err != nil {
 logs.Error(err)
 }

注:

通过docker部署的mongo,在启动时添加参数MONGO_INITDB_ROOT_USERNAMEMONGO_INITDB_ROOT_PASSWORD是可以创建用户的。但是如果之前的mongo并没有创建用户,并且你挂载了volume,把容器中的db数据映射到了宿主机,那你就要进入容器中手动创建用户了。


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:黄淑宁

查看原文:mongodb中的添加用户操作

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
2321 次点击
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏