我们有一个 Azure SQL Server,它将接受来自 Azure 中的四个 VM 的连接。我的问题是,哪个更好?
使用受证书保护的加密连接和在公共端口上侦听的 Azure SQL?
在专用虚拟网络上使用非加密连接(以获得更好的性能)?
或者两者兼而有之?我在文档中读到使用加密连接会影响性能,这是需要考虑的吗?
我们有一个 Azure SQL Server,它将接受来自 Azure 中的四个 VM 的连接。我的问题是,哪个更好?
使用受证书保护的加密连接和在公共端口上侦听的 Azure SQL?
在专用虚拟网络上使用非加密连接(以获得更好的性能)?
或者两者兼而有之?我在文档中读到使用加密连接会影响性能,这是需要考虑的吗?
如果您在 Azure VM 上使用 SQL all,即不是 Azure SQL 数据库即服务,那么我建议您通过专用网络进行所有连接 - 至少到数据库层。
作为另一种安全措施,可以考虑使用 SQL Always Encrypted,但这确实意味着连接到 SQL Server 的每个客户端都需要将 SSL 证书链安装到其本地证书存储中。这最初等于更多的管理开销。如果您使用 RSA 2048 位长度作为密钥加密的最小值,那么在解密密钥时这不应该成为客户端的瓶颈。但显然 RSA 位长度越大,客户端解密它所需的时间就越长。
使用 ExpressRoute 绝对是要走的路,但要确保所涉及的 ISP 支持 ExpressRoute,然后启用 ExpressRoute 线路,会产生相当多的设置开销。但是,如果您希望所有到 Azure SQL DB 的连接都通过私有路由,那么绝对值得考虑。
如果您对此不那么在意,请在客户端和 Azure SQL DB 之间使用 SQL Always Encrypted