DB2 User Privileges

用户权限:
 
查看当前用户权限:db2 get authorizations
 
权限分类:
 
1. SYSADM:对DB2实例拥有所有权限
 
授权方式:拥有SYSADM权限的用户将SYSADM权限授予某个组:
db2 update dbm cfg using SYSADM_GROUP group <group name>
 
2. SYSCTRL:实例级权限。可以在实例中执行所有管理和维护命令,不能访问数据库中任何数据。
管理维护命令:
db2start/db2stop
db2 create/drop database
db2 backup/restore/rollforward database
db2 runstats <table name>
db2 update db cfg for database <dbname>
 
授权方式:拥有SYSADM权限的用户将SYSCTRL权限授予某个组:
db2 update dbm cfg using SYSCTRL_GROUP group <group name>
 
当DBADM权限被revoke后,仍旧拥有create external routine权限。
 
3. SYSMAINT:实例级权限。权限为SYSCTRL的子集。
可执行命令:
db2stop/db2start
db2 backup/restore/rollforward database
db2 runstats <table name>
db2 update db cfg for database <dbname>
 
授权方式:拥有SYSADM权限的用户将SYSMAINT权限授予某个组:
db2 update dbm cfg using SYSMAINT_GROUP group <group name>
 
4. DBADM:数据库级权限。针对某个数据库拥有所有权限
可执行命令:
db2 create/drop table
db2 grant/revoke <特权>
db2 runstats <table name>
 
授权方式:
a. db2 create database test;
发出命令者默认拥有test数据库的DBADM权限
 
b. db2 connect to sample
db2 grant dbadm on database to user tst1
授权者必须是SYSADM;tst1用户必须连接到相关数据库
 
c. db2 grant dbadm on database to group <group name>
授权者必须是SYSADM;
 
5. LOAD:数据库级权限,可以分配给用户或者组,用于快速导入数据
可执行命令:
db2 quiesce tablespaces for table
db2 list tablespaces
db2 runstats <table name>
db2 load insert 必须有表上插入特权
db2 load restart/terminate after load insert 必须有表上插入特权
db2 load replace 必须有表上插入和删除特权
db2 load restart/terminate after load replace 必须有表上插入和删除特权
 
授权方式:必须拥有SYSADM或者DBADM权限用户可以对用户或者用户组授予或撤销LOAD权限。
db2 connect to <dbname>
db2 grant load on database to user <user name>
db2 grant insert on table <table name> to user <user name>
db2 grant delete on table <table name> to user <user name>
 
all privilege: alter / delete / insert / select / update / index / reference
control privilege: drop
 
bindadd: create package for routine(procedure / function).
 
LBAC: 针对row, column级别的控制
 
权限实例:
职务任务必需的授权
部门管理员岗位监督部门系统:创建数据库SYSCTRL权限。如果部门有其自己的实例,那么为SYSADM权限
安全管理员岗位管理一个或多个数据库中的安全性SECADM权限
数据库管理员岗位设计,开发,操作和维护一个或者多个数据库对一个或多个数据库的DBADM和SYSMAINT权限。某些情况下,为SYSCTRL权限
系统操作员岗位监控数据库并执行备份功能SYSMAINT权限
应用程序员岗位开发和测试数据库广利其应用程序;也可以创建测试数据表对现有程序包的BINDADD,BIND,对一个或多个数据库的CONNECT和CREATETAB,某些特定模式特权,以及对某些表的特权的列表。可能还需要CREATE_EXTERNAL_ROUTINE
用户分析员岗位通过检查系统目录视图来定义一个应用程序的数据需求对目录视图的SELECT:对一个或多个数据库的CONNECT
程序最终用户执行应用程序对程序包的EXECUTE;对一个或多个数据库的CONNECT
信息中心顾问定义查询用户的数据需求;创建表和视图,并通过授予对数据库对象的访问权来提供数据对一个或多个数据库的DBADM权限
查询用户发出SQL语句来检索,添加,删除或更改数据;可以讲结果作为表来保存对一个或多个数据库的CONNECT;对要创建的表和视图的模式的CREATEIN;以及对某些表和视图的SELECT,INSERT,UPDATE,DELETE

Comments

Popular posts from this blog

Nginx Proxy & Load Balance & LNMP

Snort+barnyard2+Snorby CentOS 6.5_64 Installation

ORACLE Error