ユーザがjack
、グループがdatateam
であるとします。ユーザーjack
はグループdatateam
に属します。Sentry特権モデル:Sentryはサーバー特権からデータベース特権を奪うことができますか?
認可のためにSentryを使用してください。
create role admin;
grant role admin to group datateam;
grant all on server server1 to role admin;
ここで、ロールadmin
には以下の特典があります。
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| database | table | partition | column | principal_name | principal_type | privilege | grant_option | grant_time | grantor |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| * | | | | admin | ROLE | * | false | 1480985013185000 | -- |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
このデータベースがあるとします。
create database testdb;
成功です。ユーザーjack
がデータベースtestdb
を作成しました。
の特権を取り消すためにSentryを使用してください。
revoke all on database `testdb` from role admin;
恩恵は依然として同じです。
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| database | table | partition | column | principal_name | principal_type | privilege | grant_option | grant_time | grantor |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| * | | | | admin | ROLE | * | false | 1480985013185000 | -- |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
は、Sentryは離れて、サーバーからデータベースtestdb
に権限を取るべきではないでしょうか。