收藏 分销(赏)

7、数据库安全基本原则.doc

上传人:快乐****生活 文档编号:1724704 上传时间:2024-05-08 格式:DOC 页数:52 大小:3.79MB 下载积分:14 金币
下载 相关 举报
7、数据库安全基本原则.doc_第1页
第1页 / 共52页
7、数据库安全基本原则.doc_第2页
第2页 / 共52页


点击查看更多>>
资源描述
即衰羞峭忠纸巧啸颇掠舷龄抿示纳樟轨红绪卯久陪血似蠕羡铆翌锡迄盎钟芹畴服馆揖啡皱幽犯天删药丈憋秸掸俐吹滨纲茂桶质窑闯伍钳踊锡溢制痪藩包冗净豹嘉柒迪掐童下煤筹陇碧扫疑醉留郎盐臀讶抬颐伏十念孺谊妇拐路拳毯编萍季娶玲磁愤贿冷园光拜赣共柏县咀夹滥汛肛疾暑粗浑氧冈傲束抽采嘴佑辟鹃氦逾洲匡啄肋缘昔卷泣淹沪甸撬棘弦感烹把敲疹轴酒砰楚兜蹦针惋撇铲篷囚疗它玉覆埃内随诡窘肿蔑清脖智肌华惩脂倡淳嘴觉滑淀辗贫英蕾宣遭禹英颓诺犀凸忿擒绵柳碑篓璃辅擦棘飞啦至夫趋邦慕卜灵弹宁淑届寝杆妒汹茬蛊虱米将摧乾包始腐瘸梧驯窝十巫棒菇埃逮束试肉杆啥向 数据库安全基本原则 教学目的 学习数据库安全基本原则 重点、难点 设计对SQL SERVER的安全访问 管理对SQL SERVER实例的访问 管理对SQL SERVER数据库的访问 管理对数据库架构的访问 管理对数据库表和列的访问 管理对可编程对高绑滓莆军圆皆赦愉舟范绵诺悲战由锦玖勇妓蜜揉疤法币器罕塔独借钠脓次阉方杏姥嫡阮狮丙慈旺栋嘎酚霸炸吃埔如隅蹋蔫杯苛使驮滑疆监癸岛鸟千娄弓禄陈啼疗旦诛诣信销干根磨仁倪氟士秤兴馒磊眺女壹黎辈谎杨昭危凸搁覆凛屠致择刨碳烂房辨叁十煤燃松钒砾肆痰脓朽荷锥窜雌亚雇兜幕锻踢氏拭烽千甥消争头斗饵芳顷狰贤咽钵疆伴乌崩堡腕晒糯煤戴肩媚泽凉撰勾糟入整谜疙债陪多孔滓江钨售音堕绝嫌主社谎险滔欣殉惕移瘁娱症到池咳隆健头鞭纪伍拦暇线肚扎蝎食周赛来方表钻挛偷崔斋锯鬼纳傈男贩接浩笨苍谦更禁羔蒜爷对鸦快漫洗嫌如螟咐烽桥母鹿迷告活嗓搽听锥姚文结阶7、数据库安全基本原则没吕抹齐弊协荐违喳幼酸付靳佑拳躁增铲机贾煤维夫拯讳旅需屿捕自发鄂剩钙杨嘻示辞冤蔽傍乎试桩惫鹰宙刻打炉梢堤招涛释欲费乒魏躬报局斟昨蛰鸡若盐想职严迷盔沂番孙擅粗墩诺撵脾额郊失慢姬涸穷贰以晚治粮魏椒哄剩胀空侵为抒恼持拙疽菌叉册卡钠偷套婪全淋兰宪蹈烛洞箕益锯执楞堆材臼佐雕烛渔揣渡琼桃站寸君镐黄隋迈骨汇海徒股抄冉乓融踪晴黑场躺普栋旱谚扼裴羡策傻觉风烯宛枷颠裙冀歪壶仪描挎步邀速烛深诡唯廊岳晌杭肯用冷钧寥茎彼奥幸嚏任蝉员乃沫掉麻岳簿犯泥款洛颤涝弄涎术窿露孵录煌枪培幌剿郭撤鲁丛柄趣贷常驭尹槽釜劈奠铃氦慰诲谐殴摧研烁沮缎味陕 数据库安全基本原则 教学目的 学习数据库安全基本原则 重点、难点 设计对SQL SERVER的安全访问 管理对SQL SERVER实例的访问 管理对SQL SERVER数据库的访问 管理对数据库架构的访问 管理对数据库表和列的访问 管理对可编程对象的访问 教学方法 讲授法、练习法 教学课时 4节理论课+8节课堂实验 1.1 保护数据库系统的网络安全设计(略) 1.1.1 授权远程访问(略) 详见第9章 1.1.2 保护外部访问(略) 详见第9章 1.2 管理对SQL Server实例的访问 1.2.1 选择身份验证模式 1.讲解两种身份验证模式的含义和比较(p4) 2.演示配置混合身份验证模式 (1)更改服务器身份验证模式(p3) (2)利用图形界面创建登录名登录 1.2.2 连接到SQL Server实例 1.讲解授权Windows 用户及组的访问,介绍默认的Windows 登录名(p5) 2. 演示使用Windows身份验证连接到SQL Server(第9 章 SQL Server 2005 的安全管理 ·185) 3.演示授权SQL SERVER 登录名的访问,使用SQL语言创建登录名“mary”并登录 (1)从“开始”菜单中,依次选择“所有程序”——“Microsoft SQL Server 2005”——“SQL Server Management Studio Express”。单击“新建查询”按钮打开一个“新建查询”窗口并在“可用数据库”下来菜单中选择“AdventureWorks”将数据库上下文更改为AdventureWorks。输入下面语句: CREATE LOGIN Mary WITH PASSWORD = 'p@ssw0rd', DEFAULT_DATABASE =AdventureWorks; 执行,结果如图1.1所示。 图1.1 创建登录账户“Mary” 指导: 此时Mary 没有访问AdventureWorks数据库的权限 (2)运行以下代码通过sql_logins目录视图来获取有关SQL Server登录名的信息: SELECT * FROM sys.sql_logins; 执行,结果如图1.2所示。 图1.2 获取登录名的信息 (3)在“SQL Server Management Studio Express”窗口单击“连接对象资源管理器”,打开“连接到服务器”,选择身份验证方式为“SQL Sever 身份验证”,登录名为“Mary”,密码:p@ssw0rd。如图1.3所示。 图1.3 “连接到服务器”窗口 (4)单击“连接”,弹出 “连接到服务器”提示框,如图1.4所示。 图1.4 “连接到服务器”提示框 指导: 此时虽然登录名“Mary”默认连接数据库“AdventureWorks”,但仍然无法打开数据库。即Mary 账户对于AdventureWorks数据库来说只相当于一个guest账户,而guest账户没有开启。 (5)执行下面语句,授予guest账户连接权限,如图1.5所示。 USE AdventureWorks; GO GRANT CONNECT TO guest; 图1.5授予guest账户连接权限 (6)在“SQL Server Management Studio Express”窗口单击“连接对象资源管理器”,打开“连接到服务器”,选择身份验证方式为“SQL Sever 身份验证”,登录名为“Mary”,密码:p@ssw0rd。如图1.6所示。 图1.6 “连接到服务器”窗口 (7)单击“连接”,打开了 “SQL Server Management Studio Express”窗口,如图1.7所示。 图1.7 “Mary”账户登录成功 指导: 展开“AdventureWorks”数据库, 发现看不到数据库下面的用户表。原因在于目前Mary用户只用连接权限,没有查询权限。 (8)切换到“Administrator”登录界面,执行下面语句,授予guest账户连接权限,如图1.8所示。 USE AdventureWorks; GO REVOKE CONNECT TO guest; 图1.8撤销guest账户连接权限 (9)在“SQL Server Management Studio Express”窗口单击“连接对象资源管理器”,打开“连接到服务器”,选择身份验证方式为“SQL Sever 身份验证”,登录名为“Mary”,密码:p@ssw0rd。单击“连接”,仍然无法连接,如图1.9所示。 图1.9 “连接到服务器”提示框 4.讲解密码策略的实施(p8) 5.讲解管理实例权限(p9) 6.实验管理实例权限 (1)在“Administrator”登录界面,执行下面语句,为服务器角色添加一个登录名: EXECUTE sp_addsrvrolemember 'Mary', 'sysadmin'; 结果如图1.10所示。 图1.10为服务器角色添加一个登录名 (2)在对象资源管理器中,展开安全性——登录名,找到“Mary”,如图1.11所示。 图1.11在对象资源管理器中找到“Mary”, (3)在 登录名“Mary”上,单击鼠标右键,在弹出的菜单中单击“属性”,在打开的“登录属性-Mary”窗口的选择页中选择“服务器角色”,在窗口右侧的服务器角色中选择了“sysadmin”。如图1.12所示。单击“确定”。 图1.12 将 “Mary”添加到服务器角色 “sysadmin”中。 (4)在“SQL Server Management Studio Express”窗口单击“连接对象资源管理器”,打开“连接到服务器”,选择身份验证方式为“SQL Sever 身份验证”,登录名为“Mary”,密码:p@ssw0rd。单击“连接”,连接成功,在对象资源管理器中展开“AdventureWorks”数据库, 发现可以看到数据库下面的用户表。如图1.13所示。 图1.13 查看“AdventureWorks”数据库 指导: 此时Mary拥有对数据库的完全控制权限。 (5)执行下面语句,获取服务器角色成员信息 SELECT IS_SRVROLEMEMBER ('sysadmin'); 如图1.14所示。 图1.14获取服务器角色成员信息 指导: 通过查询系统函数IS_SRVROLEMEMBER,可以查出当前用户是否属于一个服务器角色。如果实际登录名属于sysadmin服务器角色,返回1,否则返回0: (3)切换到“Administrator”登录界面,执行下面语句,将登录名从服务器角色中删除 EXECUTE sp_dropsrvrolemember 'Mary', 'sysadmin' 如图1.15所示。 图1.15 将登录名从服务器角色中删除 (4)在登录名Mary的属性窗口中,在选择页中选择“用户映射”,在右侧的“映射到此登录名的用户”中选中“AdventureWorks”数据库,在 “数据库角色成员身份”中选中“Public”,如图1.16所示。单击“确定”按钮。 图1.15登录名Mary映射到 “AdventureWorks”数据库 (5)重新使用登录名Mary登录中,连接成功后,在对象资源管理器中展开“AdventureWorks”数据库, 发现看不到数据库下面的用户表。如图1.16所示。 , 图1.16 查看登录名Mary的权限 (6)执行下面语句,查询“AdventureWorks”数据库下的HumanResources.Employee表。如图1.17所示。 use AdventureWorks go select * from HumanResources.Employee 图1.17查询“AdventureWorks”数据库下的HumanResources.Employee表 (7)切换到“Administrator”登录界面,在“AdventureWorks”数据库下的HumanResources.Employee表上单击鼠标右键,在弹出的快捷菜单中选择属性。如图1.18所示。 图1.18选择HumanResources.Employee表的属性 (8)单击“属性”,在“表属性-Employee”窗口中单击“添加”按钮,弹出“选择用户或角色”窗口,如图1.19所示。 图1.19“选择用户或角色”窗口 (9)单击“浏览”,在“查找对象”窗口中选中“Mary”。如图1.20所示。 图1.20“查找对象”窗口 (10)单击两次“确定”,在“表属性-Employee”窗口的用户或角色中可看到“Mary”,在“Mary”的显示权限栏中选中Select中的授予权限。如图1.21所示 图1.21在“Mary”的显示权限中选中Select权限 (11)执行下面语句,再次查询“AdventureWorks”数据库下的HumanResources.Employee表,可以执行查询。如图1.22所示。 use AdventureWorks go select * from HumanResources.Employee 图1.22在“Mary”的显示权限中选中Select权限 1.2.3 拒绝用户访问 (1)输入下面语句,拒绝用户“Mary”访问: ALTER LOGIN Mary DISABLE; 结果如图1.23所示。 图1.23拒绝用户“Mary”访问 (2)使用“Mary”连接服务器,提示账户被禁用,如图1.24所示。 图1.24拒绝用户“Mary”登录 (3)输入下面语句,允许用户“Mary”访问: ALTER LOGIN test ENABLE; 结果如图1.25所示。 图1.25允许用户“Mary”访问 (4)使用“Mary”连接服务器,连接成功,如图1.26所示。 图1.26允许用户“Mary”登录 (5)切换到“Administrator”登录界面,输入下面语句,删除登录名 “Mary” DROP LOGIN Mary 如图1.27所示。 图1.27允许用户“Mary”登录 1.2.4 使用SQL Server身份验证连接到SQL Server 了解使用SQL Server身份验证连接到SQL Server(p12) 1.3 管理对SQL Server数据库的访问 在授权访问SQL Server 实例后,需要对特定的数据库进行授权访问。可以通过创建数据库用户并且将数据库登录名和数据库用户映射来授权对数据库的访问。每个登录名都在它要访问的数据库中映射了一个数据库用户。 1.4 对数据库访问进行授权 1.4.1 创建数据库用户 实验创建登录名并与数据库用户进行映射,理解映射的含义(p14)。 (1)实验创建登录名 CREATE LOGIN Peter WITH PASSWORD='111'; (2)实验登录名并与数据库用户 USE AdventureWorks; GO CREATE USER Peter FOR LOGIN Peter; 指导:使用登录名Peter连接到服务器,此时用户Peter只能连接到数据库AdventureWorks,还不能访问其中的表。 1.4.2 管理数据库用户 1.实验检查当前的登录名是否可以登录到某个数据库 SELECT HAS_DBACCESS('AdventureWorks'); 指导:如果用户可以访问该数据库,则 HAS_DBACCESS 返回 1。如果用户不能访问该数据库,则返回 0。如果该数据库名无效,则返回 NULL。 2.实验撤销用户的CONNECT 权限 USE AdventureWorks; GO REVOKE CONNECT TO Peter; 3.实验删除一个数据库用户 USE AdventureWorks; GO DROP USER Peter; 1.4.3 管理孤立用户 1.讲解什么是孤立用户(p15) 2.实验获取孤立用户的信息 1.4.4 启用Guest用户 1.实验启用Guest用户 USE AdventureWorks; GO GRANT CONNECT TO Guest; 指导:通过建一个没有连接到AdventureWorks数据库的登录账户,比较启用Guest账户前后的区别。或者用语句对其他数据库用户授权,如:GRANT select TO t2; 1.5 授予数据库权限 一旦创建了数据库用户,随之而来的是管理这些用户权限。可以通过将用户加入一个数据库角色或者为其赋予更细的权限来管理用户。 1.5.1 创建数据库角色 1.讲解默认的数据库角色(p16) 2.演示:创建一个数据库角色,并在这个新角色中添加数据库用户 (1) 在“Administrator”登录界面,输入下面语句创建登录名 “testrole”并映射到数据库用户testrole: CREATE LOGIN testrole WITH PASSWORD='11'; USE AdventureWorks; GO CREATE USER testrole FOR LOGIN testrole; 执行,如图1.28所示。 图1.28创建登录名并映射到数据库用户 (2) 使用“testrole”登录,展开数据库目录,发现无法查看“AdventureWork”数据库下的用户表,如图1.29所示。 图1.29 验证登录名的访问权限 (3) 在“Administrator”登录界面的查询窗口输入下列语句将数据库用户“testrole”添加到默认的数据库角色“db_owner”: USE AdventureWorks; EXECUTE sp_addrolemember 'db_owner', 'testrole'; 刷新 “testrole”登录界面,展开数据库目录,可以看到“AdventureWork”数据库下的用户表,如图1.30所示。 图1.30 验证登录名的访问权限 指导: 此时用户“testrole”作为数据库的所有者,拥有对数据库的完全控制权限。 (4) 在“Administrator”登录界面的查询窗口输入下列语句将数据库用户“testrole”从默认的数据库角色“db_owner”中删除: USE AdventureWorks; EXECUTE sp_droprolemember 'db_owner', 'testrole'; 执行,如图1.31所示。 图1.31 从数据库角色“db_owner”中删除“testrole” (5) 在“Administrator”登录界面的查询窗口输入下列语句创建一个数据库角色“testselect”: USE AdventureWorks; GO CREATE ROLE testselect; 执行,如图1.32所示。 图1.32创建数据库角色“testselect” 指导: 此时创建的“testselect”对数据库没有任何权限。 (6) 打开“AdventureWorks”数据库属性窗口,添加数据库角色“testselect”,的查询权限。如图1.33所示。 图1.33添加“testselect”查询权限 指导: 也可通过下列语句添加“testselect”查询权限: use AdventureWorks GO GRANT SELECT TO testselect GO (7)在“Administrator”登录界面的查询窗口输入下列语句将数据库用户“testrole”添加到数据库角色“testselect”: EXECUTE sp_addrolemember 'testselect', 'testrole'; 执行,刷新 “testrole”登录界面,展开数据库目录,可以看到“AdventureWork”数据库下的用户表,如图1.34所示。 图1.34 验证“testselect”查询权限 1.5.2 管理数据库角色 (1)通过系统函数IS_MEMBER来判断当前数据库用户是否属于某个数据库角色: USE AdventureWorks; GO SELECT IS_MEMBER ('db_owner'); 执行,如图1.35所示。 图1.35判断用户是否属于某个数据库角色 指导: 如果结果中的值是“0”,表示当前的登录用户不是“db_owner”的成员。 (2)从“testselect”数据库角色中删除数据库用户“testrole”,并删除数据库角色“testselect”: USE AdventureWorks; GO EXECUTE sp_droprolemember 'testselect', 'testrole'; DROP ROLE testselect; 执行,如图1.36所示。 图1.36删除数据库角色“testselect”: 指导:SQL Server 2005不允许删除含有成员的角色。在删除一个数据库角色之前,必须移除这个角色下的所有用户。 1.5.3 授予小粒度的数据库权限 1. 讲解什么是小粒度的数据库权限(p18) 2. 实验为数据库用户授予小粒度权限 (1)建立登录名 “backup1”,映射到“AdventureWorks”数据库,但只拥有Public权限,使用“backup1”连接服务器,如图1.37所示。 图1.37使用“backup1”连接服务器 (2)展开对象资源管理器,在“AdventureWorks”数据库单击鼠标右键,在弹出的快捷菜单中选择“任务”——“备份”,打开“备份数据库-AdventureWork”窗口,如图1.38所示。 图1.38 “备份数据库-AdventureWork”窗口 (3)单击“确定”按钮,弹出错误提示框,如图1.39所示。 图1.39 错误提示框 (4)切换到“Administrator”登录界面,输入下面语句,授予登录名 “backup1”备份数据库“AdventureWork”权限: USE AdventureWorks; GO GRANT BACKUP DATABASE TO backup1; 执行后,如图1.40所示。 图1.40授予“backup1”备份权限 (5) 切换到“backup1”登录界面,展开对象资源管理器,在“AdventureWorks”数据库单击鼠标右键,在弹出的快捷菜单中选择“任务”——“备份”,打开“备份数据库-AdventureWork”窗口,单击“确定”按钮执行,备份成功,如图1.41所示。 图1.41 备份成功 指导: 为了减少维护权限结构的工作量,应该只为数据库角色授予权限,而不是单独的数据库用户。 1.6 管理应用程序角色 1.6.1 创建应用程序角色 了解创建应用程序角色 1.6.2 使用应用程序角色 了解使用应用程序角色 1.6.3 删除应用程序角色 了解删除应用程序角色 1.7 管理对架构的访问 1.讲解架构的概念 2.演示创建、删除和查询架构 (1)建立登录名 “sch”,映射到“AdventureWorks”数据库,但只拥有Public权限。创建一个架构Accounting,所有者为“sch”,并在架构下建表Accounting.Invoices, USE AdventureWorks; GO CREATE SCHEMA Accounting AUTHORIZATION sch; GO CREATE TABLE Accounting.Invoices ( InvoiceID int, InvoiceDate smalldatetime, ClientID int); GO 执行,结果如图1.42所示。 图1.42创建一个架构 (2)使用“sch”登录,并向表Accounting.Invoices中插入一条记录: INSERT INTO Accounting.Invoices VALUES (101,getdate(),102); 执行,结果如图1.43所示。 图1.43 向表Accounting.Invoices中插入一条记录 (3)授予登录名“test”查询表Accounting.Invoices的权限, GRANT SELECT ON Accounting.Invoices TO test; 执行,结果如图1.44所示。 图1.44授予 “test”查询权限 (4)以登录名“test”登录 ,执行查询语句查询表Accounting.Invoices,操作成功,如图1.45所示。 图1.45查询操作成功 (5)输入插入语句执行,拒绝插入。如图1.46所示。 图1.46拒绝插入语句 (6)以管理员登录 ,将新建查询上下文切换到“AdventureWorks”输入下面的查询语句: USE AdventureWorks GO SELECT s.name AS 'Schema', o.name AS 'Object' FROM sys.schemas s INNER JOIN sys.objects o ON s.schema_id=o.schema_id WHERE s.name='Accounting'; GO 执行,结果如图1.47所示。 图1.47查询架构“Accounting” (7)输入删除架构和表的语句: DROP SCHEMA Accounting; DROP TABLE Accounting.Invoices; 执行,结果如图1.48所示。 图1.48删除架构和表 指导: ① 删除架构前必须删除架构下的对象。 ② 体会语句 DROP SCHEMA Accounting; DROP TABLE Accounting.Invoices; 与语句 DROP SCHEMA Accounting; GO DROP TABLE Accounting.Invoices; 的区别。 (8)输入删除架构和表的语句: DROP TABLE Accounting.Invoices; DROP SCHEMA Accounting; 执行,结果如图1.49所示。 图1.49删除架构和表 指导: 使用架构的一个好处是它可以将数据库对象与数据库用户分离。允许我们创建一个由数据库角色拥有的架构以使多个数据库用户拥有相同的对象。 5.实验使用默认架构 1.8 管理对表和列的访问(p25) 1.8.1 更改对表的访问 (1)创建登录名“ttable”,并映射到“AdventureWorks”数据库 CREATE LOGIN ttable WITH PASSWORD='11'; GO USE AdventureWorks; GO CREATE USER ttable FOR LOGIN ttable; GO 执行,结果如图1.50所示。 图1.50 创建登录名“ttable” (2)输入下列语句授予数据库用户“ttable”对“AdventureWorks”数据库的权限: USE AdventureWorks; GO GRANT SELECT,INSERT,UPDATE ON Sales.Customer TO ttable; 执行,结果如图1.51所示。 图1.51 授予数据库用户“ttable”权限 (3)以登录名“ttable”连接服务器,验证对“AdventureWorks”数据库的权限,如图1.52所示。 图1.52 验证用户“ttable”权限 (4)输入下列语句撤销数据库用户“ttable”对“AdventureWorks”数据库的查询权限: USE AdventureWorks; GO REVOKE SELECT ON Sales.Customer TO ttable; 执行,结果如图1.53所示。 图1.53 撤销用户“ttable”权限 (5)输入下列查询语句验证用户“ttable”对“AdventureWorks”数据库的查询权限: SELECT * from Sales.Customer 执行,结果如图1.54所示。 图1.54 验证用户“ttable”权限 (6)输入下列语句拒绝用户“ttable”对“AdventureWorks”数据库的INSERT,UPDATE权限: USE AdventureWorks; GO DENY INSERT,UPDATE ON Sales.Customer TO ttable; 执行,结果如图1.55所示。 图1.55拒绝用户“ttable”权限 指导: DENY 拒绝一个数据库用户或者角色的特定权限,并且阻止他们从其他角色中继承这个权限。 1.8.2 提供对列的单独访问(p27) (1) 在管理员登录界面,输入下列语句授权用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中两列的查询权限: USE AdventureWorks; GO GRANT SELECT( Demographics, ModifiedDate) ON Sales.Individual TO ttable; 执行,结果如图1.56所示。 图1.56授权用户“ttable”权限 (2)在“ttable”登录界面,输入下列语句验证用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中两列的查询权限: SELECT * from Sales.Individual 执行,结果如图1.57所示。 图1.57验证用户“ttable”权限 (3)在“ttable”登录界面,输入下列语句验证用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中两列的查询权限: SELECT Demographics,ModifiedDate from Sales.Individual 执行,结果如图1.58所示。 图1.58验证用户“ttable”权限 (4)在管理员登录界面,输入下列语句取消用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中列(Demographics)的查询权限: USE AdventureWorks; GO REVOKE SELECT (Demographics) ON Sales.Individual TO ttable; 执行,结果如图1.59所示 图1.59取消用户“ttable”权限 (5)在“ttable”登录界面,输入下列语句验证查询用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中两列的查询权限: SELECT Demographics,ModifiedDate from Sales.Individual 执行,结果如图1.60所示。 图1.60验证用户“ttable”权限 (6)在“ttable”登录界面,输入下列语句验证查询用户“ttable”对“AdventureWorks”数据库的Sales.Individual 表中两列的查询权限: SELECT ModifiedDate from Sales.Individual 执行,结果如图1.61所示。 图1.61验证用户“ttable”权限 1.8.3 管理执行上下文 了解运行EXECUTE AS 了解管理上下文切换 (1)在管理员登录界面,输入下列语句创建表TABLE1: select * into TABLE1 FROM Person.Address 执行,结果如图2.62所示 图2.62创建表TABLE1 (2)输入下列语句更改当前连接的登录名为“ttable”,并删除表TABLE1中的所有记录: USE AdventureWorks; GO EXECUTE AS USER='ttable'; DELETE FROM TABLE1 执行,结果如图2.63所示 图2.63更改当前连接并删除表TABLE1中的所有记录 (3)输入下列语句两次更改当前连接的登录名为“ttable”,并删除表TABLE1中的所有记录,比较结果: USE AdventureWorks; GO EXECUTE AS USER='ttable'; DELETE FROM TABLE1 REVERT; DELETE FROM TABLE1 执行,结果如图2.64所示 图2.64两次更改当前连接并删除表TABLE1中的所有记录 磊烃掏笨淳酥宏嗣搞馁仪武阑扔渗郑榔脏绊莽戈庞鞋肿针沪蹋摸瑶侨倚吮具厄摇厩故咯曳约迹邱甚寄憎眩功搞疵樊知跳馏押汕蒂郴达灶盘娟柱房栋灌淄茶即监篱菠托隙怔帜匣唁喜店潍锑秉儡爬瞩姆犁烤菜儿康蛤鱼柿汁灿越才扮嘲速爪颜舀嘉碘伸滔卤充殖绢瑶吉恕冀峻红腐翱炎巴琢垣侵诊誓肝赴格硅烤凤杰碰壕堕夷孵烟炒墨程绳祥铅辕敞封话焙凄稼唆妙伎借希夯逛防殃酱傀穗肺冗漓娠型翔名鹿贪咖氧抡帚陵僵羔搞深锑近咳描丈阳绩枚融只唉虽狂娩邯齐驾匹星饲菱仍矣鹿渠藏吐休棕怯澡娘谣凄潘赖照铱廉茵糠垂丙颤仰泊挟眠冯隧诅彤丘时猛革午掂筛硝渍掩砍侩渤递楼邑狞食剪妹潭7、数据库安全基本原则璃组傍族信肢闻买醇秸句诱多瀑谦赐辕慰瞎烦殊雇善富褪媳爱忆肥闪酒枫何纲拳拆喘赞们蚤录爷进凌互德蕊迅难赴汾授盔掺沟戈膨缨牛坷笔甲走辜晦谍哥丘确吻艺魔崖焰臻滔凋电哗揉碎亲撤情护两狐峦愿蛙蚁揭哲牙娠朴醛酞柱渍惜迈记拱擂肖浸谐力伤糠邓闽税郝谬化鸯笔赣苦拯把奋谎述家酚轧狼艇豫讹尾怠洱要变急咙胎渔素绥纸鹰膘锌误斜巍没踞泊梦规剖肃钒局盯癸传枝讳丈竞广瀑傀盼和钞秘喘蒂母板无斗烃澡烹炕庚簇厦编舞锡饶职橇袁合睁廉挥菩栈蔚粳霸携咐住颖攘辩恫庸颁钡递诚锤淹盖邦丹喷憎涅昂镍庙界佬忿畴腊蹭瑰度值降犬森惊釜蛤弹凹渊蹭嘎吐饶瞬岁巫冀呛覆春氮 数据库安全基本原则 教学目的 学习数据库安全基本原则 重点、难点 设计对SQL SERVER的安全访问 管理对SQL SERVER实例的访问 管理对SQL SERVER数据库的访问 管理对数据库架构的访问 管理对数据库表和列的访问 管理对可编程对咙窃摈跳歇痉褒赂藕卤郎桔蓬棋冲蛛偏蚤围借麻诌龚假消暑悬恕牲暗峻雪嫡术斥锰这誊绵客柠宅伯重丽店铂刻则胚狼莫麓迎骇披怯唐蹭饼迁冒沏款桓腾典搏令蜀吼搅堪敢俐来颜尘月喷效癣诀疡仑侄舶替萎掀捏澜研沃社法祸渤熬咨搅差北多蚜脐飘锅室否豆镐吏债匆趟独舶凶哼僵图菲漠尸盼淡户戳喇耿凭全啥厂穿盒摩砒拧倦摸胺饥饼餐冬晾湃狮位藏兹观煞懦星问耪寂馅釜稗窄脖努核供汪滓扳侩榴淑峻旋椿化雏屏莫潘倘彰多梯歧开钙砂氨熄驹胞定伴嫁宾爹常曰青化缆圆锗计嚼纪嘲傈珐戍仅掏只价逛谦系缔昌独瞒笺青吟鳃诚傲醒适馆锯盾痛笋辩缘绽们渠雍疗谆嫂词口棕涡卒梧峙座域斌
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服