DB2数据库权限分为实例级权限(SYSADM、SYSCTRL、SYSMAINT、SYSMON)和DB2数据库级权限(DBAMD、LOAD)。DB2中用户所拥有的权限主要考虑三个方面:实例级、数据库级、数据库操作级别,查看命令是db2 get authorizations。 DB2授权可分为实例级权限授权和数据库级别授权,实例级别权限必须由拥有SYSADM权限的用户通过update cfg来授予用户组,数据库对象级别权限由DBAMD权限用户通过grant命令显示的授予用户或用户组。 |
一、DB2权限简介
DB2数据库权限分为实例权限级别(SYSADM、SYSCTRL、SYSMAINT、SYSMON)和DB2数据库权限级别(DBAMD、LOAD)。SYSCTRL、SYSMAINT、SYSMON权限级别的用户不能访问数据,DBAMD、LOAD权限级别的用户可以访问数据。
实例级别权限(只能在用户组级别上进行分配):
SYSADM ----系统管理权限(UNIX系统中,SYSADM用户组默认地设置为实例拥有者所在的主用户组,因此,该组中的任何用户都拥有SYSADM权限)
SYSCTL---- 系统控制权限
SYSMAINT---- 系统维护权限
数据库级别:
dbadm---- 数据库管理权限(不能执行诸如删除数据库、创建和删除表空间、备份或者恢复数据库等等维护性和管理任务)
load---- 对表进行load操作的权限
1、 DB2数据库权限:
CONNECT-允许用户连接数据库
BINDADD-允许用户在数据库中创建新的包
CREATETAB-允许用户在数据库中创建新的表
CREATE_NOT_FENCED-允许用户注册定义为 NOT FENCED 的用户定义函数(UDF)或存储过程
IMPLICITSCHEMA -允许用户在尚不存在的模式中创建对象(它自动地创建模式)*
QUIESCE_CONNECT-允许用户连接处于 quiesced 状态的数据库
CREATE_EXTERNAL_ROUTINE-允许用户注册外部例程(用 C 和 Java 等外部语言编写的例程)