作者:上海小胖
看了这个标题,我不知道你有没有一种潜意识,如果有,没错,那就是这个了,MongoDB 终于开放了我觉得对于一个数据库的安全来说,比较重要的一个模块了 ——IP 白名单。
众所周知,MySQL、Oracle、SQL Server等知名的数据库都是有在安全方面作出相当防护的。
首先还是先来看看MongoDB的官方文档吧。
https://docs.mongodb.com/master/reference/method/db.createUser/#authentication-restrictions
简单来说,clientSource 就是针对客户端的IP 做白名单控制。serverAddress 就是针对服务端的IP 做白名单控制。
这里问题来了,客户端IP好理解,无非就是哪里连过来的连接么,这和我们理解上的都一致,那么服务端地IP呢?什么意思?
这里服务端的IP 指的是客户端在连接过来的时候指定的host 地址,比如:mongo –host=192.168.56.101,那么serverAddress 就必须包含192.168.56.101,这里的包含是什么意思?和MySQL一样,同样可以指定B、C网段,来达到多个地址地开放,只是写法有些许出入,MySQL中是:192.168.56.*,MongoDB 中是:192.168.56.0/24。那么如果是使用驱动的话,也是一样的,在host参数中指定对应的IP即可。
接着就来操作一把。
摆事实
1、创建一个应用账号miracle
2、重启数据库,开启权限认证
3、进入miracle 数据库,并验证
4、使用符合要求的格式重新连接数据库
5、第四步中出错的原因是因为默认3.6 开启了bind_ip=localhost,而由于一开始忽略了这个问题,折腾了我好久。重启数据库加上–bind_ip_all。
6、重新连接
总结
至此,MongoDB的IP白名单功能验证完毕,希望能帮助大家在实际的维护中更安全地控制好开发者的权限。
- 蜜度索骥:以跨模态检索技术助力“企宣”向上生长
- 2025年全球网络安全支出将激增15% | 行业观察
- 华为数据存储两大新品齐发:全面闪存化,全面向AI
- 数据中心太耗电,微软携手Constellation Energy探索核能供电新途径
- 戴尔一周内发生两起数据泄露事件,Atlassian工具成泄露源头
- 华为ICT学院年会2024举办,ICT学院3.0计划正式启航
- 华为启动全球金融伙伴“融海计划”,共创行业新价值
- 华为联合多家伙伴发布《现代化金融核心系统白皮书:实践篇》
- 华为发布数据智能解决方案5.0,加速金融大模型应用从“赋能”到“产能”
- 华为加速推动鲲鹏昇腾原生创新,未来三年赋能百万原生人才
- 第九届华为ICT大赛中国赛区报名通道开启,大赛真题集首发
免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。