编程管理SQLSERVER的帐号

文章作者 100test 发表时间 2011:03:24 19:52:06
来源 100Test.Com百考试题网


  每个人都关心数据安全。如果不关心的话,可能没有意识到访问服务器中的敏感数据是非常容易的。因为SQL SERVER在这方面已经替我们考虑过了,所以在我们开发应用程序就可以直接使用SQL SERVER的安全策略。

  在SQL SERVER中,我们可以在ENTERPRISE MANAGER中创建一个登录帐号,并且赋予一定的权限,如果要做到我们的应用程序中呢?

  SQL SERVER提供了如下系统过程

  一、SP_ADDLOGIN 添加登录帐号

  SP_ADDLOGIN login_id[,password[,defaultdb[,defaultlanguage]]]

  login_id 帐号名

  password 口令

  defaultdb 缺省数据库,默认为MASTER数据库。

  defaultlanguage 缺省语言

  二、SP_ADDUSER 添加用户

  SP_ADDUSER login_id[,username[,rolename]]

  username 登录数据库的别名

  rolename 用户隶属的组名

  三、SP_DROPLOGIN 删除帐号

  SP_DROPLOGIN login_id

  四、SP_DROPUSER 删除用户

  SP_DROPUSER username

  五、GRANT 授予用户或组许可权限

  GRANT permission_list ON object_name TO name_list

  permission_list 授予的权限的清单

  object_name 被授予权限的表、视图或存储过程

  name_list 被授予权限的用户或组的清单

  六、REVOKE 收回用户或组许可权限

  REVOKE permission_list ON object_name FROM name_list

  七、SP_PASSWORD 修改口令

  SP_PASSWORD [old_password,]new_password[,login_id]

  前六个过程只能SA或被SA授予Security Administrators权限的人才可使用,第七个过程普通用户可能使用,但不能使用login_id项,只有上述权限的人才可使用此项

  应用实例:

  添加

  declare @login varchar(6),@pass varchar(11)

  exec sp_addlogin @login,@pass,databasename

  exec sp_adduser @login,@login,public

  grant insert,0select,0update,0delete on table1 to public

  删除

  revoke insert,0delete on table1 from public

  exec sp_0dropuser @login

  exec sp_0droplogin @login

  本文代码在NT4 SQL7和WIN98 SQL7和NT4 SQL6.5中测试通过



相关文章


计算机等级,计算机等级考试,计算机二级,计算机二级考试,Visual Foxpro,程序例题,计算器
全国计算机等级考试,计算机等级,计算机等级考试,计算机二级,计算机二级考试,等级考试,二级考试,VF,Visual Foxpro,Foxpro
VFP中常用WIN32API函数调用事例
vsFlexgrid绑定ADO记录集的示例
编程管理SQLSERVER的帐号
将DBF表导入到SQLSERVER中的函数
VFP远程视图使用面面观
VFP和SQL
2011年计算机二级VFP考试基础教程(52)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