计算机三级数据库安全管理(一)、授权语句、WITH GRANT OPTION、guest、用户定义的数据库角色、Oracle安全管理、收权语句、安全管理、数据库用户、角色、用户分类、GRANT

1.设某数据库中有表T1(c1,c2, c3),并只对U1执行了如下授权语句:
GRANT SELECT ON T1 TO U1
下列语句中,U1无权执行的是
A、SELECT *FROM T1
B、SELECT c1 FROM T1
C、SELECT c1,c2 FROM T1
D、GRANT SELECT ON T1 TO U2
参考答案为D

解析:因在U1后面缺少WITH GRANT OPTION语句,U1无权将SELECT权限转授予其他角色或用户,故答案为D。

2.下列关于SQL Server 2008中guest的说法,错误的是
A、可以为guest授权
B、guest在未启用时不能使用
C、guest是系统定义的一个登录账户
D、guest主要用于提供匿名访问
参考答案为C

解析: guest是SQL Server中一个特殊的数据库用户。故答案为C。

3.设SQL Server 2008某数据库中有表T1(c1, c2,c3),并仅对U1执行了如下授权语句;
GRANT UPDATE ON T1 TO U1
现有下列数据操作语句:
l . UPDATE T1 SET c1 = 100
lI. UPDATE T1 SET c1 = c1 + 100
II. UPDATE T1 SET c1 = c3 + c1
IⅣ. UPDATE T1 SET c1 = 100 WHERE c2= ‘A’
上述语句中,U1有权执行的是
A、仅I
B、仅Ⅰ和Ⅱ
C、仅Ⅱ和Ⅲ
D、全部
参考答案为A

解析:GRANT UPDATE ON T1 TO U1语句的作用是用户U1具有对表T1各列数据进行修改的权利,在SQL Server中,拥有UPDATE权限的用户并不意味着一定拥有SELECT权限,故答案为A。

4.下列关于SQL Server 2008中用户定义的数据库角色的说法,错误的是
A、用户定义的角色不能是另一个用户定义角色的成员
B、可以为用户定义的角色进行授权
C、在一个数据库中可以定义多个用户角色
D、一个用户定义的角色可以包含多个成员
参考答案为A

解析:角色是一组具有相同权限的用户集合。用户定义的角色属于数据库一级的角色,用户定义的角色的成员可以是数据库的用户,也可以是用户定义的角色。只要权限没有被拒绝过,则角色中成员的权限就是其所在角色的权限加上他们自己所具有的权限。故答案为A。

5.在SQL Server 2008中,若要授予用户U1具有T1表的查询和插入权限,下列授权语句正确的是
A、GRANT To U1 SELECT,INSERT ON T1
B、GRANT SELECT ON T1,INSERT ON T1 TO U1
C、GRANT SELECT ON T1 To U1,INSERT ON T1 TO u1
D、GRANT SELECT,INSERT ON T1 TO U1
参考答案为D

解析: 授权语句格式是"GRANT 可以授予的权限 ON 表名TO用户名",授权时一个语句中可以授予多个权限,也可以一次授予一个权限。本题中只有D选项符合语法规则,故答案为D。

6.下列关于Oracle安全管理的说法,正确的是
A、数据库级安全控制是通过授予权限保证的
B、表级、行级和列级安全控制是通过用户身份认证保证的
C、Oracle的安全控制可分为数据库级、表级、行级和列级
D、Oracle数据库中的用户按其操作权限大小可分为系统管理员、对象拥有者和普通用户三类
参考答案为C

解析:Oracle的安全控制机制可分为数据库级的安全控制、表级、行级和列级的安全控制。数据库级的安全性通过用户身份认证和授予用户相应系统权限来保证,而表级、行级、列级的安全性是通过授予或回收对象特权保证的。Oracle数据库中的用户按其操作权限大小可分DBA用户和普通用户。故答案为C。

7.在SQLServer 2008中,若要收回用户U1对T1表的查询和插入权限,下列语句正确的是
A、REVOKE SELECT,INSERT ON T1 FROM U1
B、REVOKE SELECT ON T1,INSERT ON T1 FROM U1
C、REVOKE SELECT ON T1 FROM U1,INSERT ON T1 FROM U1
D、REVOKE FROM U1 SELECT,INSERT ON T1
参考答案为A

解析:收权语句使用REVOKE,在T-SQL中该语句的简化语法格式如下:
REVOKE[ALL[PRIVILEGES]] | [,…n]
ON
[OBJECT::][schema_name]. object_name[(column[,…n])]
{FROM | TO}<database_principal>[,…n]
[CASCADE][AS<role_name>]
故答案为A。

