【IT168 技术文档】
是你吗?不管怎么说我的数据我做主
作为您或者您的企业的关键数据的中心载体,进行必要的安全保护将是保证业务系统正常运转的必要条件,当然实现这个目标需要开发和运行维护团队人员根据数据库的功能特性进行集成和配置。
SQL Server认证机制的安全性改进

图1:SQL Server的认证机制
如上图,SQL Server认证同时提供SQL Server本地账号与Windows继承认证两种方式,以往在企业环境中相信读者可以通过配置活动目录的密码策略来控制诸如下面一些策略:
(1)是否采用强密码
(2)密码长度
(3)密码过期时间
(4)验证错误锁定次数
(5) 账号是否Enable
而在SQL Server 以往的版本中本地账号上这些控制似乎很弱。在SQL Server 2005中,所有的Login不仅可以通过“用户名/密码”方式进行认证,还可以通过证书方式进行,这对于具有异构操作系统平台的企业CA环境而言,提供了最为便捷的方式。对于Login Policy的配置可以通过内值函数LOGINPROPERTY获得,了解相关的配置策略信息。

图2:配置Login的密码策略
代码示例1:通过LOGINPROPERTY获得Login的安全策略
LOGINPROPERTY ( 'login_name' ,
{ 'IsLocked' | 'IsExpired' | 'IsMustChange'
|'BadPasswordCount' | 'BadPasswordTime'
| 'HistoryLength' | 'LockoutTime'| 'PasswordLastSetTime' | 'PasswordHash' } )
![]()
示例1.确认用户是否需要修改密码:
SELECT LOGINPROPERTY('WillisJO', 'IsMustChange');
GO
![]()
示例2:确认Login是否已经被锁定:
SELECT LOGINPROPERTY('SamirK', 'IsLocked');
GO