赞
踩
开启验证
需要在mongod.conf需要开启认证
# 1在启动的时候需要加入--auth开启认证
mongod -f /etc/mongod.conf --auth
security:
#开启授权认证
authorization: enabled
创建用户:
db.createUser({user:"myroot",pwd:"123456",roles:[ { "role" : "root", "db" : "admin" } ]}) # 解释: 给用户名为myroot的用户设定密码为123456,角色是root,本权限只在admin库里面有用。 ---------------------------------------------------------------------------- # 删除用户 db.dropUser("myadmin") # 查看用户 db.system.users.find() # 修改密码 db.changeUserPassword("myroot", "123456") ----------------------------------------------------------------------------- # 切换到admin use admin # 验证 db.auth("myroot","123456") # 创建普通用户 db.createUser({user: "xiaohua", pwd: "123456", roles: [{ role: "readWrite", db: "articledb" }]}) 解释:给xiaohua用户设定密码为123456,用户权限为读和写,权限所在的数据库为articledb 注意这里:xioahua必须交进入到articledb下面才能验证。
springboot的验证配置
spring: #数据源配置 data: mongodb: # 主机地址 # host: 180.76.159.126 # 数据库 # database: articledb # 默认端口是27017 # port: 27017 #帐号 # username: bobo #密码 # password: 123456 #单机有认证的情况下,也使用字符串连接 uri: mongodb://bobo:123456@180.76.159.126:27017/articledb
集群情况下需要使用keyfile了
通过OpenSSL进行证书生成
openssl rand -base64 90 -out ./mongo.keyfile
# 限制文件的读写权限 注意 必须要有读的权限,不然不能进行验证
chmod 400 ./mongo.keyfile
将文件放置项目中,可以放在conf下,同一个机器中使用一个keyfile就行。
# 放在27017下
cp mongo.keyfile /mongodb/replica_sets/myrs_27017
在配置文件中加入安全验证
security:
#KeyFile鉴权文件
keyFile: /mongodb/replica_sets/myrs_27017/mongo.keyfile
#开启认证方式运行
authorization: enabled
这样集群间的权限就配置好了,然后进入主节点生成用户即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。