《数据厍设计与开发》讲义 2.2.1.2权限管理 权限分为两大类:系统权限和对象权限。 系统权限用于划分DBA的职责(多个DBA),有 CREATE对象, ALtER对象,DROP对象等80 余种。如果将系统权限授予某一用户,则该用 户应当被看作DBA 对象权限是为控制用户使用数据库对象而设立 的,数据库对象主要有表、视图、序列、过程/ 函数和快照等,权限有 ALTER、Ⅰ NSERT DELETE、 UPDATE、 SELECT、 INDEX、 EXECUTE、 REFERENCES,对象权限与SQL 语句有直接的对应关系,在某个数据库对象上 拥有某种权限,往往意味着可以执行相应的 SQ语句。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.2.1.2 权限管理 • 权限分为两大类:系统权限和对象权限。 • 系统权限用于划分DBA的职责(多个DBA),有: CREATE对象,ALTER对象,DROP对象等80 余种。如果将系统权限授予某一用户,则该用 户应当被看作DBA。 • 对象权限是为控制用户使用数据库对象而设立 的,数据库对象主要有表、视图、序列、过程/ 函数和快照等,权限有ALTER、 INSERT、 DELETE 、 UPDATE 、 SELECT 、 INDEX 、 EXECUTE、REFERENCES,对象权限与SQL 语句有直接的对应关系,在某个数据库对象上 拥有某种权限,往往意味着可以执行相应的 SQL语句
《数据厍设计与开发》讲义 2.2.1.3角色 角色介于权限和用户之间是一组系统权限和对象权限的 集合,把它们组合在一起赋予一个名字,就使得授予权限 变得简单用户被授予某个角色,则拥有该角色的所有权限 引入角色的概念可减轻DBA的负担 数据库应用设计者可以不再理会各个工作站的具 体用户是谁,只以抽象的角色代替 ORACLE8预先定义了8种角色用来限制系统权 限数据库应用设计者可以以此为基础规划和定 义一般用户 CREATE ROLE rolename INOT IDENTiFIED IIDENTIFIED BY passwordEXTERNALLY I 如果角色有口令,用户要知道口令才可扮演该角 色 EXTERNALLY表示由操作系统检验口令 北京邮电次学软优貌 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.2.1.3 角色 • 角色介于权限和用户之间,是一组系统权限和对象权限的 集合,把它们组合在一起赋予一个名字,就使得授予权限 变得简单.用户被授予某个角色,则拥有该角色的所有权限. 引入角色的概念可减轻DBA的负担. • 数据库应用设计者可以不再理会各个工作站的具 体用户是谁,只以抽象的角色代替. • ORACLE 8预先定义了8种角色,用来限制系统权 限,数据库应用设计者可以以此为基础规划和定 义一般用户. • CREATE ROLE rolename [NOT IDENTIFIED] [IDENTIFIED [BY password|EXTERNALLY]] 如果角色有口令,用户要知道口令才可扮演该角 色,EXTERNALLY表示由操作系统检验口令
《数据厍设计与开发》讲义 2.2.1.3角色 ORACLE预先定义的8种角色 CONNECT∵:连接到数据库,最终用户角色. RESOURCE:申请资源创建对象,开发人员角色 DBA:具有全部系统权限,可以创建用户 IMP FULL_ DATABASE:装入全部数据库内容 EXP FULL DATABASE:卸出全部数据库内容. DELE CATALOG ROLE:能删除审计表中记录 SELECT CATAL0 G ROLE:査询数据字典 EXECUTE CATALOG ROLEE:执行过程和函数 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.2.1.3 角色 • ORACLE预先定义的8种角色: CONNECT:连接到数据库,最终用户角色. RESOURCE:申请资源创建对象,开发人员角色. DBA:具有全部系统权限,可以创建用户. IMP_FULL_DATABASE:装入全部数据库内容. EXP_FULL_DATABASE:卸出全部数据库内容. DELE_CATALOG_ROLE:能删除审计表中记录. SELECT_CATALOG_ROLE:查询数据字典. EXECUTE_CATALOG_ROLEE:执行过程和函数
《数据厍设计与开发》讲义 2.2.1.4权限授予 GRANT[系统权限角色] TO[用户 PUBLIO角色] TWITH ADMIN OPTIONI WITH ADMIN OPTIC0N允许权限复制给其他用户 GRANT[ALL象权限对象权限.】角色] ON TABLET tablenamelviewname TO[ PUBLIO| username[ username.角色] TWITH GRANT OPTION: 系统权限、对象权限和角色均可用响应的 REVOKE语句收回 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.2.1.4 权限授予 • GRANT [系统权限|角色] TO [用户|PUBLIC|角色] [WITH ADMIN OPTION]; WITH ADMIN OPTION允许权限复制给其他用户. • GRANT [ALL |对象权限[,对象权限…]|角色] ON [TABLE] tablename|viewname TO [PUBLIC|username[,username…]|角色] [WITH GRANT OPTION]; • 系统权限 、 对象权限和角色均可用响应的 REVOKE语句收回
《数据厍设计与开发》讲义 2.2.1.5资源管理 PROFILE为用户规定了动态资源限制如果创建 用户时不指定资源限制文件,则采用一个叫做 DEFAULT文件的配置(缺省配置)资源限制文件 可以限制一个单独的调用或整个会话所需要的资 源 CREATE PROFILE filename LIMIT SESSIONS PER USER n/UNLIMITED-用户可同时进行几个会话 CPU PER SESSION n UNLIMITED每个会话用多少1%秒CPL CONNECT TIME n UNLIMITED-连接数据库时间(分钟) LOGICAL READS PER SESSION n/UNLIMITED-会话中调用块数 限制用户动态资源的目的是为了安全,分配给用户的动态 资源应与用户的正常业务相当如果用户资源占用超越分 配值,意味着用户在干‘份外’的工作了.系统阻止这类行 为通常是结束会话回退当前事务返回错误信息、 北京邮电次学软优学 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.2.1.5 资源管理 • PROFILE为用户规定了动态资源限制,如果创建 用户时不指定资源限制文件,则采用一个叫做 DEFAULT文件的配置(缺省配置).资源限制文件 可以限制一个单独的调用或整个会话所需要的资 源. • CREATE PROFILE filename LIMIT SESSIONS_PER_USER n|UNLIMITED --用户可同时进行几个会话 CPU_PER_SESSION n|UNLIMITED --每个会话用多少1%秒CPU CONNECT_TIME n|UNLIMITED --连接数据库时间(分钟) LOGICAL_READS_PER_SESSION n|UNLIMITED --会话中调用块数 …………. ; • 限制用户动态资源的目的是为了安全,分配给用户的动态 资源应与用户的正常业务相当.如果用户资源占用超越分 配值,意味着用户在干‘份外’的工作了.系统阻止这类行 为通常是结束会话,回退当前事务,返回错误信息