将MySQL连接限制为安全传输
如果MySQL简化了MySQL社区和MySQLEnterprise的密钥生成,它将使安全连接更加容易。这样,通过扩展对TLSv1.1和TLSv1.2的支持,可以提高安全性。这还有助于管理员通过增强对连接类型的可见性来确定客户端是否安全连接。
为了扩大对安全连接的重要性,MySQL服务器引入了新的服务器端配置选项,该选项允许MySQL管理员将连接限制为使用安全传输的客户端。当我们说到需要安全传输的连接时,需要解决的第一个问题是它使用的传输类型。
安全运输
让我们看看被认为是安全的传输类型-
SSL/TLS
插座
共享内存
特别是,使用命名管道传输的Windows计算机上的连接不被认为是安全的。这些连接通常在本地进行,命名管道连接可以远程进行。但是它们还缺乏数据加密功能,无法保护通过网络发送的有效载荷。
--require_secure_transport配置选项是新添加的。此处,布尔选项默认值为OFF。这意味着使用任何上述支持的连接
如果协议与传统行为一致,则可以接受。设置-require_secure_transport=ON使服务器拒绝不使用上面显示的连接类型之一的新连接。
不安全的连接
由于连接不安全而被拒绝的客户端将收到以下错误-
示例
D:\mysql-advanced-5.7.10-winx64>bin\mysql -uroot -P3310 --skip-ssl输出结果
ERROR 3159 (HY000): Connections using insecure transport are prohibited while --require_secure_transport=ON.
示例
D:\mysql-advanced-5.7.10-winx64>bin\mysql -uroot -P3310 --skip-ssl输出结果
ERROR 3159 (HY000): Connections using insecure transport are prohibited while --require_secure_transport=ON.
与帐户级别要求的互动
MySQL还支持要求特定帐户使用TLS。这是通过在CREATE或ALTERUSER命令中包括REQUIRESSL子句来完成的。新的--require_secure_transport选项将通过在全局级别实施安全传输来添加这些帐户级别的要求。