WEB开发网
开发学院数据库MSSQL Server 面向数据库管理员的SQL Server 2008安全性概述 阅读

面向数据库管理员的SQL Server 2008安全性概述

 2010-03-06 15:43:13 来源:WEB开发网   
核心提示:最短的口令长度口令必须满足复杂度要求参见下文,利用可逆加密存储口令允许在 Windows 中检索口令,面向数据库管理员的SQL Server 2008安全性概述(5),绝对不要启用该选项,除非应用程序的要求优先于安全口令的要求,就无法将 PORTS 自变量设为 CLEAR,反之必须将其设为 SSL,(该策略不适用于 S

最短的口令长度

口令必须满足复杂度要求参见下文。

利用可逆加密存储口令允许在 Windows 中检索口令。绝对不要启用该选项,除非应用程序的要求优先于安全口令的要求。(该策略不适用于 SQLServer。)

口令过期日口令的最长存在时间  

口令的最短存在时间  

帐户锁定策略帐户锁定持续时间帐户锁定的持续时间(以分钟计)。当锁定阈值>0时,Windows 将启用该策略。

帐户锁定阈值不成功登录尝试的最大次数。

时间到后即可重置帐户锁定计数器多久之后 Windows 将重置不成功尝试的计数器。当锁定阈值>0时,Windows 将启用该选项。

如未运行 WindowsServer2003 或更新版本,SQLServer 仍利用简单的检查方法,强行应用口令强度,以阻止以下口令:

Null 或空口令

与计算机或登录名相同

Password、admin、administrator、sa、sysadmin 等口令

相同的复杂度标准被应用给在 SQL Server 中创建及使用的所有口令,包括 sa 登录的口令、应用程序角色、用于加密的数据库主密钥以及对称加密密钥。

SQL Server 默认情形下总会检查口令策略,但利用 CREATE LOGIN 或 ALTER LOGIN 语句,可取消对个别登录的强行应用,代码如下:

CREATE LOGIN bob WITH PASSWORD = 'S%V7Vlv3c9Es8',
CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF

CHECK_EXPIRATION 使用 WindowsServer2003 策略的“口令最大和最小年龄”部分,而CHECK_POLICY 使用其他的策略设置。

管理设置还允许启用或关闭口令策略检查、启用或关闭口令过期检查,并在用户第一次登录时强行修改口令。CREATE LOGIN 中的 MUST_CHANGE 选项强行让用户修改下次登录时的口令。在客户端,它允许在登录时修改口令。所有新型客户端数据访问技术都支持该特性,包括 OLE DB 和ADO.NET 以及客户端工具,如 Management Studio。

如果用户的不成功登录次数过多,超出了口令策略允许的尝试次数,SQL Server 将根据 Windows 策略中的设置锁定该帐户。管理员可利用 ALTER LOGIN 语句取消锁定该帐户:

ALTER LOGIN alice WITH PASSWORD = '3x1Tq#PO^YIAz' UNLOCK

端点验证

SQL Server2008 支持传统的二进制 Tabular Data Stream(表格数据流),客户端利用该数据流通过HTTP 访问数据,也可通过 HTTP 访问本地 XML Web 服务。允许通过 HTTP 进行访问的主要好处就是,任何理解 Web 服务协议的客户端软件和开发工具都可访问存储在 SQL Server 中的数据。这表示 SQL Server2008 可以提供独立的 Web 服务方法,它也是Service Oriented Architecture(面向服务的体系结构,SOA)中的一个完整端点。

将 SQL Server2008 用作 Web 服务主机需要两步通用操作,每一步都有很多变化:定义存储过程和用户定义的函数,以提供 Web 服务方法;定义 HTTP 端点,以通过 HTTP 接收方法调用,并将其转给适当的过程。本文主要介绍其中涉及到安全问题。有关配置及使用 HTTP 端点的详情,请参阅 SQL Server Books Online 中的 CREATE ENDPOINT(Transact-SQL)部分。

由于默认情形下 SQL Server 中的 XML Web 服务使用 HTTP 和80端口,因此大多数防火墙都允许流量通过。但是,不受保护的端点其实是潜在的攻击载体,必须对其施加保护,因此 SQL Server 提供了强大的验证和授权机制。默认情形下,SQL Server 没有任何端点,用户必须拥有高级权限,以创建、更改及启用 HTTP 端点。

SQLServer2008 提供了五种不同的验证类型,与 IIS 用于网站验证的方法类似。

Basic 验证

基本验证是 HTTP 1.1 协议的一部分,它以base-64编码的明文传送登录凭证。凭证必须映射到 Windows 登录,然后 SQL Server 利用该凭证授权给对数据库资源的访问。如果使用 Basic 验证,就无法将 PORTS 自变量设为 CLEAR,反之必须将其设为 SSL,并通过 SSL 利用数字证书加密与客户端软件的通信。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:面向 数据库 管理员

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接