共计 1989 个字符,预计需要花费 5 分钟才能阅读完成。
Oracle 权限的分配:
1、grant 用于将角色、系统权限、对象权限赋予用户、角色。
2、赋权的前提条件:
系统权限:有 ”grant any privilege” 的系统权限、被授予该系统权限时使用了 “admin option”
角色权限:1) 授予角色角色权限时带有 ”admin option”;2) 被授予了 ”grant any role” 的系统权限;3) 是角色的创建者。
对象权限:1) 是对象的拥有者;2) 被授予对象权限时带有 ”grant option”;3) 被授予了 ”grant any object privilege” 权限;
3、语法:
grant [grant_system_privileges|grant_object_privileges];
grant_system_privileges:
{system_privilege| role| ALL PRIVILEGES}
[, { system_privilege| role| ALL PRIVILEGES}]…
TO grantee_clause [WITH ADMIN OPTION];
grantee_clause:
{user [ IDENTIFIED BY password]| role| PUBLIC}
[, { user [ IDENTIFIED BY password]| role| PUBLIC}]…
grant_object_privileges:
{object_privilege | ALL [ PRIVILEGES] }
[(column [, column]…) ]
[, { object_privilege | ALL [ PRIVILEGES] }[(column [, column]…) ]]…
on_object_clause TO grantee_clause [WITH HIERARCHY OPTION][WITH GRANT OPTION]
on_object_clause:
ON {[ schema.] object
| DIRECTORY directory_name
| EDITION edition_name
| MINING MODEL [schema.] mining_model_name
| JAVA {SOURCE | RESOURCE} [schema.] object
}
要记住 ”grant 权限 to 用户 ”.
—————————————————————————————
权限的回收:
1、语法
REVOKE {revoke_system_privileges| revoke_object_privileges} ;
revoke_system_privileges:
{system_privilege| role| ALL PRIVILEGES}
[, { system_privilege
| role
| ALL PRIVILEGES
}
]…
FROM grantee_clause
revoke_object_privileges:
{object_privilege | ALL [ PRIVILEGES] }
[, { object_privilege | ALL [ PRIVILEGES] } ]…
on_object_clause
FROM grantee_clause
[CASCADE CONSTRAINTS | FORCE]
grantee_clause:
{user [ IDENTIFIED BY password]
| role
| PUBLIC
}
[, { user [ IDENTIFIED BY password]
| role
| PUBLIC
}
]…
on_object_clause:
ON {[ schema.] object
| DIRECTORY directory_name
| EDITION edition_name
| MINING MODEL [schema.] mining_model_name
| JAVA {SOURCE | RESOURCE} [schema.] object
}
记住 ”revoke 权限 from 用户 ”
——————————————————————————-
系统权限不能级联回收,对象权限可以级联回收。
————————————————————————————-
更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-01/139278.htm