こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

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つは何か間違えているのでしょうか?
それとも他にも何か調べ方があるのでしょうか?

よろしくお願い致します。

投稿日時 - 2012-09-24 21:47:53

QNo.7715377

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.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

投稿日時 - 2012-09-25 02:57:40

あなたにオススメの質問