• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

云主机上的MongoDB被威胁,开启AUTH认证

武飞扬头像
蓝小白1024
帮助1

创建用户

mongo      # 进入 mongo shell

进入admin数据

show dbs    # 查看所有数据库
use admin   # 使用admin数据库
  • 创建超级管理员
db.createUser({user:"root",pwd:"123456",roles:[{role: 'root', db: 'admin'}]})
# user : 用户名
# pwd: 密码
  • 创建普通用户
# 切换或创建数据库,例:test
use test
db.createUser({user:"testuser",pwd:"testpwd",roles:[{role:"readWrite",db:"test"}]})

先退出mongo shell

exit

修改配置(开启认证)

vim /etc/mongod.conf
  • 加入或者打开注释
security:
  authorization: enabled

学新通

  • 重启mongodb
service mongod restart

测试使用 mongo

学新通
没有了一大片的说明

认证登录

方式1

mongo 

use admin 

db.auth('root', '123456')   # 返回1代表认证成功

方式2

mongo -u root -p 123456  # 跟 mysql 好像~~

熟悉的注释说明又回来啦~
学新通

查看和删除用户

user admin 

# 查看所有用户(任选其一)
### 命令1
db.system.users.find()
### 命令2 
db.getUsers()


# 删除用户 删除时需要切换到该账户所在的数据库(任选其一)
### 命令1
db.removeUser('user')  # 这个命令我使用的时候有警告,不过还是能删
### 命令2
db.system.users.remove({user:"user"})

学新通
学新通

pymongo使用时进行auth认证


class DBMongo(object):

    def __init__(self):
        self.client = MongoClient(f'mongodb://{username}:{password}@127.0.0.1:27017')
        # 如果需要数据库进行认证 加上databasename
        #self.client = MongoClient(f'mongodb://{username}:{password}@127.0.0.1:27017/{databasename}')
        self.db = self.client["python"]['test']

    def __del__(self):
        self.client.close()

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcgkgb
系列文章
更多 icon
同类精品
更多 icon
继续加载