oracle数据库课件chapter6safeMON.ppt
《oracle数据库课件chapter6safeMON.ppt》由会员分享,可在线阅读,更多相关《oracle数据库课件chapter6safeMON.ppt(66页珍藏版)》请在三一办公上搜索。
1、概要文件、用户和角色,一、用户类型数据库管理员DBA每个数据库至少有一个DBA,可以有多个,职责:安装或更新ORACLE服务器和应用工具;分配存储空间;建立或修改基本数据库存储结构;建立数据库对象(表、视图、索引等);注册用户并维护系统安全信息;控制和管理用户对数据库的访问;监视和优化数据库性能;备份或恢复数据库;,2.安全管理员 主要职责:它注册用户;监视和管理用户对数据库的访问;维护系统安全。如果有安全员,DBA就不完成这些工作。3.网络管理员 管理ORACLE网络产品,如ORACLE NET。4.应用开发者,主要职责设计开发数据库应用,设计应用的数据库结构;评估应用存储需求,描述对数据库
2、结构的修改;与DBA一起建立应用的安全机制,5.应用管理员:管理特定的应用系统。6.数据库用户(终端用户)数据库用户通过应用程序与数据库交互。输入、修改或删除数据;根据数据生成报表;二、建立安全策略每个数据库有一个或多个管理员负责数据库安全。数据安全策略指的是控制用户对数据库中对象的访问和使用方法。每类用户使用不同的安全策略,如口令等。,1.用户的特性每个用户必须有唯一名字和口令每个用户占有一个模式,模式名同用户名每个用户可拥有一个缺省表空间用户可以有存放临时信息的临时表空间用户可分配自己在表空间的配额空间用户定义配置文件来表明自己的操作范围用户有系统权限及对象权限建立用户必须有CREATE
3、USER系统权限新建立用户必须授予CREATE SEESION权限才可登录ORACLE数据库。,三、建立用户,PUBLIC用户组,每个数据库中都有一个PUBLIC用户组,Oracle会在创建数据库时自动创建PUBLIC用户组。每个数据库用户创建后都自动成为PUBLIC组中的成员。利用PUBLIC用户组可以方便地为数据库中所有用户授予必要的对象权限和系统权限。如果某个用户将一项权限或角色授予PUBLIC用户组,那么数据库中所有的用户都会拥有这项权限或这个角色。PUBLIC组中用户可以查询所有以 USER和 ALL开头的数据字典视图。,PUBLIC用户组,注意:1.不能为PUBLIC用户组设置任何
4、表空间配额;2.不能在PUBLIC模式中创建数据库对象。,CREATE USER 用户名 IDENTIFIED BY 口令DEFAULT TABLESPACE 表空间名TEMPORARY TABLESPACE 表空间名QUOTA 整数UNLIMITED ON 表空间名PROFILE 概要文件名PASSWORD EXPIREACCOUNT LOCK|UNLOCK说明:省略缺省表空间,为SYSTEM;表空间必须存在省略临时表空间,为SYSTEM或其它临时表空指定临时表空间,表空间是临时而不是永久,2.建立用户命令,QUOTA n ON 表空间,指定对表空间的配额QUOTA UNLIMIED ON
5、表空间,空间不限制可以有多个QUOTA 子句概要文件分配用户可用的资源,不指定用缺省的环境文件DEFAULT分配给用户PASSWORD EXPIRE强制用户第一次登录时改变口令ACCOUNT LOCK建立一个锁定的帐号3.例1:CREATE USER WANG1 IDENTIFIED BY WANG;缺省或临时表空间为SYSTEM,没有指定配额。必须CREATE SESSION才能登录。要建立对象必须用QUOTA配额。,对于WANG用户,SQL PLUS登录,出错:ERROR:ORA-01045:user WANG lacks CREATE SESSION Privilege,logon de
6、nied.,SWJ001重新登录:Grant create session to wang1create table dd(n char(3);出错ALTER USER WANG QUOTA 2M ON SYSTEM注意:用户在表空间必须有配额(不管是否指定缺省表空间),才可建立对象。,例2:CREATE USER SWJTEST IDENTIFIED BY TEST DEFAULT TABLESPACE SWJ TEMPORARY TABLESPACE TEMP QUOTA 2M ON SYSTEM QUOTA UNLIMITED ON SWJ例3:CREATE USER SWJ1 IDEN
7、TIFIED BY TTTT DEFAULT TABLESPACE SWJ TEMPORARY TABLESPACE TEMP QUOTA UNLIMITED ON SWJ PASSWORD EXPIRE,注意:新建立用户要想能登录到ORACLE,必须要:GRANT CREATE SESSION TO SWJTEST,用SWJ1第一次登录ORACLE时,将提示错误:ERROR:ORA-28001:the password has expired,例4:CREATE USER SWJ2 IDENTIFIED BY TTTT DEFAULT TABLESPACE SWJ TEMPORARY TAB
8、LESPACE TEMP QUOTA UNLIMITED ON SWJ PASSWORD EXPIRE ACCOUNT LOCK;用SWJ2登录时,显示错误:ERROR:ORA-2800:the account is locked.必须由管理员解锁:alter user swj2 account unlock,USER_USERS:当前用户信息表,主要列名:USERNAME(用户名)、USER_ID(用户编号)、ACCOUNT_STATUS(状态:OPEN或LOCKED)LOCK_DATE(加锁日期)、EXPIRY_DATE(口令过期日期)DEFAULT_TABLESPACE(缺省表空间)TE
9、MPORARY_TABLESPACE(临时表空间)CREATED(用户建立日期)select username,user_id,account_status,lock_date,expiry_date,default_tablespace,temporary_tablespace,created from user_users,4.查询用户信息,ALL_USERS:所有用户名及编号,主要列名:USERNAME、USER_ID、CREATED SELECT*FROM ALL_USERS;USERNAME USER_ID CREATED-SWJ010 351 27-10月-02SWJ1 465 3
10、1-10月-02SQLselect*from all_users 2 where username like SWJ%;USER_TS_QUOTAS:表空间配额信息,主要列:TABLESPACE_NAME,BYTES SELECT*FROM USER_TS_QUOTAS;TABLESPACE_NAME BYTES MAX_BYTES BLOCKS MAX_BLOCKS-SWJ 131072-1 32-1 一块=4096Bytes,1.修改用户(系统权限:ALTER USER)ALTER USER 用户名 选项这里的选项与CREATE USER中的一样。例1:alter user swj001
11、account unlock;-解锁例2:alter user swj001 account lock;-加锁例3:alter user swj001 identified by swj-改口令例4:alter user swj001 quota unlimited on system quota 5M on swj;例5:alter user swj001 password expire;下次用SWJ001登录到ORACLE时,提示改口令。,四、修改用户,DROP USER 用户名 CASCADE选项CASCADE删除用户模式下的所有对象,但不删除用户建立的角色。例6:删除没有对象的用户:D
12、ROP USER SWJ1;例7:如果用户模式下有对象,必须用命令:DROP USER SWJ2 CASCADE;例8:不能删除当前用户。设当前用户SWJ001SQL drop user swj001 cascade;drop user swj001 cascade*ERROR 位于第 1 行:ORA-01940:cannot drop a user that is currently connected,删除用户,权限,权限是执行一种特殊类型的SQL语句或存取另一用户的对象的权力。有两类权限:系统权限和对象权限。1)系统权限:是执行一处特殊动作或者在对象类型上执行一种特殊动作的权利。系统权限
13、可授权给用户或角色,一般,系统权限只授予管理人员和应用开发人员,终端用户不需要这些相关功能。2)对象权限:在指定的表、视图、序列、过程、函数或包上执行特殊动作的权利。,用户权限是用户执行SQL语句的权力,或是访问其它用户对象的权力。权限是赋予用户或角色。ORACLE有100多种系统权限,用于完成对数据库操作或对象管理。1.系统权限表系统权限可以完成建立、删除、修改数据库、表空间、数据库对象、用户角色等内容。,系统级权限,将系统权限授予用户,要有权限WITH ADMINOPTION选项,或GRANT ANY PRIVILEGE。GRANT 系统权限名表 TO 用户名 PUBLIC WITH AD
14、MIN OPTIONPUBLIC 将系统权限授予所有用户WITH ADMIN OPTION 可将权限授予其它用户例1:GRANT SELECT ANY TABLE TO T001例2:GRANT CREATE USER,DROP USER TO T001 WITH ADMIN OPTIONT001可将CREATE USER,DROP USER授予其它用户或回收:grant create user to swj002;,给用户授予系统权限,例3:GRANT CREATE SESSION,ALTER USER TO PUBLIC;3.回收系统权限要有系统权限GRANT ANY PRIVILEGE。
15、授予权限的用户可以回收它授予其它用户的权限。或者在得到系统权限时有WITH ADMIN OPTION。REVOKE 系统权限名 FROM 用户名|PUBLIC用户SWJ001:例1:REVOKE CREATE USER FROM T001;例2:REVOKE ALTER USER FROM PUBLIC;,select*from user_sys_privs;USERNAME PRIVILEGE ADM-T001 CREATE SESSION NOT001 CREATE USER YES注意:有WITH ADMIN OPTION ADM为YES此时用户T001可将CREATE USER系统权限
16、授予其它用户或回收。NO时不能(在也没有GRANT ANY PRIVILEGE时)。,数据字典USER_SYS_PRIVS,对象级权限是指用户访问其它用户对象的权利。对象级权限类型,对象级权限,GRANT 对象权限|ALL ON 对象列名表 TO 用户|角色|PUBLIC WITH GRANT OPTION将对对象的操作权限授予用户、角色或所有。对于INSERT、UPDATE对象权限可限制到列名。WITH GRANT OPTION 接受者可将权限授予其它用户例1:SWJ001用户:GRANT SELECT ON EMPLOYEES TO T001T001用户:SELECT*FROM SWJ00
17、1.EMPLOYEES;但不能:SELECT*FROM SWJ001.JOBS;,授予对象级权限,例2:SWJ001用户:GRANT INSERT ON JOBS TO T001;T001用户:INSERT INTO SWJ001.JOBS VALUES(JOBS,PLA,1000,3000);提交SWJ001才看到INSERT INTO SWJ001.JOBS(JOB_ID,JOB_TITLE)VALUES(DDD,TEST);SWJ001用户:GRANT DELETE ON JOBS TO T001;T001用户:DELETE FROM SWJ001.JOBS WHERE JOB_ID L
18、IKE D%,例3:带WITH GRANT OPTION选项SWJ001:GRANT SELECT ON EMPLOYEES TO T001 WITH GRANT OPTIONT001:SELECT*FROM SWJ001.EMPLOYEESGRANT SELECT ON SWJ001.EMPLOYEES TO HR;HR用户:SELECT*FROM SWJ001.EMPLOYEES;对于T001也可回收授予HR的对象权限。,例3:视图权限,用户SWJ001CREATE OR REPLACE VIEW EMV(NAME,SALARY)AS SELECT LAST_NAME|FIRST_NAME
19、,SALARY FROM EMPLOYEES;GRANT SELECT ON EMV TO T001;T001用户:SELECT*FROM SWJ001.EMV WHERE SALARY=10000;其它数据库对象权限与视图和表相似。,例3:对象权限INSERT,UPDATE时可以加列名。SWJ001用户:GRANT INSERT(JOB_ID,JOB_TITLE),UPDATE(JOB_TITLE)ON JOBS TO T001;T001用户:INSERT INTO SWJ001.JOBS(JOB_ID,JOB_TITLE)VALUES(AD_DD,POLICE);SWJ001:UPDATE
20、 SWJ001.JOBS SET JOB_TITLE=UPDATE WHERE JOB_ID=AD_PV;但下面出错:INSERT INTO SWJ001.JOBS VALUES(AD_DD,POLICE,43,54);,回收对象级权限,REVOKE 对象权限名 ON 对象名|ALL PRIVILEGES FROM 用户名|PUBLICSQLREVOKE ALL PRIVILEGES 2 ON employees FROM user1;SQLREVOKE INSERT,SELECT 2 ON employees FROM PUBLIC;,USER_TAB_PRIVS:用户所有的对象权限GRAN
21、TEE(接收者)、OWNER(对象所有者)TABLE_NAME(对象名)、GRANTOR(授予者)PRIVILEGE(权限名)、GRANTABLE(可授予)T001用户的所有对象权限:SELECT OWNER,TABLE_NAME,GRANTOR,PRIVILEGE FROM USER_TAB_PRIVS;OWNER TABLE_NAME GRANTOR PRIVILEGE-SWJ001 JOBS SWJ001 SELECTSWJ001 EMPLOYEES SWJ001 INSERT,对象级权限数据字典,USER_COL_PRIVS_RECD:对象列名的权限 OWNER(所有者)、TABLE_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 数据库 课件 chapter6safeMON

链接地址:https://www.31ppt.com/p-6513590.html