8.下列关于SQL Server 2008安全管理的说法,正确的是
A、SQL Server 2008的身份验证模式有"Windows身份验证模式"和"sQL Server和Windows身份验证模式"两种
B、"Windows身份验证模式"将允许所有Windows用户登录SQL Server服务器
C、具有登录服务器权限的用户同时也具有在服务器上创建数据库的权限
D、SQL Server登录账户的来源只能是合法的Windows用户
参考答案为A

解析:SQL Server 2008的身份验证模式有"Windows身份验证模式"和"混合身份验证模式"两种。混合身份验证模式是指SQL Server允许Windows授权用户和SQL授权用户登录到SQL Server数据库服务器。
故答案为A。

9.在SQL Server 2008中,若要授予用户U1在DB1数据库中具有建表权限,下列语句正确的是
A、GRANT TO u1 CREATETABLE
B、GRANT CREATE TABLE ON DB1 TO U1
C、GRANT CREATE TABLE TO U1
D、GRANT TO U1 CREATETABLE ON DB1
参考答案为C

解析:授权语句使用GRANT,在T-SQL中该语句的简化语法格式如下:
GRANT[,…n]
ON
[OBJECT::][schema_name].object_name[(column[,…n])]
TO<database_principal>[,…n]
[WITH GRANT OPTION]
::=
ALL[PRIVILEGES] | permission [(column[,…n])]
故答案为C。

10.下列关于sQL Server 2008数据库用户的说法,正确的是
A、数据库管理员不能对数据库用户授权
B、数据库用户对其所在数据库中的用户数据自动具有查询权限
C、具有数据更改权限的数据库用户自动具有查询这些数据的权限
D、除guest用户外,所有的数据库用户都必须对应一个登录账户
参考答案为D

解析:当登录账户成为数据库中的合法用户之后,该账户除了具有一些系统视图的查询权限之外,并不对数据库中的用户数据和对象具有任何操作权限,因此,下一步就需要为数据库中的用户授予数据库数据及对象的操作权限,所以选项BC错误。
数据库管理员可以对数据库用户授权,所以选项A错误,故本题选D。

11.在SQL Server中,若要授予用户U1在DB1数据库中具有创建表的权限,下列授权语句正确的是
A、GRANT CREATETABLE TO U1
B、GRANT U1 CREATE TABLE ON DB1
C、GRANT CREATE TABLE ON DB1 TO U1
D、GRANT U1 CREATE TABLE
参考答案为A

解析:本题考查的知识点是: 权限管理
授予用户权限的语法如下:
grant 权限 on 被授予权限的对象 to 要向其授予权限的主体
由于是授予用户U1在DB1中创建表(cerat table)的权限,故答案为A。

12.下列关于SQL Server中db_datareader角色的说法,正确的是
A、该角色是服务器级角色,具有查询服务器中全部系统数据的权限
B、该角色是服务器级角色,只具有查询服务器中全部用户数据的权限
C、该角色是数据库级角色,具有查询数据库中全部用户数据的权限
D、该角色是数据库级角色,只具有查询数据库中全部系统数据的权限
参考答案为C

解析:本题考查的知识点是: 角色
该角色是固定数据库角色,是定义在数据库级别上的,而且存在于每个数据库中。用户不能添加、删除或更改固定数据库角色。
db_datereader具有查询数据库中所有用户数据的权限,故答案为C。

13.在SQL Server中,若要收回用户U1在DB1数据库中的创建视图权限,下列收回权限语句正确的是
A、REVOKE U1 CREATEVIEW ON DB1
B、REVOKE CREATE VIEW FROM U1
C、REVOKE U1 CREATE VIEW
D、REVOKE CREATEVIEW ON DB1 FROM U1
参考答案为B

解析:收权就是将已授给用户的权限收回来,即不允许用户再具有该权限。收权语句语法如下:
REVOKE 权限 ON 被授予权限的对象(表) FROM 授予权限的主体(用户名)
根据语法,B选项正确。

14.下列关于SQL Server中db_datawriter的说法,正确的是
A、该角色具有插入、删除和更改所在数据库中用户数据的权限
B、该角色具有查询、插入、删除和更改所在数据库中用户数据的权限
C、用户不能向该角色添加和删除成员
D、用户可以为该角色授予合适的操作权限
参考答案为A

解析: db_datawriter是固定数据库角色之一,具有插入、删除和更改数据库中所有用户数据的权限。
故答案为A。

