为什么我不需要证书即可连接到我们的 AWS 数据库?

为什么我不需要证书即可连接到我们的 AWS 数据库?

我更像是一名开发人员,而不是一名 DevOps 或系统管理员。我正在努力弄清楚我们必须如何处理 SSL 证书和我们的 AWS 数据库。众所周知,2015 年为 AWS 数据库颁发的证书将于 2020 年 3 月 5 日到期,因此需要安装 2019 年颁发的证书。

但是,我认为我们不需要证书即可连接到我们的 AWS 数据库。我的意思是,要连接到我们的某个Azure数据库,需要以下 *nix 命令:

mysql -h ourstuff.database.azure.com -u ouruser -p --ssl-ca=certificatefile.crt.pem --ssl-mode=VERIFY_CA

但是要连接到我们的 AWS 数据库,我们不需要 SSL 的东西:

mysql -h ourstuff.blahblahblah.rds.amazonaws.com --database=ourdatabase -u ouruser -p

类似地,我们有提供证书以连接到 Azure 数据库(通过mysqli_ssl_set())的 PHP 应用程序,但没有提供用于 AWS 的证书。

所以我有这些问题:

  • 由于 AWS 仪表板中没有选项移除来自数据库的证书,我如何可以在不提供任何凭据的情况下连接到数据库?(除了密码)是不是因为我在公司的网络上,并且该网络已列入白名单?
  • 我应该怎么做才能强制客户端提供凭证?清空 IP 白名单表?如果存在这样的事情。
  • 如果访问基于 IP 白名单,那么如果我们强制通过 SSL 访问,是否真的可以提高数据库的安全性?
  • 如果现在由于连接用户名而不需要证书(根据下面 Mlu 的回答),那么当我安装 2019 证书时情况会改变吗?

满怀感激。

答案1

这可以在 MySQL 中为每个用户进行配置。

ALTER USER '{masteruser}'@'%' REQUIRE SSL;

查看ALTER USER文档并寻找REQUIRE SSL

相关内容