Which two statements are true about the roles in the Oracle database? (Choose two.) A) A role can be granted to itself. B) Roles are owned by the SYS user. C) Roles can be granted to other roles. D) A role cannot be assigned external authentication. E) A role can contain both system and object privileges.
Answer: C,E 角色是相关权限的命名集合,使用角色的主要目的是简化权限管理。建立数据库并安装了PL/SQL包后,Oracle会自动建立一些预定义角色。DBA不仅可以使用预定义角色,也可以使用自定义角色和OS角色。可以将一个角色授予别的角色,但不能授予它本身。角色既可以包含系统权限,也可以包含对象权限。建立角色是使用CREATE ROLE命令完成,一般情况下,该命令由DBA执行,如果要以其他用户身份建立角色,必须具有CREATE ROLE系统权限。所以角色不一定是SYS用户所有。角色可以使用外部验证,例如OS验证。 OS角色是使用OS管理角色的方式。使用OS验证方式管理角色时,过去给用户授予的数据库角色不再起任何作用,使用OS角色验证时,要遵守如下条件: 1) 必须将初始化参数OS_ROLES设置为TRUE。需要注意,将该参数设置为TRUE后,过去授予用户的数据库角色不再起任何作用。 2) 确保SQLNET.ORA文件选项SQLNET.AUTHENTICATION_SERVICES的值为NTS。
|