连接到SQL Server 2008 R2的远程expression一个安全的连接?

我正在连接到安装了SQL Server 2008 R2 Express的Windows 2008 R2服务器。 我通过远程连接进行连接,而不是在同一个LAN上。 我通过VS2010连接到SQL Server 2008 R2 Express。 这只是一个远程数据库连接。 这个远程连接是否安全? 如果是这样,怎么样? SSL有什么关系吗? 远程连接时,用于远程login到SQL Server安全的密码如何?

不,就人们能够嗅探数据包而言,连接是不安全的,并且看到返回的数据(或一些数据)。 您将需要证书,IPSEC,VPN或类似的东西。

如果您使用应该更安全的Windows凭据login到SQL Server – AD。 但是,由于它不在同一个局域网上,这听起来像你可能正在使用一个SQLlogin,这本质上是不安全的Windows域帐户。

SQL Server提供隐私(即encryption),如果configuration如此,则是防篡改(即签名)。 保护确实使用SSL(实际上是TLS,细节…)。 请参阅encryption连接到SQL Server以及如何:启用到数据库引擎的encryption连接以获取详细信息,包括执行步骤。

有关密码的问题是完全不同的话题。 有两种SQL Server支持的身份validation模式:Windows和SQL身份validation。 如果您的连接string指定了Trusted Connection=True ,或者Trusted connection=SSPI则使用Windows身份validation。 如果你指定一个用户和一个密码User ID=Carpenter;Password=secret那么你使用SQL身份validation。

Windows身份validation将使用NTLM或Kerberos,它们都不需要通过连接发送密码。 但是,如果您使用SQL身份validation,则密码将在握手期间通过连接发送。 如果连接不受SSL隧道的保护,那么密码是明文的,可以被任何人窥探。

只要你执行SSL(链接的文章显示一步一步如何做),你是安全的。