我试图在尝试连接到 MySQL 服务器(通过 mysql-connector-python)时了解 SSL 的工作原理。我有 MySQL (v5.7) 并且有 2 个用户。其中一个 (root) 是默认用户,另一个用户 (ssl_user) 启用了 REQUIRE SSL 选项。如果我尝试使用以下配置连接到 ssl_user,则会收到一条错误消息,指出 ssl_user 无权访问。
mysql_conf = {
'host': '127.0.0.1',
'port': '3306',
'user': 'root',
'password': '',
'ssl_disabled': True #Default value is False
}
conn = mysql.connector.connect(**mysql_conf)
如果我将特定用户的值更改为 'ssl_disabled': False,我就能够连接到 MySQL。
我正在通过我的 Flask 应用程序连接到 mysql 服务器,通过使用 Require ssl 创建的用户连接时到底发生了什么?这是否意味着该用户的连接已加密?如果是这样,加密发生在哪里?
我无法理解通过 'ssl_disabled': False 连接和通过提供 SSL 证书连接之间到底有什么区别?