当前位置:七道奇文章资讯数据防范MSSQL防范
日期:2011-10-07 13:15:00  来源:本站整理

SQL Server 2005安全配置[MSSQL防范]

赞助商链接



  本文“SQL Server 2005安全配置[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

安全性问题一向是一个对比难办理的老问题了,在网络的任何方面都包含安全问题,而我们的数据库也不例外.数据库的安全问题也是我们作为一个 DBA必必要考虑的问题.因为成立数据库的目的是为了让我们的客户端来拜候,所以在此中存在着很多的安全隐患,比方客户端链接的权限、数据传输历程中的安 全等,所以我们在考虑SQL Server服务器安全时,倡议从以下几个方面考虑: 

1.         客户端安全.首先要保证客户端是安全的,比方为客户端安装防病毒软件,防火墙,安装进级补钉等等.
2.         数据传输历程中的安全.数据在传输历程中,很简单被监听,大概被捕捉,所以我们应当利用一些加密机制来保证数据的奥秘性,等等.
3.         最主要还是要在数据库服务器上实现安全机制来保证安全性.我们的SQL Server数据库是一个非常安全的数据库,因为我们的客户端假如想对数据库里的数据举行操作(比方select、insert等),必必要阅历三道检 查,也就是我们要经过三重门(登录考证、数据库考证、对象权限).举个例子,假如我们把SQL Server服务器当作一座大厦,我们首先要现有权利进入大厦,即通过大厦的大门(登录考证),然后还得拥有对某个房间的拜候权限(对数据库的权限),进 入房间后还得拥有翻开保险柜的权利(对表的操作权限).也就是首先我们必须先成立登录帐户,而登录帐户分为两种:windows帐户和SQL帐户(因为 SQL Server有两种身份考证,即windows身份考证和混称身份考证).具体操作办法:翻开“SSMS—SQL Server实例—安全性—登录名”,右键挑选“新建登录名”,挑选身份考证情势(身份考证情势差别,帐户范例也不一样,注意:成立windows登录帐 户,必须先在windows操作系统上先成立该账户),输入名字,并为该用户挑选一个默许数据库(比方默许为master数据库).该账户成立好之后,我 们通过“新建”—“数据库引擎查询”的方法来测试用户,我们会发现该用户只能衔接数据库,并不能对数据库举行任何其他操作.所以下面是第二道门,成立数据 库用户,以便用户可以拜候数据库,对数据库举行操作.我们在成立数据库用户时,其实就是映射登录用户,所以在普通情形下,我们的登录名和数据库用户名是一 致的.操作办法:第一种:翻开“SSMS—SQL Server实例—具体的数据库—安全性—数据库用户”;第二种:直接在从前成立过的登录用户上映射数据库便可以了.最后一道门是在具体的数据库对象(比 如表)上授与具体的权限,三种权限:授与、回收、回绝.这里不再具体承受三种权限的辨别.前面提了一下安全配置的一些基本概念了,下面在给大家介绍一下, 若何通过T-SQL语句来实现帐户的成立.因为在客户端衔接到SQL Server服务器时,有两种身份考证:windows身份考证大概利用SQL身份考证,所以在利用帐户时,也可以利用两种范例的帐户,在这里我们要注意 一个问题,前面说起过衔接SQL需求三道门,那我们就需求成立帐户,当我们的环境是工作组时,假如利用windows身份考证,比方成立了一个用户 zhangsan,那就要求要衔接的客户端也成立一样的帐户,并且密码要求一样,不然无法衔接,下面是一些具体的例子:
1.   windows身份考证:
Sp_grantlogin ‘login’
例子:答应sky域用户user1及sqlusers组衔接SQL服务:
答应本地组Users衔接SQL服务
sp_grantlogin ‘sky\user1’
sp_grantlogin ‘test\sqlusers’
sp_grantlogin ‘BUILTIN\users’
go
 
 
Sp_denylogin ‘login’
 例子:
–         禁止sky域用户user1及sqlusers组衔接SQL服务:
–         禁止本地组Users衔接SQL服务
    sp_denylogin ‘sky\user1’
    sp_denylogin ‘sky\sqlusers’
    sp_denylogin ‘BUILTIN\users’
    go
删除登录标识:
Sp_revokelogin ‘login’
例子:
从sysxlogins系统表中删除user1及sqlusers
   sp_revokelogin ‘sky\user1’
   sp_revokelogin ‘sky\sqlusers’
   go
成立SQL登录标识:
Exec  Sp_addlogin ‘login’
  ‘password’
  ‘database’
  ‘language’
  ‘sid’
  ‘encryption_option’
举例:Exec Sp_addlogin test1
Exec Sp_addlogin test2, password, northwind
      改正登录标识:
Exec Sp_password ‘oldpsw’,’newpsw’,’login’
Exec Sp_defaultdb ‘login’,’database’
Exec Sp_defaultlanguage  ‘login’,’language
删除SQL登录标识:
exec sp_droplogin ‘login’
2.   数据库角色:
成立和删除自定义角色:
Sp_addrole  ‘role’, ‘owner’
–   Role为成立的角色
–   Owner为角色的拥有者,默许为dbo
Sp_droprole ‘role’
Use northwind
Go
Sp_addrole ‘sales’, ‘dbo’
Go
Sp_addrole ‘manager’
Go
Sp_droprole ‘manager’
Go
为固定服务器角色增添删除成员:
Sp_addrole  ‘role’, ‘owner’
–   Role为成立的角色
–   Owner为角色的拥有者,默许为dbo
Sp_droprole ‘role’
为数据库角色增添删除成员:
Sp_addrolemember ‘role’, ‘account’
Sp_droprolemember ‘role’, ‘account’
–   Role为固定或自定义数据库角色
–   Account为SQL登录标识或NT帐号
管理数据库用户:
Sp_grantdbaccess ‘login’, ‘name_in_db’
Sp_revokedbaccess ‘name_in_db’
–   Login为登录标识
–   Name_in_db为在数据库里的用户帐号,默许为同名
 
3.   权限授与、回绝、回收
将northwind的订单表的select答应授与全部用户:
Use northwind
Go
Grant select
        on 订单
        to public
go
将sales表的数据改正答应授与自定义角色salesmanger:
Grant insert,update,delete
        on sales
        to salesmanger
Go
答应用户user1查看publishers表的全部内容,但只答应改正pub_id列:
Grant select,update{pub_id}
        on publishers
        to user1
Go
  以上是“SQL Server 2005安全配置[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • sqlserver索引的原理及索引成立的注意事项小结
  • SQL Join的一些总结(实例)
  • SQL的Join利用图解教程
  • SQL中JOIN和UNION辨别、用法及示例介绍
  • 关于SQL中CTE(公用表表达式)(Common Table Expression)的总结
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .