DB2 - 角色



简介

角色是一个数据库对象,它将多个权限组合在一起,可以使用 GRANT 语句将其分配给用户、组、PUBLIC 或其他角色。

角色的限制

  • 角色不能拥有数据库对象。
  • 在创建以下数据库对象时,不会考虑授予组的权限和角色。
    • 包含静态 SQL 的包
    • 视图
    • 物化查询表 (MQT)
    • 触发器
    • SQL routine

创建角色和授予角色成员资格

语法:[创建新角色]

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>

示例:[将“sales”角色的权限授予另一个角色“production”]

db2 grant sales to role production 
广告