-- 1. ユーザーの作成
-- 1.1 「管理者」ユーザー
CREATE OR REPLACE USER ADMIN user01
'password' SHA512
'description of user01'
;
-- 1.2 「一般」ユーザー
CREATE OR REPLACE USER user02
'password' SHA512
'description of user02'
;
CREATE OR REPLACE USER user03
'password' SHA512
'description of user03'
;
LIST USERS;
-- 2. ロールの作成
CREATE OR REPLACE ROLE role01
'description of role01'
;
CREATE OR REPLACE ROLE role02
'description of role02'
;
CREATE OR REPLACE ROLE role03
'description of role03'
;
LIST ROLES;
-- 3. ロールへの権限付与
ALTER ROLE role01
GRANT ALL PRIVILEGES ON db01
GRANT CONNECT, CREATE ON db02
;
ALTER ROLE role02
GRANT ALL PRIVILEGES ON db01
;
ALTER ROLE role03
GRANT CONNECT, CREATE ON db02
;
-- 4. ユーザーへの権限付与
ALTER USER user02
GRANT ALL PRIVILEGES ON db01
GRANT CONNECT, CREATE ON db02
;
-- 5. ユーザーへのロール付与
ALTER USER user03
GRANT ROLE role01
;
-- 6. ロールへのロール付与
ALTER ROLE role02
GRANT ROLE role03
;
-- 7. 権限の確認
select * from GET_CATALOG_EFFECTIVE_PERMISSIONS()
where input_user_name in ('user01','user02','user03')
order by input_user_name,dbname
;
select * from CATALOG_PERMISSIONS();