实验二 Oracle网络连接配置与系统安全.doc_第1页
实验二 Oracle网络连接配置与系统安全.doc_第2页
实验二 Oracle网络连接配置与系统安全.doc_第3页
实验二 Oracle网络连接配置与系统安全.doc_第4页
实验二 Oracle网络连接配置与系统安全.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验二 Oracle网络连接配置与系统安全一、实验目的1. 掌握Oracle net配置工具与使用方法。 2. 掌握系统特权、对象权限以及其管理。 3. 掌握用户、角色的创建及管理。 二、实验内容1、掌握Oracle net配置工具与使用方法:掌握使用Oracle net工具配置服务器监听程序和客户端配置的过程,同时学会手工修改监听程序配置文件listener.ora和本地net服务名文件tnsnames.ora,掌握其中主要包含的关键字。2、Oracle数据库的用户权限可分为三类,分别是数据库系统特权、对象权限和列访问权限;编写代码实现以下功能:a.DBA身份用户通过访问DBA_SYS_PRIVS视图查看授予用户的系统特权信息;(SYS用户和SYSTEM用户)b.普通用户访问用户视图USER_SYS_PRIVS查看自己获得的系统特权。(SYSTEM用户以及scott用户)3、创建4个用户,分别是:dog/wangwang;cat/miaomiao;pig/hengheng;fox/loveyou.、试着使用cat用户与数据库连接:conn cat/miaomiao (刚创建的用户不能做任何事,因为没有任何系统权限) 。切换到system账户,将CREATE SESSION, SELECT ANY TABLE ,CREATE TABLE和 CREATE VIEW4个系统权限授予cat用户。之后利用cat用户连接数据库。、Cat用户CREATE SESSION, SELECT ANY TABLE权限分给他的狗友(dog用户)。(失败。在GRANT命令中使用with admin option字句,则被授予权限的用户可以进一步将这些系统权限授予其用户。重新使用SYSTEM用户登录,先收回(revoke)cat用户的所有系统权限,再使用带有with admin option字句重新授权)。、查看cat用户的系统特权和任命权:select * from dba_sys_privs where grantee=CATADM列为yes表示该权限可以授予其他用户。之后执行。带有with admin option字句。Dog用户将所有权限无保留的授予fox(带有with admin option字句)和pig(不带有with admin option字句)。查看4个用户具有的系统特权:Select * from dba_sys_privswhere grantee IN(CAT,DOG,FOX,PIG);回收cat用户的CREATE VIEW系统权限,之后查看其具有的系统权限和任命权;查看dog、fox、pig 所具有的系统权限,看有无影响。结论:系统权限的回收是否级联呢?fox用户登录系统,查看自己的系统权限 SELECT * from session_privs;之后收回cat用户的CREATE SESSION系统权限,cat用户不能登录。 一定要谨慎授予系统特权,特别是使用with admin option字句。4、练习使用对象权限和列访问权限。系统的默认用户:sys;/系统管理员,拥有最高权限 system;/本地管理员,次高权限 scott;/普通用户,密码默认为tiger,默认未解锁管理用户:create user zhangsan;/在管理员帐户下,创建用户zhangsan alert user scott identified by tiger;/修改密码 授予权限 :(新建的用户也没有任何权限,必须由管理员授予权限 )grant create session to zhangsan;/授予zhangsan用户创建session的权限,即登陆权限 grant unlimited session to zhangsan;/授予zhangsan用户使用表空间的权限 grant create table to zhangsan;/授予创建表的权限 grante drop table to zhangsan;/授予删除表的权限 grant insert table to zhangsan;/插入表的权限 grant update table to zhangsan;/修改表的权限 grant all to public;/这条比较重要,授予所有权限(all)给所有用户(public) oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权 grant select on tablename to zhangsan;/授予zhangsan用户查看指定表的权限 grant drop on tablename to zhangsan;/授予删除表的权限 grant insert on tablename to zhangsan;/授予插入的权限 grant update on tablename to zhangsan;/授予修改表的权限 grant insert(id) on tablename to zhangsan; grant update(id) on tablename to zhangsan;/授予对指定表特定字段的插入和修改权限,注意,只能是insert和update grant alert all table to zhangsan;/授予zhangsan用户alert任意表的权限 撤销权限 :基本语法同grant,关键字为revoke 查看权限 :select * from user_sys_privs;/查看当前用户所有权限 select * from user_tab_privs;/查看所用用户对表的权限 操作表的用户的表: select * from zhangsan.tablename /需要在表名前加上用户名权限传递: 即用户A将权限授予B,B可以将操作的权限再授予C,命令如下: grant alert table on tablename to zhangsan with grant option;/关键字 with grant option效果和admin类似 5、学习角色的使用。角色即权限的集合,可以把一个角色授予给用户 create role myrole;/创建角色 grant create session to myrole;/将创建session的权限授予myrole grant myrole to zhangsan;/授予zhangsan用户myrole的角色 drop role myrole;删除角色 /*但是有些权限是不能授予给角色的,比如unlimited tablespace和any关键字*/ create role myrole;/创建角色 grant create session to myrole;/将创建session的权限授予myrole grant myrole to zhangsan;/授予zhangsan用户myrole的角色 drop role myrole;删除角色 /*但是有些权限是不能授予给角色的,比如unlimited tablespace和any关键字*/ 附录:一、常用SQL语句1.创建用户 1. createusertestidentifiedbytest;create user test identified by test;2.赋权限 1. grantcreatesessiontotest;/赋可以登录的权限 2. grantunlimitedtablespacetotest;/赋无限制使用表空间的权限 3. grantcreatetabletotest; /用户具有创建表的权限,就有管理用户自己的表的权限。4. grantdbatoscott;/ 尽量不赋dba权限,因为不安全。grant create session to test; /赋可以登录的权限grant unlimited tablespace to test; /赋无限制使用表空间的权限grant create table to test;grant dba to scott;/3.收回权限 1. revokecreatesessiontotest; 2. revokeunlimitedtablespacefromtest; 3. revokecreatetablefromtest; 4. revokedbafromscott;revoke create session to test;revoke unlimited tablespace from test;revoke create table from test;revoke dba from scott;4.查看当前用户的权限 1. select*fromuser_role_privs;二、认识权限alter any cluster 修改任意簇的权限 alter any index 修改任意索引的权限 alter any role 修改任意角色的权限 alter any sequence 修改任意序列的权限 alter any snapshot 修改任意快照的权限 alter any table 修改任意表的权限 alter any trigger 修改任意触发器的权限 alter cluster 修改拥有簇的权限 alter database 修改数据库的权限 alter procedure 修改拥有的存储过程权限 alter profile 修改资源限制简表的权限 alter resource cost 设置佳话资源开销的权限 alter rollback segment 修改回滚段的权限 alter sequence 修改拥有的序列权限 alter session 修改数据库会话的权限 alter sytem 修改数据库服务器设置的权限 alter table 修改拥有的表权限 alter tablespace 修改表空间的权限 alter user 修改用户的权限 analyze 使用analyze命令分析数据库中任意的表、索引和簇 audit any 为任意的数据库对象设置审计选项 audit system 允许系统操作审计 backup any table 备份任意表的权限 become user 切换用户状态的权限 commit any table 提交表的权限 create any cluster 为任意用户创建簇的权限 create any index 为任意用户创建索引的权限 create any procedure 为任意用户创建存储过程的权限 create any sequence 为任意用户创建序列的权限 create any snapshot 为任意用户创建快照的权限 create any synonym 为任意用户创建同义名的权限 create any table 为任意用户创建表的权限 create any trigger 为任意用户创建触发器的权限 create any view 为任意用户创建视图的权限 create cluster 为用户创建簇的权限 create database link 为用户创建的权限 create procedure 为用户创建存储过程的权限 create profile 创建资源限制简表的权限 create public database link 创建公共数据库链路的权限 create public synonym 创建公共同义名的权限 create role 创建角色的权限 create rollback segment 创建回滚段的权限 create session 创建会话的权限 create sequence 为用户创建序列的权限 create snapshot 为用户创建快照的权限 create synonym 为用户创建同义名的权限 create table 为用户创建表的权限 create tablespace 创建表空间的权限 create user 创建用户的权限 create view 为用户创建视图的权限 delete any table 删除任意表行的权限 delete any view 删除任意视图行的权限 delete snapshot 删除快照中行的权限 delete table 为用户删除表行的权限 delete view 为用户删除视图行的权限 drop any cluster 删除任意簇的权限 drop any index 删除任意索引的权限 drop any procedure 删除任意存储过程的权限 drop any role 删除任意角色的权限 drop any sequence 删除任意序列的权限 drop any snapshot 删除任意快照的权限 drop any synonym 删除任意同义名的权限 drop any table 删除任意表的权限 drop any trigger 删除任意触发器的权限 drop any view 删除任意视图的权限 drop profile 删除资源限制简表的权限 drop public cluster 删除公共簇的权限 drop public database link 删除公共数据链路的权限 drop public synonym 删除公共同义名的权限 drop rollback segment 删除回滚段的权限 drop tablespace 删除表空间的权限 drop user 删除用户的权限 execute any procedure 执行任意存储过程的权限 execute function 执行存储函数的权限 execute package 执行存储包的权限 execute procedure 执行用户存储过程的权限 force any transaction 管理未提交的任意事务的输出权限 force transaction 管理未提交的用户事务的输出权限 grant any privilege 授予任意系统特权的权限 grant any role 授予任意角色的权限 index table 给表加索引的权限 insert any table 向任意表中插入行的权限 insert snapshot 向快照中插入行的权限 insert table 向用户表中插入行的权限 insert view 向用户视图中插行的权限 lock any table 给任意表加锁的权限 manager tablespace 管理(备份可用性)表空间的权限 references table 参考表的权限 restricted session 创建有限制的数据库会话的权限 select any sequence 使用任意序列的权限 select any table 使用任意表的权限 select snapshot 使用快照的权限 select sequence 使用用户序列的权限 select table 使用用户表的权限 select view 使用视图的权限 unlimited tablespace 对表空间大小不加限制的权限 update any table 修改任意表中行的权限 update snapshot 修改快照中行的权限 update table 修改用户表中的行的权限 update view 修改视图中行的权限 权限是用户对一项功能的执行权力。在Oracle中,根据系统管理方式不同,将权限分为系统权限与对象权限两类。系统权限是指是否被授权用户可以连接到数据库上,在数据库中可以进行哪些系统操作。而对象权限是指用户对具体的对象所拥有的权限。这样讲可以有些模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论