文章目录
注意:切换服务器身份验证模式
登录账号操作
Windows NT认证模式登录账号的建立与删除
sp_grantlogin [@loginname=]'login'
sp_revokelogin [@loginname=]'login'
SQL Server认证模式登录账号的建立与删除
sp_addlogin [@loginname=] 'login' [,[@passwd=]'password'][,[@defdb=]'database']
sp_droplogin [@loginname=]'login'
服务器角色操作
固定服务器角色
sp_addsrvrolemember [@loginname=]'login',[@rolename=]'role'
sp_dropsrvrolemember [@loginname=] 'login',[@rolename] 'role'
固定数据库角色
首先要添加数据库用户`
将登录账号添加为某个数据库的用户和从数据库用户中删除
sp_grantdbaccess [@loginname=]'login' [,[@name_in_db]='name_in_db']
sp_revokedbaccess [@name_in_db=]'name_in_db'
固定数据库角色添加成员和删除成员
sp_addrolemember [@loginname=]'role', [@membername=]'security_account'
sp_droprolemember[@loginname=]'role', [@membername=]'security_account'
用户自定义数据库角色
sp_addrole [@rolename=]'role' [,[@ownername=]'owner']
sp_droprole [@rolename=]'role'
举例
Use Stu_Course
Exec sp_addlogin 'wei','000' --创建SQL内建账号,验证访问权限,现在还无权访问,继续
Go
Exec sp_grantdbaccess 'wei','w' --再次验证,可以看到现已经能展开,但看不到表,继续
Go
Exec sp_addrole 'DB_role1' --创建新角色
GRANT SELECT(Sname,Sage) ON Student TO DB_role1 --封装权限
Exec sp_addrolemember 'DB_role1','w'--角色成员添加,即是授权。再来验证,已经可以看到select表了,继续,可以看到不能打开表,我们只授权了两列能select,我们用语句验证。看到了吧,我们只授权了这两列的查看,其他权限没有授权就不能使用!
Go
select Sno from Student
select Sname,Sage from Student
在查询分析器和企业管理器中验证访问的正确性。
或者在局域网内连接对方服务器验证访问权限。
注意服务器中所有有关权限的操作项!