権限の管理

ORACLEの権限

システム権限

システム権限とは、特定のアクションを実行する権限、または特定のタイプのスキーマ・オブジェクトに対してアクションを実行する権限のことである。
システム権限一覧

システム権限を付与または取消しできるユーザー

  • ADMIN OPTIONによって特定のシステム権限を付与されているユーザー
  • GRANT ANY PRIVILEGEシステム権限を付与されているユーザー
オブジェクト権限

スキーマ・オブジェクト権限とは、特定のスキーマ・オブジェクトに対して特定のアクションを実行する権限である。
オブジェクト権限一覧

スキーマ・オブジェクト権限を付与できるユーザー

  • GRANT ANY OBJECT PRIVILEGEがあるユーザー
  • GRANT OPTIONによって特定のシステム権限を付与されているユーザー

システム権限の管理

権限の付与と取り消し
SQL> grant create session to tom;
 
Grant succeeded.
 
SQL> revoke create session from tom;
 
Revoke succeeded.
 
SQL>

CREATE SESSIONシステム権限を持つTOMがJASONに該当権限を付与する。
SQL> conn tom/tom
Connected.
SQL> grant create session to jason;    -- 権限を付与しようとしたら、権限不足というエラーが発生した。
grant create session to jason
*
ERROR at line 1:
ORA-01031: insufficient privileges
 
SQL> conn system/oracle                    -- SYSTEMユーザーに変える
Connected.
SQL> grant create session to tom with admin option;    -- TOMに権限を付与する時 WITH ADMIN OPTIONを付けた。
 
Grant succeeded.
 
SQL> conn tom/tom
Connected.
SQL> grant create session to jason;            -- TOMが再度JASONに権限を付与すると、成功した。
 
Grant succeeded.
 
SQL>
ALL PRIVILEGESによって全てシステム権限を付与する。
SQL> grant all privileges to tom;
 
Grant succeeded.
 
SQL> revoke all privileges from tom;
 
Revoke succeeded.
 
SQL>

オブジェクト権限の管理

オブジェクト権限の付与と取り消し
SQL> grant select,update,delete,insert on tom.test to jason;
 
Grant succeeded.
 
SQL> revoke all privileges on tom.test from jason;
 
Revoke succeeded.
 
SQL>
WITH GRANT OPTIONでのオブジェクト権限付与

下記の権限設定によってJASONユーザーがTOM.TESTテーブルに対する問い合わせ権限を他のユーザーに付与できる。

SQL> grant select on tom.test to jason with grant option;
 
Grant succeeded.
 
SQL>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License