1. 管理和维护登录名技术
1.1 SQL Server的身份验证模式
用户想操作SQL Server中某一数据库中的数据,必须满足以下3个条件:
首先,登录SQL Server服务器时必须通过身份验证;其次,必须是该数据库的用户或者是某一数据库角色的成员;最后,必须有执行该操作的权限。由此可看SQL Server数据库的安全性检查是通过登录名、用户、权限来完成的。
1.1.1 Windows 身份验证模式
当用户通过Windows用户帐户进行连接时,SQL Server通过回叫Windows 以获得信息,重新验证帐户名和密码,并在sys.syslogins系统视图中查找该帐户,确定该帐户是否有权限登录。在这种方式下,用户不必提供登录名和密码让SQL server验证。
1.1.2
混合验证模式使用户能够通过Windows身份验证或SQL Server身份验证与SQL Server实例连接。在SQL Server验证模式下,SQL Server在sys.syslogins系统视图中检测输入的登录名和密码。如果在sys.syslogins视图中存在该登录名,并且密码也是匹配的,那么该登录名可以登录到SQL Server;否则,登录失败。在这种方式下,用户必须提供登录名和密码,让SQL server验证。
1.1.3
可以使用SQL Server Management Studio来设置或改变验证模式。当使用SQL Server Management Studio时,应遵循以下步骤:
(1)打开SQL Server Management Studio,在“对象资源管理器”中,右击需要修改验证模式的服务器,再单击快捷菜单中的“属性”选项,出现服务器属性对话框,在服务器属性对话框中单击“安全性” 选择页。
(2)如果想仅使用Windows身份验证,选择“Windows身份验证模式”;如果想使用混合认证模式,选择“SQL Server和Windows身份验证模式”。
(3)在“登录审核”中设置是否对用户登录SQL Server 2005服务器的情况进行审核,即是否将登录成功和失败的信息写入SQL Server错误日志中。
1.2 登录账户管理
1.2.1系统安装时创建的登录账户
SQL Server 2005安装好之后,系统会自动产生一些系统内置登录账户。
本地管理员组(BUILT\Administrators):默认属于sysadmin角色中的成员,因此具有管理员权限。
系统管理员 (sa):默认情况下,它指派给固定服务器角色 sysadmin,并不能进行更改。
1.2.2创建登录账户
1.2.2.1使用SQL Server Management Studio添加Windows登录账户
注意:授权一个Windows用户或组访问SQL Server,必须以这个用户登录到Windows后才能验证这个用户能否联接到SQL Server。授权用户或组访问SQL Server时,此Windows用户和组必须事先存在。
1.2.2.2.使用SQL Server Management Studio添加SQL Server登录账户
1.2.2.3.使用CREATE LOGIN语句创建登录账户。
CREATE LOGIN login_name { WITH | FROM }
例11.1 创建一个使Windows用户HBSI\ZangSan得以连接到SQL Server 的登录账户。
CREATE LOGIN [HBSI\ZhangSan] FROM WINDOWS
例11.2 创建一个SQL Server 登录,登录名为lisi并指定密码abcd。
CREATE LOGIN lisi WITH PASSWORD = 'abcd '
1.2.3 修改登录账户
(1)使用SQL Server Management Studio修改登录账户的属性
在SQL Server Management Studio的“对象资源管理器”中,展开服务器下的“安全性”节点,展开“登录名”,右击需要修改的登录名,在快捷菜单中选择“属性”,弹出“登录属性”对话框。在此对话框中进行相应的属性修改,如默认数据库、默认语言、密码等,还可以对账户的状态属性进行修改。
(2)使用ALTER LOGIN语句修改登录账户属性
ALTER LOGIN login_name { | WITH [ ,... ]}?
例11.3 将lisi登录账户名称更改为lisi_new。
ALTER LOGIN lisi WITH NAME=lisi_new
例11.4