2. 安全帐户认证管理 ��在SQL Server中,管理数据库帐户(服务器登录标识)有两种方法:使用系统存储过程语句管理,和使用Enterprise Manager管理。 (1) 使用系统存储过程管理安全帐户认证: ��在SQL Server中,可以使用系统存储过程sp_grantlogin 授予Windows NT用户或组连接SQL Server服务器的权限。这实际上是将Windows NT 用户或小组成员映射为SQL Server的登录帐户。SQL Server可以对这些帐户采取信任登录的方式。如果这些Windows NT的用户或小组成员能够成功登录Windows NT,则SQL Server就承认它们是合法的用户,从而允许它们连接上服务器。 ��● sp_grantlogin授予访问权的语法格式为: ��sp_grantlogin [@loginame=] 'login' ��其中,login为Windows NT用户或用户组名称,其格式为 "域\用户名称" 或 "计算机名\用户名称"。 ��对于Windows内置的本地组,不能使用域名或计算机名,而使用BUILTIN关键字。 ��例1:授予domain1域中用户user1登录权限,命令如下: ��sp_grantlogin 'domain1\user1' ��例2:授予domain1域中用户组group1中的用户登录权限,命令如下:sp_grantlogin 'domain1\group1' ��例3:授予本地计算机中用户组Users中的用户登录权限,命令如下: ��sp_grantlogin 'BUILTIN\Users' ��● 使用系统存储过程sp_denylogin禁止指定的Windows NT用户或组连接SQL Server服务器。Sp_denylogin的语法格式为: sp_denylogin [@loginame=] 'login' 例4:禁止本地计算机中用户组Users中的用户登录权限,命令如下: sp_denylogin 'BUILTIN\Users' 系统存储过程sp_grantlogin和sp_denylogin所添加的登录标识均存储在SQL Server的syslogins系统表中,系统存储过程sp_revokelogin能够将它们从系统表syslogin中删除。Sp_revokelogin的语法格式为: sp_revokelogin [@loginame=] 'login' 例5:撤销本地计算机中用户组Users和SQL Server帐户的映射,命令如下: sp_revokelogin 'BUILTIN\Users' 当使用混合认证模式时,对于没有建立Windows NT帐户的用户,只能使用SQL Server登录标识来管理用户连接。 ● 建立SQL Server登录标识用系统存储过程sp_addlogin。Sp_addlogin语法格式为: sp_addlogin [@loginame=] 'login' 例6:建立一个名叫user2,密码是pwd,默认数据库为pubs的帐户,命令如: sp_addlogin user2, pwd, pubs ● 删除SQL Server登录标识用系统存储过程sp_droplogin。Sp_droplogin语法格式为: p_droplogin [@loginame=] 'login' 例7:删除刚刚建立的帐户user2,命令如下: sp_droplogin 'user2' (2) 使用企业管理器管理安全帐户认证。 ● 展开要创建登录帐户的"服务器"节点; ● 选中树形结构上的"安全性"节点,展开,如图片7-7;在"登录"节点上右击,选择"新建登录",如图片7-8,在登录界面中输入相关信息。采用SQL Server身份验证的信息为:帐户名、密码和缺省访问的数据库。采用Windows身份验证的信息为:域名、选择允许或不允许访问和缺省访问的数据库等。 ● 打开"服务器角色",分配给帐户固定服务器角色,如图片7-9; ● 打开"数据库访问",决定登录帐户允许访问的数据库,以及分配给帐户的数据库角色,如图片7-10。 (3) 特殊帐户sa ��在完成SQL Server安装以后,SQL Server就建立了一个特殊帐户sa。sa帐户拥有最高的管理权限,不管SQL Server实际的数据库所有权如何,sa可以执行服务器范围内的所有操作。在刚刚完成SQL Server的安装时候,sa帐户没有任何密码,所以要尽快为其设置密码。
|