此核对清单检查在连接到 SQL Server 数据库引擎 时要使用的主要选项。使用此核对清单可检查您的环境,以便确保为您的业务需要尽可能安全地建立与数据库引擎的连接。
数据库引擎配置
.gif) |
- 数据库引擎是否配置为仅侦听所需的协议?
提示 使用 SQL Server 配置管理器可以仅在客户端需要时启用 TCP/IP 或命名管道。有关详细信息,请参阅选择网络协议和如何启用或禁用服务器网络协议(SQL Server 配置管理器)。
|
.gif) |
- Service Broker、HTTP 和数据库镜像端点是否仅在需要时创建?
提示 有关详细信息,请参阅网络协议和 TDS 端点。
|
.gif) |
- 是否尽可能使用 Windows 身份验证建立连接?
提示 有关详细信息,请参阅选择身份验证模式。
|
.gif) |
- 数据库引擎是否配置为使用来自受信任颁发机构的证书以便确保通信的安全?
提示 使用自签名证书的默认配置的安全性较低。使用 Windows 证书工具 (certmgr.msc) 和 SQL Server 配置管理器安装证书。有关详细信息,请参阅如何启用数据库引擎的加密连接(SQL Server 配置管理器)。
|
.gif) |
- SQL Server 是否配置为仅允许通过网络的安全连接?
提示 使用 SQL Server 配置管理器中的“强行加密”服务器设置。有关详细信息,请参阅如何启用数据库引擎的加密连接(SQL Server 配置管理器)。
|
.gif) |
- 如果可能,SQL Server 是否使用 Kerberos 身份验证来用于 Windows 身份验证客户端?
提示 有关详细信息,请参阅 Kerberos 身份验证与 SQL Server。
|
.gif) |
- 在 Windows Server 2003 和 Windows XP 上,数据库引擎是否基于其他服务未使用的域帐户运行?
提示 通过将单独的帐户用于服务,可帮助避免受到危害的服务访问其他服务。
|
.gif) |
- 如果数据库引擎正基于某一域帐户运行,该帐户的密码是否定期更改?
提示 在 Windows 7 和 Windows Server 2008 R2 上,考虑基于托管服务帐户运行数据库引擎,以便域管理密码。Network Service 是一个很好的选择。有关托管服务帐户的详细信息,请参阅 Service Accounts Step-by-Step Guide(服务帐户分步指南)。
|
.gif) |
- 是否将数据库引擎的命名实例配置为侦听固定端口?
提示 固定端口允许您只打开防火墙中的正确端口。使用 SQL Server 配置管理器可以配置固定端口。有关详细信息,请参阅Configuring a Fixed Port。
|
.gif) |
- 是否配置了登录审核以便保留失败登录的记录?
提示 通过使用 SQL Server Management Studio 中的“服务器属性(‘安全性’页)”进行配置。
|
.gif) |
- 是否配置了 SQL Server 审核以便审核失败的登录?
提示 有关详细信息,请参阅了解 SQL Server 审核。
|
.gif) |
- 您是否从数据库引擎删除了不必要或已废弃的登录名?
提示 这可能要求定期的手动检查。主要通过 Windows 组实现访问可以简化此任务。
|
客户端设置
.gif) |
- 客户端是否配置为仅使用安全套接字层 (SSL) 进行连接?
提示 使用 SQL Server 配置管理器中的“强制协议加密”客户端设置。有关详细信息,请参阅如何启用数据库引擎的加密连接(SQL Server 配置管理器)。
|
.gif) |
- 客户端是否配置为使用具有业务需要所需最小权限的帐户进行连接?
提示 不应使用作为 sysadmin 固定服务器角色成员或 dbo_owner 数据库角色成员的帐户连接应用程序。通过将应用程序配置为使用具有有限权限的帐户进行连接,可有助于减少与应用程序问题有关的风险,例如 SQL 注入。
|
.gif) |
- 管理员是否使用 Windows 登录名而非 sa 帐户进行连接?
提示 作为 sysadmin 固定服务器角色成员的 Windows 帐户具有与 sa 帐户相同的权限。在使用其 Windows 登录名时,管理员仍被单独标识并且可被审核。在使用 sa 帐户时,可能不明确是哪一管理员执行了操作。在使用固定模式身份验证时考虑禁用 sa 帐户。
|
.gif) |
- 管理员在未执行管理操作时是否使用较低权限的帐户进行连接?
提示 减少管理员连接的数目有助于降低错误和恶意操作的风险。对于很少要求管理访问的用户,考虑创建较低权限的帐户。
|