在SQLSERVER2005执行存储过程的权限分配问题

SQL SERVER 2005数据库中,为了提高数据库的安全性,当执行某些存储过程的时候,我们需要设置一些权限来避免一些危险性的操作造成数据库的损坏和数据的丢失等。本文从以下几个方面分别说明。

创新互联建站是一家专注于成都网站建设、成都网站设计与策划设计,色尼网站建设哪家好?创新互联建站做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:色尼等地区。色尼做网站价格咨询:13518219792

1.关于权限设置

一个库,一个连接帐号和密码,比如zhuzhu这个库,只给PUBLIC权限。SA帐号基本是不使用的.因为SA实在是太危险了.PUBLIC权限足够用了。

2.安装防火墙

如果只是在本机调试系统,因为SQL有些人没打补丁会被溢出,安装防火墙是非常好的选择,这样即使有漏洞别人也无法攻击。

3.改变端口

如果SQL Server数据库需要远程访问,端口一定是要开放的,即使安装了防火墙,也要将SQL Server的服务端口1433放开,针对SQL Server的攻击工具主要扫描的是1433端口,可以改变默认端口,这样虽然不能从根本上解决问题,但可以对付一般的扫描,改变端口最简单的办法是在打开“开始”——〉“所有程序”——〉“Microsoft SQL Server” ——〉“服务器网络实用工具”,在界面中选中“TCP/IP”,点击“属性”,把1433改为不超过65535的一个数,重启SQL Server服务,这样默认端口就改了,注意这时你远程连接SQL Server时IP地址后要加改过的端口号。

4.删除不需要的扩展存储过程

如果你的系统中确实不需要这些扩展存储过程可以删除。

删除存储过程的命令是:EXEC sp_dropextendedproc ‘存储过程的名称’

主要有一下这些:

 
 
 
  1. exec sp_dropextendedproc ’xp_cmdshell’  
  2.  
  3. exec sp_dropextendedproc ’xp_dirtree’  
  4.  
  5. exec sp_dropextendedproc ’xp_enumgroups’  
  6.  
  7. exec sp_dropextendedproc ’xp_fixeddrives’  
  8.  
  9. exec sp_dropextendedproc ’xp_loginconfig’  
  10.  
  11. exec sp_dropextendedproc ’xp_enumerrorlogs’  
  12.  
  13. exec sp_dropextendedproc ’xp_getfiledetails’  
  14.  
  15. exec sp_dropextendedproc ’Sp_OAcreate’  
  16.  
  17. exec sp_dropextendedproc ’Sp_OADestroy’  
  18.  
  19. exec sp_dropextendedproc ’Sp_OAGetErrorInfo’  
  20.  
  21. exec sp_dropextendedproc ’Sp_OAGetProperty’  
  22.  
  23. exec sp_dropextendedproc ’Sp_OAMethod’  
  24.  
  25. exec sp_dropextendedproc ’Sp_OASetProperty’  
  26.  
  27. exec sp_dropextendedproc ’Sp_OAStop’  
  28.  
  29. exec sp_dropextendedproc ’Xp_regaddmultistring’  
  30.  
  31. exec sp_dropextendedproc ’Xp_regdeletekey’  
  32.  
  33. exec sp_dropextendedproc ’Xp_regdeletevalue’  
  34.  
  35. exec sp_dropextendedproc ’Xp_regenumvalues’  
  36.  
  37. exec sp_dropextendedproc ’Xp_regread’  
  38.  
  39. exec sp_dropextendedproc ’Xp_regremovemultistring’  
  40.  
  41. exec sp_dropextendedproc ’Xp_regwrite’  
  42.  
  43. drop procedure sp_makewebtask 

要恢复该存储过程,命令是:EXEC sp_addextendedproc存储过程的名称 ,@dllname ='存储过程的dll'。

例如:恢复存储过程xp_cmdshell,EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll',注意,恢复时如果xplog70.dll已删除需要copy一个。

关于SQL SERVER 2005数据库执行存储过程的权限问题就介绍到这里,谢谢大家的支持!

【编辑推荐】

  1. 如何将系统监视器数据记录到SQL Server
  2. 巧用DAC解决SQL Server登录失败的问题
  3. 用FOR XML PATH将查询结果以XML输出
  4. 使用SQL Trace来实现SQL Server的跟踪操作
  5. CTE和WITH AS短语结合使用提高SQL查询性能

文章名称:在SQLSERVER2005执行存储过程的权限分配问题
URL标题:http://www.36103.cn/qtweb/news1/39151.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联