MongoDB 3.4 分片集群副本集 认证
连接到router所在的MongoDB Shell 我本机端口设置在50000上
mongo --port 50000
接下来的流程和普通数据库添加用户权限一样
db.createUser({user:"username",pwd: "pwd",roles: [ { role: "rolename", db: "dbname" },{ role: "rolename2", db: "dbname2" } ]})
对这个账号进行认证
db.auth("username","pwd")
配置好所有账号以后关闭所有mongod和mongos进程,如果是托管到Service的就停止服务
接下来用openssl生成一个64位的秘钥,并拷贝到每台服务的配置文件所在文件夹
openssl rand -base64 753 >mongo.key
给每个mongod和mongos的服务都添加配置项 keyFile指向该秘钥
按以下顺序重启所有服务
config副本集
router服务
shard副本集
重新连接router的MongoDB Shell 不使用账号也能登录,但是执行查询操作就会报权限错误