数据库sqlserver2000挂起

sqlserver2000挂起  时间:2021-04-23  阅读:()

第12章SQLServer的安全管理学习导读本章主要介绍SQLServer2000的安全特性和权限管理方法.
通过本章的学习,应掌握以下内容:了解SQLServer2000登录验证模式掌握管理两类SQLServer2000登录账户的方法掌握管理SQLServer2000数据库用户的方法了解基于角色的权限管理掌握管理服务器角色的方法掌握管理数据库角色的方法12.
1SQLServer安全体系结构数据的安全性--是指保护数据以防止因不合法的使用而造成数据的泄密和破坏.
SQLServer的安全体系结构:客户机操作系统的安全性.
可以通过在网络系统边界安装防火墙系统得以实施.
SQLServer的登录安全性.
允许哪些用户登录.
数据库的使用安全性.
规定用户登录以后可以使用哪些数据库.
数据库对象的使用安全性.
规定用户登录某一数据库后,可以操作哪些数据库对象以及怎样操作.
SQLServer安全体系结构12.
1.
1操作系统的安全性在使用客户计算机通过网络实现对SQLServer服务器的访问时,用户首先要获得客户计算机操作系统的使用权.
在能够实现网络互联的前提下,用户不必直接登录运行SQLServer服务器的主机,除非SQLServer服务器就运行在本地计算机上.
SQLServer可以直接访问网络端口,所以可以实现对WindowsNT安全体系以外的服务器及其数据库的访问.
操作系统安全性是操作系统管理员或者网络管理员的任务.
由于SQLServer采用了集成WindowsNT网络安全性的机制,所以使得操作系统安全性的地位得到提高,但同时也加大了管理数据库系统安全性和灵活性的难度.
SQLServer安全体系结构12.
1.
2SQLServer的安全性SQLServer的服务器级安全性建立在控制服务器登录账号和密码的基础上.
SQLServer采用了标准SQLServer登录和集成WindowsNT登录两种方式.
无论使用哪种登录方式,用户在登录时提供的登录账号和密码,决定了用户能否获得SQLServer的访问权,以及在获得访问权以后,用户在访问SQLServer进程时就可以拥有的权利.
管理和设计合理的登录方式是数据库管理员(DBA)的重要任务,是SQLServer安全体系中DBA可以发挥主动性的第一道防线.
SQLServer事先设计了许多固定服务器的角色,用来为具有服务器管理员资格的用户分配使用权利.
拥有固定服务器角色的用户可以拥有服务器级的管理权限.
SQLServer安全体系结构12.
1.
3数据库的安全性当用户通过SQLServer服务器的安全性检验以后,将直接面对不同的数据库入口.
这是用户将接受的第三次安全性检验.
在建立用户的登录账号信息时,SQLServer会提示用户选择默认的数据库.
以后用户每次连接上服务器后,都会自动转到默认的数据库上.
对任何用户来说,master数据库的门总是打开的,如果在设置登录账号时没有指定默认的数据库,则用户的权限将局限在master数据库以内.
但是由于master数据库存储了大量的系统信息,对系统的安全和稳定起着至关重要的作用,所以建议用户在建立新的登录账号时,最好不要将默认的数据库设置为master数据库,而是应该根据用户实际将要进行的工作,将默认的数据库设置在具有实际操作意义的数据库上.

默认的情况下,数据库的拥有者(Owner)可以访问该数据库的对象,分配访问权给别的用户,以便让别的用户也拥有针对该数据库的访问权利.
在SQLServer中默认的情况表示所有的权利都可以自由转让和分配.
SQLServer安全体系结构12.
1.
4SQLServer数据库对象的安全性数据库对象的安全性是核查用户权限的最后一个安全等级.
在创建数据库对象时,SQLServer自动把该数据库对象的拥有权赋予该对象的创建者.
对象的拥有者可以实现对该对象的完全控制.
默认情况下,只有数据库的拥有者可以在该数据库下进行操作.
当一个非数据库拥有者想访问数据库里的对象时,必须事先由数据库拥有者赋予用户对指定对象执行特定操作的权限.
例如,一个用户想访问school数据库里的student表中的信息,则必须在成为数据库用户的前提下,获得由school数据库拥有者分配的student表的访问权限.

