管理 Database Link 和 DBMS_RLS 特权

POLARDB for Oracle 包含 ALTER ROLE 命令的额外语法(Oracle 未提供)。在分配与创建和删除与 Oracle 数据库兼容的 database link 以及细粒度访问控制(使用 DBMS_RLS)相关的特权时,此语法非常有用。

CREATE DATABASE LINK

具有 CREATE DATABASE LINK 特权的用户可以创建私有 database link。以下 ALTER ROLE 命令向角色授予允许指定角色创建私有 database link 的特权:

ALTER ROLE role_name
     WITH [CREATEDBLINK | CREATE DATABASE LINK]

此命令的功能相当于:

GRANT CREATE DATABASE LINK to role_name

使用以下命令可撤销特权:

ALTER ROLE role_name
    WITH [NOCREATEDBLINK | NO CREATE DATABASE LINK]
说明 CREATEDBLINK NOCREATEDBLINK 关键字将被视为弃用的语法;建议您使用 CREATE DATABASE LINKNO CREATE DATABASE LINK 语法选项。

CREATE PUBLIC DATABASE LINK

具有 CREATE PUBLIC DATABASE LINK 特权的用户可以创建公共 database link。以下 ALTER ROLE 命令向 POLARDB for Oracle 角色授予允许指定角色创建公共 database link 的特权:

ALTER ROLE role_name
  WITH [CREATEPUBLICDBLINK | CREATE PUBLIC DATABASE LINK]

此命令的功能相当于:

GRANT CREATE PUBLIC DATABASE LINK to role_name

使用以下命令可撤销特权:

ALTER ROLE role_name
  WITH [NOCREATEPUBLICDBLINK | NO CREATE PUBLIC DATABASE LINK]
说明 CREATEPUBLICDBLINKNOCREATEPUBLICDBLINK 关键字将被视为弃用的语法;建议您使用 CREATE PUBLIC DATABASE LINKNO CREATE PUBLIC DATABASE LINK 语法选项。

DROP PUBLIC DATABASE LINK

具有 DROP PUBLIC DATABASE LINK 特权的用户可以删除公共 database link。以下 ALTER ROLE 命令向 POLARDB for Oracle 角色授予允许指定角色删除公共 database link 的特权:

ALTER ROLE role_name
   WITH [DROPPUBLICDBLINK | DROP PUBLIC DATABASE LINK]

此命令的功能相当于:

GRANT DROP PUBLIC DATABASE LINK to role_name

使用以下命令可撤销特权:

ALTER ROLE role_name
    WITH [NODROPPUBLICDBLINK | NO DROP PUBLIC DATABASE LINK]
说明 DROPPUBLICDBLINK NODROPPUBLICDBLINK 关键字将被视为弃用的语法;建议您使用 DROP PUBLIC DATABASE LINKNO DROP PUBLIC DATABASE LINK 语法选项。

EXEMPT ACCESS POLICY

具有 EXEMPT ACCESS POLICY 特权的用户不受细粒度访问控制(DBMS_RLS)策略的约束。具有这些特权的用户将能够查看或修改受 DBMS_RLS 策略约束的表中的任何行。以下 ALTER ROLE 命令向 POLARDB for Oracle 角色授予特权以让指定角色不受任何定义的 DBMS_RLS 策略的约束:

ALTER ROLE role_name
    WITH [POLICYEXEMPT | EXEMPT ACCESS POLICY]

此命令的功能相当于:

GRANT EXEMPT ACCESS POLICY TO role_name

使用以下命令可撤销特权:

ALTER ROLE role_name
  WITH [NOPOLICYEXEMPT | NO EXEMPT ACCESS POLICY]
说明 POLICYEXEMPT NOPOLICYEXEMPT 关键字将被视为弃用的语法;建议您使用 EXEMPT ACCESS POLICYNO EXEMPT ACCESS POLICY 语法选项。