• 締切済み

oracleユーザーの権限確認方法について

お世話になります。 例えばですが、oracleでsysユーザからaaaというユーザーを作成し、 selectやcreateなどの権限を付与したとします。 そこでaaaユーザーでログインして、aaaユーザーが行うことのできる 権限を調べたいと思ったのですが、いまいちわかりません…。 (1)select * from session_privs; ではcreate系の権限は表示されますが、select系(DML文)の権限が何を付与されているか表示されませんでした。 (2)select * from user_sys_privs; でもselect等の権限の確認はできませんでした。 (3)select * from user_tab_privs; では一件も出てきませんでした。 上記3つは何か間違えているのでしょうか? それとも他にも何か調べ方があるのでしょうか? よろしくお願い致します。

みんなの回答

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ。 > (2)select * from user_sys_privs;でもselect等の権限の確認はできませんでした。 > (3)select * from user_tab_privs;では一件も出てきませんでした。 (2) がSYSTEM 権限 (DML やDDL を実行する権限) で (3) がOBJECT 権限 (特定の表やSEQUENCE に対する操作権限を他ユーザに付与) です。 > 上記3つは何か間違えているのでしょうか? 恐らくは、ROLE (権限の塊り) 経由で権限が付与されているのではないでしょうか? ユーザに付与されたROLE はuser_role_privs で確認できます。 また、ROLE に付与された権限を確認する場合は、dba_role_privs を確認して下さい。 詳細は、Oracle のリファレンス・マニュアルを確認して下さい。 http://docs.oracle.com/cd/E16338_01/server.112/b56311/toc.htm