管理 Database Link 和 DBMS_RLS 特权。

PolarDB PostgreSQL版(兼容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 PostgreSQL版(兼容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 PostgreSQL版(兼容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 PostgreSQL版(兼容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 语法选项。