8.4 “安全性”服务器选项
8.4.1 查看“安全性”选项卡
切换到“安全性”选项卡,查看当前的安全性配置。
此选项卡可以配置或修改一些参数。更改安全性配置后需要重新启动该实例。
8.4.2 “服务器身份验证”选项
登录到 SQL Server 服务器时,可以有以下两种身份验证模式。
(1) Windows 身份验证模式
此模式又称集成安全模式,表示将对所尝试的连接仅使用 Windows 身份验证。使用此连接模式时,SQL Server 仅根据用户的 Windows 权限来进行身份验证,我们称之为“信任连接”。
使用 Windows 身份验证时,用户已登录到 Windows,无需另外登录到 SQL Server。
Windows 安全系统提供更多的功能,例如,安全验证、加密消息、审核、密码过期(密码过期、密码长度、复杂性要求等),使用 Windows 身份验证模式通常为最佳的选择。
必须在连接字符串显式设置 Integrated Security 属性。下面是一个连接字符串的示例。
Server=SQLSVR2014;Database=AdventureWorks2014;Integrated Security=True; |
Integrated Security 属性的值除了 True 之外,就只有 SSPI。它是使用 Windows 身份验证时可以使用的惟一接口,相当于把 Integrated Security 属性值设置为 True。下面是一个连接示例。
Server=SQLSVR2014;Database=AdventureWorks2014;Integrated Security=SSPI; |
提示:
SQL Server 允许 SSPI(Security Support Provider Interface,安全性支持提供者接口)协商要使用的身份验证协议。如果无法使用 Kerberos,Windows 将回退到 NTLM 身份验证。
微软在 Windows NT 中提出质询/响应(Challenge/Response)验证机制,后来成为 NTLM(NT LAN Manager),这是早期 Windows 版本使用的安全协议。从 Windows 2000 开始默认协议为 Kerboros。
Kerberos()网络身份验证协议可以实现客户端和服务器端之间相互验证身份。这是一种用于对网络上的客户端和服务器端进行身份验证的极为安全的方法,可以用于防止窃听、防止重播攻击、保护数据完整性等场合。
为了防止重播攻击,Kerberos要求参与通信的计算机的时钟同步。如果计算机的时钟与 Kerberos 服务器的时钟相差超过10分钟,认证会失败。
(2) SQL Server 和 Windows 身份验证模式
此模式又称混合模式,表示即可以对所尝试的连接使用 Windows 身份验证,也允许使用 SQL Server 身份验证。使用此连接模式时,SQL Server 会判断登录帐户在 Windows 操作系统下是否可信。对于可信连接,系统直接采用 Windows 身份验证;而对于非可信连接(不仅包括远程用户,还包括本地用户),系统则自动验证 SQL Server 帐户是否存在以及密码是否匹配。
如果将身份验证模式切换到混合模式,而 sa 密码又为空时,系统会提示用户输入 sa 密码。但要注意,此时系统并不会自动启用 sa 帐户,还需要用户手动启用 sa 帐户。
在跨越网络远程访问 SQL Server 时(例如,从Internet 访问,从工作组的计算机进行连接,从其他不受信任的域进行连接等),如果远程网络不支持 Windows 身份验证,可以使用 SQL Server 登录。
默认情况下,连接字符串中 Integrated Security 属性为 False,必须同时指定用户 ID 和密码。下面是一个连接字符串的示例。
Server=SQLSVR2014;Database=AdventureWorks2014;Integrated Security=False;User ID=useraccount;Password=userpassword; |
远程计算机在通过网络传送连接字符串时,有被截获的风险。为了防止非法者截获网络数据包并分析出一些安全信息,可以考虑采用 SSL 的 TCP/IP 协议对传输的数据进行加密。但是加密会影响性能,这也是需要考虑的。
8.4.3 登录审核
此参数用于配置用户登录时是否在Windows事件中记录相应的登录事件。
8.4.4 服务器代理帐户
SQL Server 提供一个扩展的存储过程 xp_cmdshell,可以在 SQL Server 中执行一些命令提示符下面的操作系统命令。此参数将用作 xp_cmdshell 执行时使用的帐户。
建议使用最低权限帐户。过大的权限可能会被恶意用户利用,从面危及系统安全。
8.4.5 选项
◆ 符合启用通用条件
如果启用此项,将启用“通用准则”(Common Criteria )以实现更高级别的安全性保护。
◆ 启用 C2 审核跟踪
如果启用此项,将审核对语句和对象的所有访问尝试。
◆ 跨越数据库所有权链
选中此选项,将允许数据库成为跨越数据库所有权链的源或目标。
默认情况下,跨数据库所有权链接是禁用的,除非由于特殊情况而需要,否则不应该启用它。
本文出自 “SQL Server 管理员指南” 博客,谢绝转载!