うんちくメモ

ただのメモです。内容は妄想の可能性があります

権限情報取得SQL

・権限情報取得SQL各種
・ユーザ、ロールに付与されたシステム権限確認

set line 200
set pages 1000
col grantee for a30
col privilege for a40

select * from dba_sys_privs order by grantee,privilege;

※各列の内容は下記の通り

GRANTEE      権限を付与されたユーザ、ロール名
PRIVILEGE    システム権限名
ADMIN_OPTION 「YES」であればADMIN OPTION付きで権限が付与された事を示す


・DB内全てのユーザ、ロールに付与されたロール確認

set line 200
set pages 1000
col grantee for a30
col granted_role for a30
select * from dba_role_privs order by grantee,granted_role;

※各列の内容は下記の通り

GRANTEE      権限を付与されたユーザ、ロール名
GRANTED_ROLE ロール名
ADMIN_OPTION 「YES」であればADMIN OPTION付きで権限が付与された事を示す
DEFAULT_ROLE 「YES」であればDEFAULT ROLEとして権限が付与された事を示す


・DB内の全てのオブジェクト権限の確認
※対象データが多いのでスキーマ名やオブジェクト名で出力を限定すると吉

set line 200
set pages 1000
col grantee for a20
col owner for a20
col table_name for a30
col privilege for a30
select grantee,owner,table_name,privilege
from dba_tab_privs;

※その他の列を含む内容は下記の通り

GRANTEE      権限を付与されたユーザ、ロール名
OWNER        オブジェクトの所有者
TABLE_NAME   オブジェクト名
GRANTOR      権限付与を実行したユーザ名
PRIVILEGE    オブジェクトに対する権限名
GRANTABLE 「YES」であればGRANT OPTION付きで権限が付与された事を示す
HIERARCHY  「YES」であればHIERARCHY OPTION付きで権限が付与された事を示す

※HIERARCHY OPTION
オブジェクトの全てのサブオブジェクトに対してもオブジェクト権限を付与するオプション。
オブジェクト・ビュー階層内のオブジェクト・ビューにSELECTオブジェクト権限が付与されている場合のみ有効となり、権限が付与されているビューのサブビュー全てに権限が適用される。