DB2-役割
前書き
ロールは、GRANTステートメントを使用してユーザー、グループ、PUBLIC、またはその他のロールに割り当てることができる複数の特権をグループ化するデータベースオブジェクトです。
役割の制限
- ロールはデータベースオブジェクトを所有できません。
- 次のデータベースオブジェクトを作成する場合、グループに付与された権限とロールは考慮されません。
- 静的SQLを含むパッケージ
- Views
- マテリアライズ照会表(MQT)
- Triggers
- SQLルーチン
ロールのメンバーシップの作成と付与
Syntax: [新しい役割を作成するには]
db2 create role <role_name>
Example:[「sales」という名前の新しいロールを作成して、ユーザーまたはグループが管理するテーブルを追加する]
db2 create role sales
Output:
DB20000I The SQL command completed successfully.
DBADMから特定のテーブルへのロールの付与
Syntax: [テーブルにロールの権限を付与するには]
db2 grant select on table <table_name> to role <role_name>
Example:[テーブル 'shope.books'をロール 'sales'に管理する権限を追加するには]
db2 grant select on table shope.books to role sales
Output:
DB20000I The SQL command completed successfully.
セキュリティ管理者は、必要なユーザーに役割を付与します。(このコマンドを使用する前に、ユーザーを作成する必要があります。)
Syntax: [ユーザーをロールに追加するには]
db2 grant role <role_name> to user <username>
Example:[ユーザー 'mastanvali'をロール 'sales'に追加するには]
db2 grant sales to user mastanvali
Output:
DB20000I The SQL command completed successfully.
役割階層
ロールの階層を作成するために、各ロールには別のロールの権限/メンバーシップが付与されます。
Syntax: [この構文の前に、「production」という名前の新しいロールを作成します]
db2 grant role <roll_name> to role <role_name>
Example:[役割「販売」の許可を別の役割「生産」に提供するため]
db2 grant sales to role production