MongoDB安全认证

一、添加用户

切换到admin数据库对用户的添加
use admin;
db.createUser(userDocument):用于创建 MongoDB 登录用户以及分配权限的方法

db.createUser(
{
user: "账号",
pwd: "密码",
roles: [
{ role: "角色", db: "安全认证的数据库" },
{ role: "角色", db: "安全认证的数据库" }
]
}
)

二、单机认证

要使用安全认证必须添加超级用户,以及针对某个库的用户

  1. 创建管理员
    在这里插入图片描述
  2. 创建普通用户
    在这里插入图片描述
  3. MongoDB 安全认证方式启动
    mongod --dbpath=数据库路径 --port=端口 --auth
    也可以在配置文件中 加入 auth=true

三、分片集群安全认证

1 开启安全认证之前 进入路由创建管理员和普通用户
2 关闭所有的配置节点 分片节点 和 路由节点

安装psmisc
yum install psmisc
安装完之后可以使用killall 命令 快速关闭多个进程
killall mongod

3 生成密钥文件 并修改权限

openssl rand -base64 756 > data/mongodb/testKeyFile.file
chmod 600 data/mongodb/keyfile/testKeyFile.file

4 配置节点集群和分片节点集群开启安全认证和指定密钥文件

auth=true
keyFile=data/mongodb/testKeyFile.file

5在路由配置文件中 设置密钥文件

keyFile=data/mongodb/testKeyFile.file

6 启动所有的配置节点 分片节点 和 路由节点 使用路由进行权限验证
可以编写一个shell 脚本 批量启动

./bin/mongod -f config/config-17017.conf
./bin/mongod -f config/config-17018.conf
./bin/mongod -f config/config-17019.conf
./bin/mongod -f shard/shard1/shard1-37017.conf
./bin/mongod -f shard/shard1/shard1-37018.conf
./bin/mongod -f shard/shard1/shard1-37019.conf
./bin/mongod -f shard/shard2/shard2-47017.conf
./bin/mongod -f shard/shard2/shard2-47018.conf
./bin/mongod -f shard/shard2/shard2-47019.conf
./bin/mongos -f route/route-27017.conf

7 Spring boot 连接安全认证的分片集群

spring.data.mongodb.username=账号
spring.data.mongodb.password=密码
#spring.data.mongodb.uri=mongodb://账号:密码@IP:端口/数据库名

8 当我们开启认证后,要想单独查询每个分片集群的数据,就必须为其创建账号
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值