12.
2SQLServer的验证模式SQLServer对用户的访问检验分为:验证阶段.
用户在SQLServer上获得对任何数据库的访问权限之前,必须登录到SQLServer上,并且被认为是合法的.
许可确认阶段.
用户验证通过后,登录到SQLServer上,系统检查用户是否有访问服务器上数据的权限.
SQLServer2000提供的两种确认用户的验证模式:NT验证模式.
混合验证模式.
NT验证模式12.
2.
1NT验证模式在NT验证模式下,SQLServer检测当前使用WindowsNT/2000的用户账户,并在系统注册表中查找该用户,以确定该用户账户是否有权限登录.
在这种方式下,用户不必提交登录名和密码让SQLServer验证.
NT验证模式有以下主要优点:数据库管理员的工作可以集中在管理数据库之上,而不是管理用户账户.
对用户账户的管理可以交给WindowsNT/2000去完成.
WindowsNT/2000有着更强的用户账户管理工具.
可以设置账户锁定、密码期限等.
WindowsNT/2000的组策略支持多个用户同时被授权访问SQLServer.
NT验证模式SQLServer从RPC协议连接中获取登录所用到的NT/2000用户帐号,因此使用多协议和命名管道(自动使用RPC协议)时可以用NT验证模式.
使用多协议和命名管道的条件:客户端用户具有SQLServer服务器上合法的NT/2000帐号.
SQLServer服务器启用了guest帐号,这种方式安全性不好.
混合验证模式12.
2.
2混合验证模式混合验证模式允许以SQLServer验证模式或者NT验证模式来进行验证.
使用哪个模式取决于在最初的通信时使用的网络库.
如果一个用户使用的是TCP/IPSockets进行登录验证,则将使用SQLServer验证模式;如果用户使用命名管道,则登录时将使用NT验证模式.
这种模式能更好地适应用户的各种环境.
但是对于Windows9x系列的操作系统,只能使用SQLServer验证模式.
SQLServer验证模式处理登录的过程为:用户在输入登录名和密码后,SQLServer在系统注册表中检测输入的登录名和密码.
如果输入的登录名存在,而且密码也正确,就可以登录到SQLServer上.
混合验证模式混合验证模式具有如下优点:创建了WindowsNT/2000之外的另外一个安全层次.
支持更大范围的用户,例如非WindowsNT客户、Novell网络等.
一个应用程序可以使用单个的SQLServer登录或口令.
NT验证模式对SQLServer的影响12.
2.
3NT验证模式对SQLServer的影响SQLServer的配置信息都被保存在master数据库的sysconfigures表内,但是在使用该数据库前,就应该决定采用哪种验证模式.
在WindowsNT/2000的注册表内,保存了SQLServer验证模式的相关信息及启动SQLServer的必须信息.
因此,注册表对SQLServer而言,有着举足轻重的地位.
在注册表中(运行regedit程序,打开注册表编辑器),我的电脑\HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer中的LoginMode的值决定了采用哪种验证模式.
如果该键值为0,则采用混合验证模式,如果该值不为0,则采用NT验证模式.
每次启动SQLServer时,都将检查该键的值,以决定使用哪种验证模式.
NT验证模式对SQLServer的影响注册表设置设置验证模式12.
2.
4设置验证模式操作步骤如下:(1)打开企业管理器,选择服务器组中的服务器,右击鼠标,在弹出的快捷菜单上选择"编辑SQLServer注册属性"命令,打开"已注册的SQLServer属性"对话框.
如果选中"使用SQLServer身份验证"模式,则须输入登录名和密码.
(2)在对话框中设置验证模式后,单击"确定"按钮即可.
设置验证模式(3)还可以通过设置服务器的属性来设置验证模式.
在服务器上右击鼠标,在弹出的菜单中选择"属性"命令,打开"属性"对话框.
(4)单击"安全性"选项卡,在此选项卡中也可以设置验证模式.
如果选中"SQLServer和Windows"表示选择混合验证模式,如果选中"仅Windows"表示选择NT验证模式.
12.
3账号和角色SQLServer的账号:登录服务器的登录账号.
使用数据库的用户账号.
注意:登录账号只是让用户登录到SQLServer中,登录名本身并不能让用户访问服务器中的数据库.
要访问特定的数据库,还必须具有用户名.
用户名可以与登录名进行关联.
用户名属于每一个数据库内部的管理机制,用户名的定义信息存放在数据库的sysusers系统表中.
服务器的登录账号12.
3.
1服务器的登录账号安装SQLServer后,系统默认创建两个登录账号:sa(标准账号)BUILTIN\Administrators(Windows组账号)1.
查看系统创建的默认登录账号打开企业管理器,展开服务器组和服务器.
展开"安全性"文件夹,选择"登录"选项,即可看到系统创建的默认登录帐号.
其中,默认登录账号sa是超级管理员账号,允许SQLServer的系统管理员登录.
服务器的登录账号2.
添加SQLServer登录账号(1)打开企业管理器,展开服务器组和服务器.
展开"安全性"文件夹,在"登录"选项上面右击鼠标,选择"新建登录"命令,打开登录属性对话框.
(2)在"名称"文本框中输入"licb",在"身份验证"选项组中,选择"SQLServer身份验证"单选按钮,并输入密码.
然后在"默认设置"选项组中,选择"数据库"列表框中的"school"数据库,表示该登录帐号默认登录到school数据库中.
服务器的登录账号(3)单击"服务器角色"标签,打开"服务器角色"选项卡.
在此选项卡中,可以设置登录账号所属的服务器角色,这里选择"securityadmin"服务器角色.
服务器的登录账号角色是一种SQLServer安全账户,它是一组系统权限的集合.
利用角色,SQLServer管理者可以将某一组用户设置为某一角色,这样只要对角色进行权限设置便可以实现对所有用户权限的设置,大大减少了管理员的工作量.
角色分为服务器角色和数据库角色.
服务器角色是负责管理和维护SQLServer的组,这些固定的服务器角色是SQLServer内置的,不能对其进行添加、修改和删除,只能向其中加入用户.
服务器的登录账号SQLServer提供的固定服务器角色及其权限如下:sysadmin(系统管理员):拥有SQLServer所有的权限许可.
serveradmin(服务器管理员):管理SQLServer服务器端的设置.
diskadmin(磁盘管理员):管理磁盘文件.
processadmin(进程管理员):管理SQLServer系统进程.
securityadmin(安全管理员):管理和审核SQLServer系统登录.
setupadmin(安装管理员):增加、删除连接服务器,建立数据库复制以及管理扩展存储过程.
dbcreator(数据库创建者):创建数据库、并对数据库进行修改.
bulkadmin(大容量插入操作管理者):可执行大容量插入操作.
服务器的登录账号(4)单击"数据库访问"标签,打开"数据库访问"选项卡,在此选项卡中可选择登录账号可以访问的数据库.
设置完成后,单击"确定"按钮.
服务器的登录账号(5)在出现的"确认密码"对话框中,再次输入密码,即可创建一个名称为licb的登录帐号.
服务器的登录账号3.
修改登录账号属性在企业管理器中,可在登录账号上面右击鼠标,然后在弹出的快捷菜单中选择"属性"命令(也可以双击要修改属性的登录账号),即可打开登录账号的属性对话框,在该对话框中进行修改即可.
4.
删除登录账号如果要删除一个登录账号,在右击登录账号弹出的快捷菜单中选择"删除"命令,此时会打开一个提示对话框,单击"是"按钮确定删除.
数据库的用户12.
3.
2数据库的用户在数据库中,一个用户取得合法的登录账号,只表明该账号可以通过Windows认证或SQLServer认证,并不表明可以对数据库数据和数据库对象进行某种或者某些操作,管理员必须在数据库中为用户建立一个用户账号,才能使该用户访问该数据库.
安装SQLServer后,每个数据库中有两个默认用户账号:dbo.
代表数据库所有者.
guest.
在安装SQLServer时,guest用户被加入到master、pubs、tempdb和northwind数据库中,该用户主要让那些没有属于自己的用户账号的SQLServer登录者作为默认的用户,从而使该登录者能够访问具有guest用户的数据库.
数据库的用户master和tempdb中的guest用户帐号不能被删除,其他几个中的guest用户帐号可以删除.
每个登录帐号在一个数据库中只能有一个用户帐号,但是可以在多个数据库中有用户帐号.
数据库的用户1.
添加数据库用户下面以在test数据库中创建一个用户账号,并将其关联到licb登录账号中为例,介绍其操作步骤.
(1)在企业管理器中,展开SQLServer组及其服务器,在"数据库"文件夹中,展开test文件夹,然后在"用户"选项上右击鼠标,在弹出的快捷菜单中选择"新建数据库用户"命令.
数据库的用户(2)在打开的新建用户对话框中,单击"登录名"文本框右端的下拉箭头,选择licb登录账号,此时"用户名"文本框中自动显示为licb.
可以更改"用户名"文本框中的名称,也可以在"数据库角色成员"列表框中选择新建用户应该属于的数据库角色.

