日期:2014-05-18  浏览次数:20585 次

如何创建以windows身份认证模式登录的登录账号
在线等!!!!!!!!!!!!!!!!!!!!!!!!!


------解决方案--------------------
SQL code

第一步:创建登录账户

-- 登录验证有两种方式:
-- SQL 身份验证:适用于非 Windows 平台的用户或 Internet 用户,需要提供账户和密码。
-- Windows 身份验证:适用于 Windows 平台用户,不需要提供密码,和 Windows 集成验证。
-- 所以,我们创建登录账户也有两种:SQL 账户和 Windows 账户。

-- 添加 Windows 登录账户:
-- 需要使用 SQL Server 内置的系统存储过程:sp_grantlogin
-- 语法:EXEC sp_grantlogin 'windows 域名/域账户'
EXEC sp_grantlogin 'MicroStone-PC\MicroStone'
-- 关键字:
-- EXEC:表示执行调用

-- 添加 SQL 登录账户:
-- 需要使用 SQL Server 内置的系统存储过程:sp_addlogin
-- 语法:EXEC sp_addlogin '帐户名','密码'
EXEC sp_addlogin 'zhulei','123456'

-- 第二步:创建数据库用户

-- 需要使用 SQL Server 内置的系统存储过程:sp_grantdbaccess
-- 语法:EXEC sp_grantdbaccess '登录账户','数据库用户'
-- 其中,数据库用户为可选参数,默认为登录账户,即数据库用户默认与登录账户同名。
EXEC sp_grantdbaccess 'zhulei'
-- SQL Server 中的 dbo (DataBaseOwner) 用户是具有在数据库中执行所有活动的权限的用户,表示数据库的所有者 (owner)。
-- 一般来说,如果创建了某个数据库,就是该数据库的所有者,即 dbo 用户。
-- dbo 用户是一个比较特殊的数据库用户,无法删除,切此用户始终出现在每个数据库中。

-- 第三步:给数据库用户授权
-- 数据库中有许多的表,不可能让用户拥有所有表的操作权限,所以必须让数据库管理员 DBA 给用户授权,指定具有访问哪些表的哪些权限。
-- 常用的权限包括:添加(Insert)、删除(Delete)、更新(Update)、查看(Select)数据和创建表(Create Table) 等操作。
-- 授权的语法如下:Grant 权限 on 表名 to 数据库用户

-- 把对 Students 表的全部操作权限赋予所有用户:
Grant All Privileges on Students to Public

-- 把赋予所有用户的 Students 表的全部操作权限收回:
Revoke All Privileges  on Students from Public

-- 把对 ChineseScores 表的删除权限赋予 zhulei 用户:
Grant Delete on ChineseScores to zhulei

-- 把对 ChineseScores 表的增、删、改权限赋予 zhulei 用户:
Grant Insert,Delete,Update on ChineseScores to zhulei

-- 把新建表的权限赋予 zhulei 用户:
Grant Create Table to zhulei