SQL安全注意事项列表

2008-04-02 11:00:37来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  【IT专家网独家】尽可能使用WindowsOnly验证模式以确保安全性。

  使用集成化安全模式,OS安全性能够大大地简化管理工作,管理员无需再同时管理两个单独的安全模型。这样还能够使连接字符串中不包含密码。

  1) 花点时间去审计SQL登录密码的有效性连同密码安全性。

  使用以下代码检查无效密码:

  Use master
  Select name,
  Password
  from syslogins
  where password is null
  order by name

  检查密码安全性的强弱有很多免费和付费工具,SQLPing2就是个免费的工具,能够用来检查密码的有效性和安全性。

  2)经常检查群组和角色成员身份

  虽然SQL Server安全性模式有很多改进,但是他也同时增加了一层额外的权限,我们必须对此进行监督,确保每个成员的权限符合其成员身份。更有的情况就是用户在企业里的身份已发生改变,但是SQL Server的权限结构还没有做出相应的调整。

  3)确保SQL Server的物理安全性

  把SQL Server锁在门后,假如您正在使用他,就把钥匙锁藏起来。因为坐在server前的人总有会钻空子的。

  4)重写应用程式,使用能够更好地定义用户的存储程式和视图

  这样做能够尽量减少提供直接访问表格权限的需要。程式研发员能够更好控制数据存取的情况。

  5)启用记录任何用户登录事件

  您能够通过以下代码完成这一点:

  xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer',N'AuditLevel', REG_DWORD,3

  6)检查master..Sp_password中是否含有trojan代码

  把您的生成脚本和全新安装程式的过程默认脚本进行对比。把这些代码保存在方便查阅的地方。

  7)检查master..Sp_helpstartup中是否含有trojan程式

  确保这里没有后门程式。使用Sp_unmakestartup来清楚任何流氓程式。

  8)除非绝对有必要的情况,否则禁用SQL Mail功能

  开放这个功能无疑给黑客另一个传播木马、病毒或给攻击服务器使其不能提供服务的途径。这个功能本身并没有任何害处,但是他能够被黑客所利用。

  8)清除数据库里的访客用户,确保没有未授权用户滥用数据库

  这个是默认配置,但是要警惕一些dbo在权限控制上出现松懈的情况。唯一的例外情况是当主数据库和tempdb数据库需要作为访客帐户登录时。

  9)确保任何SQL Server数据和系统文档都安装在NTFS分区里

  假如有人需要访问OS,确保需要有必要的权限配置,防止出现重大问题。

  10)需要使用SQL Server服务时使用低权限的用户帐号,而不要使用LocalSystem或管理员帐号。

  这个帐号应该配置为最小权限(最好是本地用户),而且应能够在出现漏洞的情况下抑制服务器受到攻击。注意假如使用Enterprise Manager或SQL Server Configuration Manager (SQL 2005)来做改变的话,文档、注册和用户权利的SCLs都会自动完成。

  11)配置安全性强的密码来确保“sa”帐户的安全

  适用于使用SQL Server和Windows安全模式的情况。尽可能使用Windows Only模式,这样您就不用担心有人会强制使用“sa”帐户。当然,就算做到这一步,最好还是配置一个安全性强的密码,因为难免不会出现有人改变系统模式的情况。

  12)只选择企业必需的网络连接库

  假如企业的SQL Server只是本地使用,为什么不禁用任何的网络连接库,只使用共享内存来访问SQL Server呢?只用'(local)'作为服务器名称。假如您的SQL Server需要连接其他服务器,使用TCP/IP netlib,然后决定是否需要SSL。

  13)确保使用最新版的操作系统和SQL Server 服务包/热补丁

  毫无疑问,这是安全事项里不可能会缺少这一项。只要在您的SQL Server里执行"select @@version"。

  14)只允许使用sysadmins-only来访问危险的存储程式和扩展存储程式。

  需要注意的安全事项有很多。但注意不要先在生产服务器里执行,应该在研发服务器里先进行测试,这样您就不会破坏任何的功能。推荐用户能够测试以下方面:

  sp_sdidebug
  xp_availablemedia
  xp_cmdshell
  xp_deletemail
  xp_dirtree
  xp_dropwebtask
  xp_dsninfo
  xp_enumdsn
  xp_enumerrorlogs
  xp_enumgroups
  xp_enumqueuedtasks
  xp_eventlog
  xp_findnextmsg
  xp_fixeddrives
  xp_getfiledetails
  xp_getnetname
  xp_grantlogin
  xp_logevent
  xp_loginconfig
  xp_logininfo
  xp_makewebtask
  xp_msver
  xp_regread
  xp_perfend
  xp_perfmonitor
  xp_perfsample
  xp_perfstart
  xp_readerrorlog
  xp_readmail
  xp_revokelogin
  xp_runweb

  IT专家网原创文章,未经许可,严禁转载!


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: SQL Server扩展存储过程实现远程备份和恢复

下一篇: SQL Server数据库管理常用的SQL和T-SQL语句