(3)设置完成后,单击"确定"按钮,即可在test数据库中创建一个新的用户账号.
注意:创建用户账号时不能设置其权限,可在创建后通过其属性对话框来设置.
数据库的用户2.
设置用户权限操作步骤如下:(1)在要设置权限的用户上面右击鼠标,然后选择"属性"命令,打开"数据库用户属性"对话框,在该对话框中单击"权限"按钮.
数据库的用户(2)在打开的权限设置对话框中,可以设置用户对数据库对象所具有的权限.
各权限的含义如下:SELECT:对表或者视图的查询.
INSERT:在表或者视图中插入记录.
UPDATE:对表或者视图中的数据修改.
DELETE:删除表或者视图中的数据.
EXEC:执行存储过程.
DRI(DeclarativeReferentialIntegrity):可对表的外键加上限制,以达成表的参考完整性.
数据库的用户(3)如果要设置对表或者视图的某一字段进行操作的权限,可在列表中选择表或者视图,然后单击"列"按钮,可打开"列权限"对话框.
使用该对话框即可进行相应权限的设置.
数据库角色12.
3.
3数据库角色数据库角色是对某个数据库具有相同访问权限的用户账号和组的集合.
SQLServer提供的数据库角色类型:标准角色.
SQLServer已经预定了这些角色所具有的管理、访问数据库的权限,而且SQLServer管理者不能对其所具有的权限进行任何修改.
应用程序角色.
当打算让某些用户只能通过特定的应用程序间接地存取数据库中的数据时采用.
数据库角色1.
标准角色在数据库创建时,系统默认创建10个固定的标准角色.
这些固定的数据库角色的含义如下:public:维护全部默认权限.
db_owner:在数据库中有全部权限.
db_accessadmin:可以添加或删除数据库用户、工作组和角色.
db_securityadmin:管理角色、角色成员、管理对象和语句权限.
db_ddladmin:可以增加、删除和修改数据库中任何对象.
db_backupoperator:可以备份和恢复数据库.
db_datareader:可以选择数据库内任何用户表中的所有数据.
db_datawriter:可以更改数据库内任何用户表中的所有数据db_denydatareader:不能选择数据库内任何用户表中的任何数据.
db_denydatawriter:不能更改数据库内任何用户表中的任何数据.
数据库角色将用户添加到角色中的方法:下面以db_owner数据库角色为例,来查看它的属性,并将用户licb加入到该角色中.
操作步骤如下:(1)在数据库school文件夹下,选择"角色"选项.
(2)在db_owner角色上右击鼠标,然后选择"属性"命令,打开"数据库角色属性-db_owner"对话框,dbo是默认存在的用户,是指数据库的创建者.
单击"添加"按钮.
数据库角色(3)在打开的"添加角色成员"对话框,选择要加入的用户.
这里选择licb用户.
(4)依次单击"确定"按钮,即可将用户licb加入到db_owner数据库角色中.
数据库角色创建用户自定义角色的方法:操作步骤如下:(1)在要创建角色的数据库文件夹下,在"角色"上右击鼠标,然后选择"新建数据库角色"命令,打开"数据库角色属性"对话框,在名称栏中输入自定义角色名称(这里输入"licbRole"),选中"标准角色"单选按钮.
(2)设置完成后,单击"确定"按钮即可创建新角色.
数据库角色(3)在第一次创建数据库角色时,不能为其指定权限.
但是可在创建完成后,通过其属性对话框来指定权限.
在新创建的角色上右击鼠标,打开"数据库角色属性"对话框,单击"权限"按钮,在打开的权限设置对话框中进行设置.
设置完成后,单击"确定"按钮.
数据库角色2.
应用程序角色在处理复杂数据库和含有大表的数据库中,为了让某些用户只能通过特定的应用程序间接地存取数据库中的数据,而不是直接地存取数据库数据,以达到对个别应用程序实施特定的安全性控制时,就应该考虑使用应用程序角色.
当某一用户使用了应用程序角色时,他便放弃了已被赋予的所有数据库专有权限,他所拥有的只是应用程序角色被设置的角色.
通过应用程序角色,能够以可控的方式限定用户的语句或者对象权限.