15.下列关于SQL server 2008数据库用户的说法,正确的是
A、数据库用户无需授权就能在数据库中进行查询用户数据的操作
B、用户创建的数据库用户都有对应的登录账户
C、数据库用户对应的登录账户只能是SQLServer身份验证的登录账户
D、一个登录账户可以对应多个数据库用户
参考答案为D

解析:授权是将合法访问数据库或数据库对象的权限授予用户的过程(即做任何操作,都需要有相应的授权)。
数据库用户一般都来自于服务器上已有的登录账户,让登录用户成为数据库用户的操作称为映射。
一个登录账户可以映射为多个数据库中的用户。
故本题答案为D。

16.下列关于SQL Server 2008中sa的说法,错误的是
A、sa无需授权就自动具有用户数据库的更改权限
B、sa是SQL Server自动创建的数据库系统管理员
C、sa是一个Windows用户,可以授予它为数据库系统管理员
D、sa无需授权就自动具有用户数据库的查询权限
参考答案为C

解析:考察 用户分类
系统管理员在数据库服务器上具有全部的权限。每个数据库管理系统在安装好之后都有自己默认的系统管理员,SQL Server 2008默认的系统管理员是“sa”。在安装好之后也可以授予其他用户具有系统管理员的权限。
故本题答案为C。

17.在SQL Server 2008中,若要收回用户U1对T1表的查询和插入权限,下列语句正确的是
A、REVOKE FROM U1 SELECT,INSERT ON T1
B、REVOKE SELECT,INSERT ON TI FROM u1
C、REVOKE SELECT ON T1,INSERT ON T1 FROM U1
D、REVOKE SELECT ON T1 FROM U1,INSERT ON T1 FROM U1
参考答案为B

解析:REVOKE 权限 ON 被授予权限的对象(表) FROM 授予权限的主体(用户名)
由收权语句的语法可知,B选项正确。

18.下列关于SQL Server 2008系统管理员sa的说法,正确的是
A、sa是SQL Server身份验证模式的系统管理员
B、在"Windows身份验证模式"下允许sa登录SQL Server服务器
C、sa必须经过授权才能管理用户数据库
D、sa对应的Windows用户是Administrator
参考答案为A

解析:系统管理员在数据库服务器上具有全部的权限。当用户以系统管理员身份进行操作时,系统不对其权限进行检验。SQL Server2008的默认系统管理员是sa。

19.在SQLServer2008中,若要授予用户U1在DB1数据库中具有建表权限,下列语句正确的是
A、GRANT TO U1 CREATE TABLE ON DB1
B、GRANT CREATE TABLE TO U1
C、GRANT CREATE TABLE ON DB1 TO U1
D、GRANT To U1 CREATE TABLE
参考答案为B

解析: 授予用户权限的语法如下:
grant 权限 on 被授予权限的对象 to 要向其授予权限的主体
由于是授予用户U1在DB1中创建表(cerate table)的权限,故本题答案为B。

20.下列关于SQL Server 2008中sa的说法,正确的是
A、sa是数据库系统管理员创建的一个数据库拥有者
B、sa是sQL Server默认的系统管理员,但并不是Windows用户
C、sa是SQL Server默认的系统管理员,同时也是Windows用户
D、sa是安装用户创建的一个数据库系统管理员
参考答案为B

解析: SQL Server的默认系统管理员是sa,但不是windows用户。
故本题答案为B。

21.在SQL Server 2008中,若执行授权语句:GRANT UPDATE ON T TO U,则用户U对表T具有的操作权限是
A、可以执行删除和更新操作
B、仅可以执行无条件更新操作
C、可以执行有条件更新和无条件更新操作
D、可以执行查询和更新操作
参考答案为B

解析:由语法可知,on短语指定被授予权限的对象,to短语指定向其授权的主体,update说明仅授权更新操作。

22.下列关于SQL Server 2008身份验证模式的说法,正确的是
A、Windows身份验证模式下只允许Windows用户登录SQL Server服务器
B、Windows身份验证模式下允许sa登录SQL Server服务器
C、混合身份验证模式下不允许Windows用户登录SQLServer服务器
D、在Windows身份验证模式下,sa也是Windows的系统管理员
参考答案为A

解析:身份验证模式分为Windows身份验证模式和混合身份验证模式。使用Windows身份验证模式时,用户必须首先登录到Windows操作系统中,然后再登录到SQL Server。混合身份验证模式是指允许Windows授权用户和SQL授权用户登录到SQL Server。

猜你喜欢

转载自blog.csdn.net/Redamancy06/article/details/127000969
今日推荐