98.Oracle数据库SQL开发之 用户特权和角色——对象特权

98.Oracle数据库SQL开发之 用户特权和角色——对象特权

欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50042839

对象特权允许用户对数据库对象执行特定的操作,例如对表执行DML语句。

常用的对象特权:

SELECT

INSERT

UPDATE

DELETE

EXECUTE

1.  向用户授予对象特权

可以使用GRANT语句向用户授予对象特权。

语法类型授予系统特权。

如下:

store@PDB1> grant select,insert on store.productsto steve;

 

Grant succeeded.

所授权的用户可以把这种特权再授予其他用户,使用WITH GRANT OPTION选项。

授权用户将系统特权授予其他用户时,使用ADMIN选项。

2.  检查已授权的对象特权

通过查询user_tab_privs_made可以检查某个用户对哪些表向其他用户开放了哪些对象特权:

例如:

store@PDB1> select * from user_tab_privs_madewhere table_name='PRODUCTS';

 

GRANTEE

----------------------------------------------------------------------------------------------------

TABLE_NAME

----------------------------------------------------------------------------------------------------

GRANTOR

----------------------------------------------------------------------------------------------------

PRIVILEGE                                    GRA HIE COM TYPE

------------------------------------------- --- --- ------------------------

STEVE

PRODUCTS

STORE

SELECT                                          NO  NO NO  TABLE

 

STEVE

PRODUCTS

STORE

INSERT                                          NO  NO NO  TABLE

3.  检查已接受的对象特权

通过查询user_tab_privs_recd表可以检查某个用户被授予了哪些表上的哪些对象特权。

store@PDB1>select * from user_tab_privs_recd order by privilege;

 

no rows selected

 

通过查询user_col_privs_recd可以检查某个用户被授予了哪些列的对象特权。

store@PDB1> select * from user_col_privs_recd;

 

no rows selected

4.  使用对象特权

用户被授予对象特权之后,就可以使用这种特权来执行特定的任务。

5.  同名对象

同名对象时用CREATE SYNONYM语句创建的。

例如:

CREATE SYNONYMcustomers for store.customers;

自行如下:

SELECT * FORMCUSTOMRES;

6.  公共同名对象

创建公共同名对象之后,所有的用户都可以看到这个同名对象。

例如:

CREATE PUBLIC SYNONYM products forstore.products;

可以通过公共同名对象products对store.products进行检索。

7.  撤销用户的对象特权

可以使用REVOKE语句撤销某个用户的对象特权。

例如:

REVOKE INSERT ONproducts from steve;

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值