代码之家  ›  专栏  ›  技术社区  ›  Noel Kennedy

SQL Server 2005:SQL Server身份验证的安全性如何?

  •  8
  • Noel Kennedy  · 技术社区  · 16 年前

    6 回复  |  直到 16 年前
        1
  •  5
  •   curtisk    16 年前

    您可以相当轻松地配置SSL,如果您没有受信任的证书,如果您强制加密,SQL Server可以创建/颁发自己的自签名证书供您使用。。。 from this write-up

    当客户端 连接到SQL Server的应用程序是 总是加密的。SQL Server将使用 来自受信任服务器的证书 证书颁发机构(如有)。 如果不存在受信任的证书 实例,并使用 自签名证书,用于加密 资格证书这是我自己签名的 但它不提供保护 防止 服务器。如果自签名证书 已使用,并且 ForceEncryption选项设置为Yes, 通过网络传输的所有数据 在SQL Server和客户端之间 应用程序将使用 自签名证书

        2
  •  4
  •   Ben Gribaudo    8 年前

    登录凭据是否加密取决于客户端和服务器的加密功能/配置。

    在协议级别,允许完全未加密的SQL登录 猜测 犯罪嫌疑人 大多数现代数据库驱动程序都不支持它们。

    细节

    客户端使用 Tabular Data Stream (TDS) 协议

    简而言之,加密状态的确定如下所示:

    • 将不加密 .
    • 仅对登录请求的第一个TDS数据包进行加密
    • 如果客户端或服务器宣布需要加密, 整个连接将被加密 (除了少量的初步数据)除非另一方不支持加密。在这种情况下,连接将被终止。

    确保登录请求正确的唯一方法 总是 加密是在客户端或服务器上设置“需要加密”选项。在不需要完全加密的情况下,不允许完全未加密的连接。

    无论登录或连接是否加密,SQL身份验证密码始终是模糊的,但加扰很容易逆转。

    进一步阅读:

        3
  •  2
  •   DOK    16 年前

    凭据以明文形式发送。

    你可能会找到很多这方面的资料,但是 here's one

    “保护Web服务器和数据库服务器之间的通道,因为凭据是以未加密格式传递的。例如,使用SSL或IPSec。“

        4
  •  2
  •   JP Alioto    16 年前

    这里有一些链接 security best practices 对于SQL 2005。该文档部分声明:

    在Windows身份验证模式下, 信任帐户以登录到SQL 在这个过程中,;也就是说,NTLM 或Kerberos凭据。窗户 帐户使用一系列加密的 服务器;不传递任何密码 身份验证过程中的网络 使用SQL登录时,SQL登录密码会通过网络进行身份验证。 这使得SQL登录不如Windows登录安全。

        5
  •  1
  •   Slime recipe    15 年前

    不管怎样,我用Wireshark做了一些测试,不管有没有加密连接 我一直看不到我的密码 (我想还有我的用户名)。在没有加密的情况下非常明显的是实际的查询。

        6
  •  -1
  •   Giorgi    16 年前

    除了密码以明文形式发送外,还可以替换密码的散列。

    推荐文章