数据库级权限的三个同心层,Connect、Resource 和 DBA,对数据库访问和控制依次递增的授权。仅拥有 DBA 权限的用户可授予或取消数据库级权限。
由于权限的层级组织(如本节稍后描述的权限定义中所述的那样),如果您从拥有 DBA 权限的用户取消 Resource 权限或 Connect 权限,则该语句没有作用。如果您从有 DBA 权限的用户取消该 DBA 权限,则该用户保留对该数据库的 Connect 权限。要拒绝有 DBA 或 Resource 权限的用户访问数据库,您必须先取消 DBA 或 Resource 权限,然后在单独的 REVOKE 语句中取消 Connect 权限。
类似地,如果您从有 Resource 权限的用户取消 Connect 权限,则该语句没有作用。如果您从用户取消 Resource 权限,则该用户保留对数据库的 Connect 权限。
仅用户或 PUBLIC 可持有数据库级权限。您不可从角色取消这些权限,因为角色不可持有数据库级权限。
权限 | 作用 |
---|---|
DBA | 有 Resource 权限的所有能力,且可执行下列附加的操作:
|
RESOURCE | 让您扩展数据库的结构。除了 Connect 权限的能力之外,Resource 权限的持有者还可执行下列操作:
|
CONNECT | 如果您有此权限,则可查询和修改数据,如果您拥有您想要修改的数据库对象,则可修改该数据库模式。持有 Connect 权限的用户可执行下列操作:
|
提示:要确定哪些用户有对数据库的 DBA 权限,请从 DB-Access 或您的应用系统运行此查询:
select username,usertype from sysusers;
输出展示用户名(例如,public 和 gbasedbt)后跟下列代码之一: