十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
直接revoke即可:
创新互联 - 联通机房服务器托管,四川服务器租用,成都服务器租用,四川网通托管,绵阳服务器托管,德阳服务器托管,遂宁服务器托管,绵阳服务器托管,四川云主机,成都云主机,西南云主机,联通机房服务器托管,西南服务器托管,四川/成都大带宽,成都机柜租用,四川老牌IDC服务商
SQL revoke create any table,create any view,select any table,drop any table from scott;
grant select any table to b with admin option
/或
grant select any table to b with grant option
这么个意思。
以下是我找到的他们的区别
1、with admin option
with admin option的意思是被授予该权限的用户有权将某个权限(如create any
table)授予其他用户或角色,取消是不级联的。
如授予A系统权限create session with admin option,然后A又把create
session权限授予B,但管理员收回A的create session权限时,B依然拥有create session的权限。但管理员可以显式收回B create
session的权限,即直接revoke create session from B.
2、with grant option
with grant option的意思是:权限赋予/取消是级联的,如将with grant
option用于对象授权时,被授予的用户也可把此对象权限授予其他用户或角色,不同的是但管理员收回用with grant
option授权的用户对象权限时,权限会因传播而失效,如grant select on table with grant option to
A,A用户把此权限授予B,但管理员收回A的权限时,B的权限也会失效,但管理员不可以直接收回B的SELECT ON TABLE 权限。
突然想查看数据库中哪些用户拥有DBA权限,于是百度了一下,找到了这一条语句:
查看
select * from dba_role_privs where granted_role='DBA'
注意:执行这一条语句需要执行者本来就要有DBA权限
另外如果要是想收回某用户的DBA权限则执行:
revoke dba from user_Name
给你举个例子好了:
如A用户的user表需要授权给B用户,可以这样写:
GRANT DELETE, INSERT, SELECT, UPDATE ON A.USER TO B;
在A用户下执行之后,B就可以通过A.USER访问。
如果需要直接访问USER,就需要建同义词:
CREATE OR REPLACE PUBLIC SYNONYM USER FOR A.USER;
一并在A用户下执行
撤销创建视图的权限如下,以dba用户登录:
revoke create view from scott;
-- 先授权
connect 用户A/密码;
grant select on V to 用户B;
-- 测试
connect 用户B/密码;
select * from 用户A.V;
-- 取消授权
connect 用户A/密码;
revoke select on V from 用户B;