nosql - Mysql数据库为什么要有身份验证呢?

 放开丶那手 发布于 2022-11-08 10:41

现在很多Nosql的数据库,比如mongodb,redis,虽然支持身份验证,但已经大大弱化了,而且默认都是关闭的,需要特殊设置才打开。为什么mysql必须要登录呢,反正都是暴露给内网用户,而且很多小型网站数据库跟服务器都是在一台机器上,那就更没必要了。如果有人把你的服务器给攻破了,你数据库设置再复杂的密码也没用。

那么是不是mysql的身份验证已经无关紧要了?或者我们就用很弱的密码口令也无所谓了?

3 个回答
  • 应该是历史原因吧,传统的DBMS都是强口令验证的,比如Oracle,SQL Server等,如果不考虑安全问题,就仅仅是一个用户习惯问题,如果mysql现在改成弱口令,估计很多人反而不习惯了

    2022-11-12 01:40 回答
  • 身份验证(Authentication)是授权(Authorization)的基础。

    首先说明一下,MySQL的Authentication不仅仅包含用户名+密码+客户端ip方式,还有包含ldap和socket等多种方式。
    参考:http://dev.mysql.com/doc/refman/5.5/e...

    在没有身份验证的情况下,客户端可以声称自己是任何一个用户,比如root,从而实现对数据库的绝对访问权限,此时,任何授权都已经没有意义。

    多应用共享同一个数据库服务器的情况下,通常要严格限制用户的权限范围,在服务器遭到入侵的情况下,也可以保证同一台数据库服务器上的其他数据不受影响。

    2022-11-12 01:40 回答
  • 有时候,数据在业务上分敏感数据和一般数据,关系型数据库可以分表分字段对不同的用户提供不同的权限。有了权限控制,可以防止无关的人查看敏感数据,或者避免误操作等等等等。身份验证这个概念必将万古长青,是不是用口令登录是另外一说。

    NoSQL的主要特点是简单,不是先进。

    2022-11-12 01:40 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有