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

向用户授予 CHANGE PASSWORD 系统特权

允许用户管理其他用户的口令。

先决条件

  • 已授予 CHANGE PASSWORD 系统特权以及管理权限。

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

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

    背景信息

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

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

    重新授予 CHANGE PASSWORD 系统特权时,授予行为的影响是累积的。例如,如果将限于 User2 和 User3 的特权授予 User1,然后重新授予限于 Role1 的特权,则 User1 可以管理 User2、User3 以及 Role1 的任意成员的口令。

    如果向某位用户授予 CHANGE PASSWORD 系统特权,但权限低于当前已授予的权限,则保留较高权限。例如,如果使用 ANY 子句授予了特权,然后使用 子句重新授予特权,则用户会保留使用 ANY 子句授予的权限。

    过程

    要授予 CHANGE PASSWORD 系统特权,请执行下列语句之一: 授予权限的类型语句任意数据库用户(不具有全部管理权限)GRANT CHANGE PASSWORD (ANY) TOWITH ADMIN OPTION任意数据库用户(仅具有管理权限)GRANT CHANGE PASSWORD (ANY) TOWITH ADMIN ONLY OPTION任意数据库用户(不具有管理权限)GRANT CHANGE PASSWORD (ANY) TOWITH NO ADMIN OPTION指定用户(不具有管理权限)GRANT CHANGE PASSWORD () TOWITH NO ADMIN OPTION指定角色的任意成员(不具有管理权限)GRANT CHANGE PASSWORD (ANY WITH ROLES) TOWITH NO ADMIN OPTION指定用户或指定角色的任意成员(不具有管理权限)GRANT CHANGE PASSWORD()、(ANY WITH ROLES) TOWITH NO ADMIN OPTION

    示例

    以下语句授予 Sam 更改任意数据库用户口令的权限:

    GRANT CHANGE PASSWORD (ANY) TO Sam
    

    or

    GRANT CHANGE PASSWORD TO Sam

    以下语句授予 Sally 和 Bob 更改 Jane、 和 Laurel(仅限这三者)的口令的权限:

    GRANT CHANGE PASSWORD (Jane, Joe, Laurel) TO Sally, Bob

    以下语句授予 Mary 更改 Sales1 角色任意成员的口令的权限:

    GRANT CHANGE PASSWORD (ANY WITH ROLES Sales1) TO Mary

    以下语句授予 Sarah 更改 Joe 或 Sue 的口令或更改 Sales2 角色任意成员的口令的权限:

    GRANT CHANGE PASSWORD (Joe, Sue), (ANY WITH ROLES Sales2) TO Sarah

    以下语句授予 Joan 更改 Marketing1 或 Marketing2 角色任意成员的口令的权限:

    GRANT CHANGE PASSWORD (ANY WITH ROLES Marketing1, Marketing2) TO Joan