DB2 - 角色
-
介绍
角色是一个数据库对象,它对可以通过使用 GRANT 语句分配给用户、组、PUBLIC 或其他角色的多个权限进行分组。 -
角色限制
- 角色不能拥有数据库对象。
- 创建以下数据库对象时,不会考虑授予组的权限和角色。
- 包含静态 SQL 的包
- 视图
- 具体化查询表 (MQT)
- 触发器
- SQL 例程
-
创建和授予角色成员资格
语法:[创建新角色]db2 create role <role_name>
例子: [创建一个名为“sales”的新角色来添加一些由某个用户或组管理的表]db2 create role sales
输出:DB20000I The SQL command completed successfully.
-
将角色从 DBADM 授予特定表
语法:[授予角色对表的权限]db2 grant select on table <table_name> to role <role_name>
例子:[将管理表'shope.books'的权限添加到角色'sales']db2 grant select on table shope.books to role sales
输出:DB20000I The SQL command completed successfully.
安全管理员将角色授予所需用户。(在使用此命令之前,您需要创建用户。)语法:[将用户添加到角色]db2 grant role <role_name> to user <username>
例子:[将用户'mastanvali'添加到角色'sales']db2 grant sales to user mastanvali
输出:DB20000I The SQL command completed successfully.
-
角色层次结构
为了为角色创建层次结构,每个角色都被授予另一个角色的权限/成员资格。语法:[在此语法之前创建一个名为“production”的新角色]db2 grant role <roll_name> to role <role_name>
例子:[将角色“销售”的权限提供给另一个角色“生产”]db2 grant sales to role production