`
welcome66
  • 浏览: 397364 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mongodb集群增加登录密码验证

阅读更多

在部署mongodb集群的时候,有些安全性要求比较高的地方,需要启用密码验证的方式,登录mongo集群。

下面的方式是在mongodb 3.6版本的基础上,3个节点的集群里设置的。

 

1.生成集群验证key文件

 

1)进入mongodb的data目录,创建keyfile目录

 

2)使用openssl生成key文件

 

3)修改key文件权限为400

 

4)复制该key文件到每个mongodb节点对应目录

 

命令如下:

 

#cd /home/memdb/mongodb/conf

#openssl rand -base64 741 > /home/mongodb/data/mongo-keyfile

#chmod 400 ./ mongo-keyfile

 

2.创建验证用户

 

在未启用验证前,创建用户:

 

1)使用mongo连接mongos端口:

        $bin/mongo IP:mongos port

 

2)切换到admin库,创建用户:

 

use admin
db.createUser( {
    user: "cluster",
    pwd: "cluster",
    roles: [ { role: "clusterAdmin", db: "admin" } ]
  });
db.createUser( {
    user: "super",
    pwd: "super",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  });
use test
db.createUser(
  {
    user: "admin",
    pwd: "admin",
    roles:
    [
      {
        role: "dbOwner",
        db: "test"
      }
    ]
  }
)

 

     

 

3.  增加配置文件的验证属性

 

1)  Mongo.conf文件:

 

security:

  keyFile: "/home/mongodb/data/mongodb-keyfile"

  clusterAuthMode: "keyFile"

      authorization: "enabled"

 

config和mongos只增加上面2个属性即可。

4.重启集群

上面完成之后,重启整个mongodb集群。

按照原来顺序启动如有错误,启动顺序可改为

    1) 先启动所有config组件

    2) 再启动所有mongod组件

    3) 最后启动mongos组件

分享到:
评论

相关推荐

    spark-mongodb-examples:在Spark中使用NSMC(spark-mongodb-connector)的示例

    您可以连接未经身份验证的连接(如果您的MongoDB安装允许),也可以使用用户名/密码身份验证进行连接。 配置,构建和运行 您需要编辑DBConfig对象顶部的设置,以指定MongoDB服务器的连接详细信息。 您可以通过...

    OpKanban:Blazor Server应用程序概念验证,使用MongoDB Realm制作看板

    运行自己数据库准备创建一个集群为该集群部署Realm应用使用_pk上的分区键string为数据库打开Realm Sync 在名为KanbanTask数据库中创建一个集合,并将其架构设置为 开启电子邮件/密码验证创建一个帐户应用准备Git克隆...

    realm-tutorial:MongoDB领域教程

    启用身份验证在Realm UI上的“用户”下,转到“提供程序”选项卡并启用电子邮件/密码提供程序。 选择“自动确认用户” 选择“运行密码重置功能” 单击“新建”以使用重置功能,并使用创建的默认值。 此重置功能始终...

    contact-keeper:联系保管人

    在地图集上设置MongoDB集群将MongoDB连接到应用 创建用户架构和模型 注册用户 验证用户输入 检查用户是否存在 哈希密码 将用户保存到数据库 使用用户ID有效负载创建JWT 登录用户 验证用户输入 检查用户是否存在 ...

    Express-boilerplate:准备好用于您的下一个react-api的样板,并带有现成的身份验证逻辑,模型和路由

    创建一个mongodb集群/数据库 添加一个.env文件并插入: MONGO_USER = <在这里输入来自mongodb服务器的用户名> MONGO_PSW = <在这里输入来自mongodb服务器的密码> MONGO_SERVER = <在这里输入您的服务器...

    Dev-Ops-Project

    该项目设置为连接到MongoDB集群以存储待办事项。 您将需要创建一个使用用户名和密码进行身份验证的集群,并记下这些值。 然后,您将需要更新.env文件环境变量,如下所示: MONGO_USERNAME:用于连接到MongoDB ...

    movie-partners

    为电影合作伙伴创建MongoDB集群 将集群连接到Mongo Compass 在本地mongo实例上为生产集群和开发集群设置环境变量 在后端创建db文件夹并制作db.js文件 导入猫鼬并连接到数据库 在Postman中配置开发环境以测试...

    网站架构技术

    mongodb hadoop 业务拆分 web service restful 分布式服务 大型网站架构演化的价值观 核心价值:随网站所需灵活应对 驱动力量:网站的业务发展 网站架构设计误区 一味追随大公司的解决...

    Coronalert:CoronaTracker通知服务

    可以在MongoDB Atlas->集群->连接(在所需集群的框中)中找到->连接应用程序(请参阅) 在本地设置TWILIO_ACCOUNT_SID , TWILIO_AUTH_TOKEN环境变量。 这可以分别在Twilio仪表板上的“帐户SID”和“身份验证令牌...

    login_verification

    验证登录 模块:npm init -y npm我表达ejs猫鼬 index.html-> index.ejs->并将所有公共链接路径更改为“ / -- MongoDB:数据库名称:bookstore_for_loginverification集合:用户 clickpath 1:在Mongo Atlas中:...

    商城(thinkphp5)

    (八)用户:用户列表、 用户组列表 (用户权限设置)、个人资料、用户密码修改 (九)资产:销售概况、商品分析、同行热卖、运营报告、销售排行 (十)微信端功能:首页顶部浮动块(一键关注按钮)、推广二维码、...

Global site tag (gtag.js) - Google Analytics