oracle安全
用户管理
DBA授予不同用户不同权利,每个用户可以在授权范围内活动,任何超越权限范围的操作都视为非法。
sys用户 网络管理员 拥有最高权限
conn sys/口令 as sysdba;
system用户 本地管理员
scott用户 示例数据库
建立用户:(必须拥有dba权限)
Create User 用户名 Identified by 口令 [Externally] --口令在sqlplus中必须输入一个以字母开头的口令,在企业管理器中可以任意
[Default TableSpace 表空间名] -- 缺省表空间
[Temporary TableSpace 表空间名] --临时表空间
[Quota 整数 K|M | UnLimited On 表空间名] --表空间中使用的限额空间 或者不限定限额
表空间概念类似于sql server中数据库的概念
限制用户
Alter User 用户名 account lock;--加锁
Alter User 用户名 account unlock;--解锁
Alter 用户名 Password Expire;--口令失效
删除用户
Drop User 用户名 [Cascade];--表示删除用户模式中的所有对象(包括其创建的表空间等)
权限管理
Grant [系统特权名] [角色] To [用户名列表] [Public] [With Admin Option];--授予权限
Revoke [系统特权名] [角色] From [用户名列表] [Public];--撤销授权
Select * From User_Sys_Privs;--查看系统权限
角色管理
角色将系统权限分配给用户的中间的类用户或权限装载容器。可以给某些角色一定的权限,当某个用户需要一定权限时,把一个具有和他所要的权限相同的角色赋予它就可。
(士兵是一个角色,而演士兵的演员是一个用户)
Create Role 角色名 [Not Identified | Identified By 口令 | Extenally]
无口令 口令 由操作系统检验的口令
创建角色以后对其授权,同权限管理。
Grant 角色名 To [用户名列表] [Public];
Revoke 角色名 To [用户名列表] [Public];
Drop Role 角色名;--不影响用它已经授予的用户的权限