数据库角色应用程序角色和标准角色的区别:应用程序角色不包含成员应用程序角色默认不是激活的,需要用密码激活应用程序角色不使用标准权限.
当应用角色被激活时,连接会失去数据库中用来登录的权限、用户帐户、数据库角色.
连接只能获得应用程序角色相关联的权限.
思考题现有一应用,有如下要求:用户Sue在销售应用程序中,对数据库Sales中的表Products和Orders上有SELECT、UPDATE和INSERT权限,但他在使用SQL查询分析器或任何其他工具访问Products或Orders表时不应有SELECT、INSERT或UPDATE权限.

问:如何进行上述的安全性控制答:可以创建一个拒绝Products和Orders表上的SELECT、INSERT或UPDATE权限的用户-数据库角色,然后将Sue添加为该数据库角色的成员.
接着在Sales数据库中创建带有Products和Orders表上的SELECT、INSERT和UPDATE权限的应用程序角色.
当应用程序运行时,它通过使用sp_setapprole提供密码激活应用程序,并获得访问Products和Orders表的权限.

数据库角色3.
public数据库角色的权限public数据库角色是每个数据库最基本的数据库角色,每个用户可以不属于其他9个固定的数据库角色,但是至少会属于public数据库角色.
添加新用户帐号时,public角色会自动添加进去.

