您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

向用户授予 SET USER 系统特权

允许一位用户模仿数据库中的另一位用户。无论是否具有管理权限,均可授予此系统特权。

先决条件

  • 已授予 SET USER 系统特权以及管理权限。

  • 每个指定目标用户 (target_users_list) 都是具有登录口令的现有用户角色或用户扩展角色。

  • 每个指定目标角色 (target_roles_list) 都必须是现有用户扩展角色或用户定义角色。

    背景信息

    可授予用户模仿数据库中任意用户的权限 (ANY)、仅模仿特定用户的权限 ( ),或模仿特定角色成员的权限 (ANY WITH ROLES )。仅当使用 ANY 子句时才能授予 SET USER 系统特权的管理权限。

    如果未指定子句,则缺省情况下使用 ANY。

    重新向用户授予 SET USER 系统特权时,授予行为的影响是累积的。

    如果使用 ANY 子句时未指定管理子句,则缺省使用 WITH NO ADMIN OPTION

    对于 子句,WITH NO ADMIN OPTION 是唯一有效的管理子句。

    过程

    要授予 SET USER 系统特权,请执行下列语句之一: 授予权限的类型语句用于模仿任意数据库用户的系统特权(具有全部管理权限)GRANT SET USER (ANY) TO WITH ADMIN OPTION用于模仿任意数据库用户的系统特权(只具有管理权限)GRANT SET USER (ANY) TO WITH ADMIN ONLY OPTION用于模仿任意数据库用户的系统特权(不具有管理权限)GRANT SET USER (ANY) TO WITH NO ADMIN OPTION用于模仿指定用户的系统特权GRANT SET USER () TO 用于模仿指定角色中任意成员的系统特权GRANT SET USER (ANY WITH ROLES) TO 用于模仿指定用户和指定角色的成员的系统特权GRANT SET USER()、(ANY WITH ROLES) TO

    示例

    以下两条语句均授予 模仿任意数据库用户的权限:

    GRANT SET USER (ANY) TO Sam
    

    or

    GRANT SET USER TO Sam

    以下语句授予 模仿 (仅限这三者)的权限。

    GRANT SET USER (Mary, Joe, Sue) TO Bob, Jeff

    以下语句授予 模仿 角色的任意成员的能力:

    GRANT SET USER (ANY WITH ROLES Sales1) TO Mary

    以下语句授予 模仿 ,或者模仿 角色任意成员的权限:

    GRANT SET USER (Joe, Sue), (ANY WITH ROLES Sales2) TO Sarah

    以下语句授予 模仿 角色的任意成员的权限:

    GRANT SET USER (ANY WITH ROLES Marketing1, Marketing2) TO Joan