1.oracle通过用户、角色、权限三个结构来实现安全性
2.用户
创建用户:CREATE USER user IDENTIFIED {BY password | EXTERNALLY} [DEFAULT TABLESPACE tablespace] [TEMPORARY TABLESPACE tablespace] [QUOTA {integer [K|M] | UNLIMITED} ON tablespace] [PROFILE profile]
修改用户:ALTER USER user [IDENTIFIED {BY password | EXTERNALLY}] [DEFAULT TABLESPACE tablespace] [TEMPORARY TABLESPACE tablespace] [QUOTA {integer [K|M] | UNLIMITED} ON lespace]
[PROFILE profile] [DEFAULT ROLE { role [, role] ... | ALL [EXCEPT role [, role] ...] | NONE}]
删除用户:DROP USER user_name [CASCADE];
如果你使用了CASCADE 选项那么所有与用户账号相关的对象也将会被删除否则的话对象将仍归该用户所有但是用户将不再有效。
3.角色
创建角色:GRANT role TO user [WITH ADMIN OPTION];
删除角色:REVOKE role FROM user;
常用角色:CONNECT、RESOURCE、DBA
Connect 角色允许用户从表中插入更新删除属于其它用户的记录在取得了适当的许可权限以后用户也可以创建表视图序列簇和同义词;
RESOURCE角色除了可以赋予Connect 角色的权限以外它还有创建过程触发机制和索引的权限;
DBA 角色包括了所有的权限赋予了该角色的用户可以在数据库中做他们想做的任何事为了保证系统的完整性你应该将具有该角色的用户数量保持在仅有的少数几个上。
4权限
GRANT system_privilege TO {user_name | role | PUBLIC} [WITH ADMIN OPTION];
如果使用了WITH ADMIN OPTION 选项就允许拥有该权限的人将该权限应用给其它的用户。
待续。。。
更多推荐
SQL 21日自学通(v1.0)笔记5(数据库安全)
发布评论