OneTechCloud(31元),美国CN2 GIA高防VPS月

OneTechCloud发布了本月促销信息,全场VPS主机月付9折,季付8折,优惠后香港VPS月付25.2元起,美国CN2 GIA线路高防VPS月付31.5元起。这是一家2019年成立的国人主机商,提供VPS主机和独立服务器租用,产品数据中心包括美国洛杉矶和中国香港,Cera的机器,VPS基于KVM架构,采用SSD硬盘,其中美国洛杉矶回程CN2 GIA,可选高防。下面列出部分套餐配置信息。美国CN...

HostYun 新上美国CN2 GIA VPS 月15元

HostYun 商家以前是玩具主机商,这两年好像发展还挺迅速的,有点在要做点事情的味道。在前面也有多次介绍到HostYun商家新增的多款机房方案,价格相对还是比较便宜的。到目前为止,我们可以看到商家提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路。近期,HostYun上线低价版美国CN2 GIA ...

UCloud云服务器低至年59元

最近我们是不是在讨论较多的是关于K12教育的问题,培训机构由于资本的介入确实让家长更为焦虑,对于这样的整改我们还是很支持的。实际上,在云服务器市场中,我们也看到内卷和资本的力量,各大云服务商竞争也是相当激烈,更不用说个人和小公司服务商日子确实不好过。今天有看到UCloud发布的夏季促销活动,直接提前和双十一保价挂钩。这就是说,人家直接在暑假的时候就上线双十一的活动。早年的双十一活动会提前一周到十天...

sqlserver2000挂起为你推荐
involving网易yeahwordpress模板wordpress模板与主题的区别sqlserver数据库如何登陆sql server中的数据库波音737起飞爆胎飞机会爆胎?360arp防火墙在哪360ARP防火墙netshwinsockreset游戏出现battlEye Launcher 怎么办ipad代理想买个ipad买几代性价比比较高资费标准电信套餐资费介绍表灌水机谁知道哪个好点的灌水机的地址?工具条有什么工具条比较好
域名网站 花生壳动态域名 免费域名跳转 asp.net主机 免费主机 美国主机代购 网络星期一 ftp教程 hkt Updog yundun lamp兄弟连 免费php空间 七十九刀 酷锐 windows2008 2016黑色星期五 侦探online 服务器操作系统 卡巴斯基免费下载 更多