五、安全管理
1..设SQL Server 2008某数据库中有表T1(c1, c2, c3), 并仅对U1执行了如下授权语句:
GRANT UPDATE ON T1 T0 U1现有下列数据操作语句:
I.UPDATE T1 SET c1=100;
II. UPDATE T1 SET c1=c1+ 100II. UPDATE T1 SET c1= c3 + c1
IV. UPDATE T1 SET c1 = 100 WHERE c2 = 'A’上述语句中,U1有权执行的是_。
A. 仅I
B. 仅I和II
C. 仅I和II
D. 全部
答案: A
GRANT UPDATE ON T1 TO U1语句的作用是用户U1具有对表T1各列数据进行修改的权利,在SQL Server中, 拥有UPDATE权限的用户并不意味着定拥有SELECT权限, 故答案为A。
2.下列关于SQL Server 2008中guest的说法, 错误的是____ 。
A. 可以为guest授权
B. guest在未启用时不能使用
C. guest是系统定义的一个登录账户
D. guest主要用于提供匿名访问
答案: C
guest是SQL Server中一个特殊的数据库用户。故答案为C。
2. 设某数据库中有表T1(c1, c2, c3), 并只对U1执行了如下授权语句:
GRANT SELECT 0N T1 TO U1下列语句中,U1无权执行的是_
A. SELECT * FROM T1
B. SELECT c1 FROM T1
C. SELECT c1,c2 FROM T1
D. GRANT SELECT ON T1 T0 U2
答案: D试题评析
因在U1后面缺少WITH GRANT 0PTION语句,U1无权将SELECT权限转授予其他角色或用户,故答案为D。
3. 下列关于SQL Server 2008中用户定义的数据库角色的说法,错误的是____。
A. 用户定义的角色不能是另一个用户定义角色的成员
B. 可以为用户定义的角色进行授权
C. 在一个数据库中可以定义多个用户角色
D. 一个用户定义的角色可以包含多个成员
答案: A
角色是一组具有相同权限的用户集合。用户定义的角色属于数据库级的角色,用户定义的角色的成员可以是数据库的用户,也可以是用户定义的角色。只要权限没有被拒绝过,则角色中成员的权限就是其所在角色的权限加上他们自己所具有的权限。故答案为A。
4.在SQL Server 2008中, 若要授予用户U1具有T1表的查询和插入权限,下列授权语句正确的是____。
A. GRANT TO U1 SELECT, INSERT ON T1
B. GRANT SELECT ON T1, INSERT 0N T1 T0 U1
C. GRANT SELECT ON T1 TO U1, INSERT 0N T1 TO U1 .
D. GRANT SELECT, INSERT ON T1 T0 U1
答案: D
授权语句格式是'GRANT 可以授予的权限 ON表名 T0 用户名”,授权时一个语句中可以授予多个权限,也可以一次授予一个权限。本题中只有D选项符合语法规则,故答案为D。
5.下列关于0racle安全管理的说法,正确的是_
A.数据库级安全控制是通过授予权限保证的
B. 表级、行级和列级安全控制是通过用户身份认证保证的
C. 0rac1e的安全控制可分为数据库级、表级、行级和列级
D. Orac1e数据库中的用户按其操作权限大小可分为系统管理员、对象拥有者和普通用户三类
答案: C试题评析
Oracle的安全控制机制可分为数据库级的安全控制、表级、行级和列级的安全控制。数据库级的安全性通过用户身份认证和授予用户相应系统权限来保证,而表级、行级、列级的安全性是通过授予或回收对象特权保证的。0racle数据库中的用户按其操作权限大小可分DBA用户和普通用户。故答案为C。
6.下列关于SQL Server 2008安全管理的说法,正确的是_
A. SQL Server 2008的身 份验证模式有"Windows身份验证模式“和”SQL Server和Windows 身份验证模式”两种
B. "Windows身份验证模式将允许所有Windows用户登录SQL Server服务器
C. 具有登录服务器权限的用户同时也具有在服务器上创建数据库的权限
D. SQL Server登录账户的来源只能是合法的lindows用户
答案: A
SQL Server 2008的身份验证模式有"Windows身份验证模式和混合身份验证模式两种。混合身份验证模式是指SQL Server允许Windows授权用户和SQL授权用户登录到SQLServer数据库服务器。
故答案为A。
7.在SQL Server 2008中, 若要授予用户U在DB数据库中具有建表权限,下列语向正确的是____
A. GRANT TO U1 CREATE TABLE
B. GRANT CREATE TABLE ON DB1 T0 U1
C. GRANT CREATE TABLE TO U1
D. GRANT TO U1 CREATE TABLE ON DB1
答案: C
授权语句使用GRANT,在T-SQL中 该语句的简化语法格式如下:
GRANT<permi ssion>[, *n]
[OBJECT::] [schema. name]. object_ name [(co1 umn[, ".n])] TO <database_ principa1>[, .n][WITH GRANT OPTION]<permi ssi on>::=
ALL [PRIVILEGES] | permi ssion [(co1umn[, .n])]
8.下列关于SQL Server 2008数据库用户的说法,正确的是_
A. 数据库管理员不能对数据库用户授权
C. 数据库用户对其所在数据库中的用户数据自动具有查询权限
C. 具有数据更改权限的数据库用户自动具有查询这些数据的权限
D. 除guest用户外,所有的数据库用户都必须对应一个登录账户
答案: D
当登录账户成为数据库中的合法用户之后,该账户除了具有一些系统视图的查询权限之外,并不对数据库中的用户数据和对象具有任何操作权限,因此,下一步就需要为数据库中的用户授予数据库数据及对象的操作权限,所以选项BC错误。
数据库管理员可以对数据库用户授权,所以选项A错误,故本题选D。
9.下列关于SQL Server中db_ datareader角色的说法,正确的是____。
A. 该角色是服务器级角色,具有查询服务器中全部系统数据的权限
B. 该角色是服务器级角色,只具有查询服务器中全部用户数据的权限
C. 该角色是数据库级角色,具有查询数据库中全部用户数据的权限
D. 该角色是数据库级角色,只具有查询数据库中全部系统数据的权限
答案: C
该角色是固定数据库角色,是定义在数据库级别上的,而且存在于每个数据库中。用户不能添加、删除或更改固定数据库角色。db_ _datereader 具有查询数据库中所有用户数据的权限,故答案为C。