oracle创建第三方数据接口表,指定特定用户访问某张表

/*****创建用户并指定操作哪张表开始******/
--1.创建用户并设置默认表空间
CREATE USER CHENGDWY IDENTIFIED BY CHENGDWY DEFAULT TABLESPACE CFWL QUOTA UNLIMITED ON CFWL;
--DROP USER CHENGDWY CASCADE; --删除用户
--2.授予CHENGDWY用户创建session的权限,即登陆权限
GRANT CONNECT TO CHENGDWY;
ALTER USER CHENGDWY DEFAULT ROLE NONE;
GRANT CREATE SESSION TO CHENGDWY;
--3.授予CHENGDWY用户使用表空间的权限
GRANT UNLIMITED TABLESPACE TO CHENGDWY;
--4.给用户授权可以查看、插入、更新某张表的数据
GRANT
  SELECT ON QICHSJ TO CHENGDWY; --授予查看表QICHSJ的权限
GRANT INSERT ON QICHSJ TO CHENGDWY; --授予插入表QICHSJ的权限
GRANT UPDATE ON QICHSJ TO CHENGDWY; --授予修改表QICHSJ的权限
GRANT
  SELECT ON GUIDHSJ TO CHENGDWY; --授予查看表guidhsj的权限
GRANT INSERT ON GUIDHSJ TO CHENGDWY; --授予插入表guidhsj的权限
GRANT UPDATE ON GUIDHSJ TO CHENGDWY; --授予修改表guidhsj的权限
--5.登录新创建的用户,查看授权是否成功
SELECT * FROM CFWL.QICHSJ Q; --成功
SELECT * FROM QICHSJ Q; --失败,报:表或视图不存在!
SELECT * FROM CFWL.GUIDHSJ G; --成功
SELECT * FROM GUIDHSJ G; --失败,报:表或视图不存在!
--6.给新创建的用户授权可以创建同义词
GRANT CREATE SYNONYM TO CHENGDWY;
--7.使用新创建的用户创建同义词供对方公司访问,解决上面报的错
CREATE SYNONYM TB_QICHSJ FOR CFWL.QICHSJ;--CFWL是创建用户的账号,须根据实际进行修改
CREATE SYNONYM TB_GUIDHSJ FOR CFWL.GUIDHSJ;
--SELECT * FROM USER_SYNONYMS; --查看当前用户下的同义词
--8.在此登录新创建的用户查询授权是否成功
SELECT * FROM CFWL.TB_QICHSJ Q; --成功
SELECT * FROM TB_GUIDHSJ G; --成功
--9.限制第三方连接数据库的连接数
SHOW PARAMETER RESOURCE; --查看数据库连接数限制是否打开,此语句需在SQL*Plus下执行
ALTER SYSTEM SET RESOURCE_LIMIT = TRUE; --修改数据库连接数限制为打开状态,此语句选在SQL*Plus下执行
--新建profile, 初始限制为1 ,用于测试。
CREATE PROFILE CHENGDWY_PROFILE LIMIT SESSIONS_PER_USER 1 FAILED_LOGIN_ATTEMPTS UNLIMITED;
--将创建的数据库连接数限制赋给用户
ALTER USER CHENGDWY PROFILE CHENGDWY_PROFILE;
--将会话数调整到30
ALTER PROFILE CHENGDWY_PROFILE LIMIT SESSIONS_PER_USER 30;
--DROP PROFILE CHENGDWY_PROFILE CASCADE; --删除用户连接数据库限制
/*****创建用户并指定操作哪张表结束******/

相关SQL语句

--查看所有用户会话信息
SELECT * FROM V$SESSION;
SELECT SID, LOGON_TIME, USERNAME, MACHINE FROM V$SESSION;
--查看所有用户连接信息
SELECT S.USERNAME,
       S.OSUSER,
       S.PROGRAM,
       S.MACHINE,
       S.SID,
       S.SERIAL#,
       P.SPID,
       ‘alter system kill session ‘ || ‘‘‘‘ || TRIM(S.SID) || ‘,‘ ||
       TRIM(S.SERIAL#) || ‘‘‘;‘
  FROM V$SESSION S, V$PROCESS P
 WHERE S.PADDR = P.ADDR
   AND S.USERNAME IS NOT NULL;
--断开已连接的用户
SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME = ‘CHENGDWY‘;
ALTER SYSTEM KILL SESSION ‘152, 189‘;

SQL*Plus执行结果:

参考文档:

http://blog.csdn.net/lixi292/article/details/7029915

http://blog.sina.com.cn/s/blog_5695d9a901013ji7.html

http://database.51cto.com/art/201010/231887.htm

http://www.cnblogs.com/liuyou/archive/2011/10/20/2219624.html

时间: 2024-11-05 23:24:13

oracle创建第三方数据接口表,指定特定用户访问某张表的相关文章

nagios 多用户权限管理---特定用户访问特定主机或服务

nagios 多用户权限管理---特定用户访问特定主机或服务1.nagios安装????????????------------2.添加用户和密码htpasswd?/usr/local/nagios/etc/htpasswd.users?eddy 3.修改配置vim?/usr/local/nagios/etc/cgi.cfguse_authentication=1authorized_for_read_only=eddy 4.添加联系人vi?/usr/local/nagios/etc/objec

oracle 10g将数据导入到指定表空间的步骤

--创建临时表空间 create temporary tablespace  yhtemp tempfile 'D:/oracle/oradata/Oracle10g/yhtemp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; --创建数据表空间 create tablespace yh logging datafile 'D:/oracle/oradata/Oracle10g/yh.db

操作-oracle (游标-数据的缓冲区、视图-数据库中虚拟的表、存储过程-提高程序执行效率、触发性-保证数据的正确性、事务和锁-确保数据安全、控制文件和日志文件)

原文地址:https://www.cnblogs.com/smallpigger/p/8320875.html

ftp指定本地用户访问的目录

1.安装vsftpd.ftp(yum安装) 2.更改配置文件 local_root=/var/www/html(ftp用户登录后进入的将都是这个目录) 3.设置目录权限chmod 777 /var/www/html 4.设置为开机自动启动 chkconfig vsftpd on 5.更改selinux vim /etc/sysconfig/selinux selinux=disabled 6.启动服务 service vsftpd start

oracle中查找某用户执行某张表的操作操作记录

1,首先查找表的操作记录 select * from v$sqlarea a where a.SQL_TEXT like '%TB_ACCT_SYSDATE%'; 2,从上面的记录中找到update语句对应的sql_id select * from v$sqltext a,v$sqlarea b where a.SQL_ID=b.SQL_ID and b.SQL_ID in('cq53826tk4u3c','afftnrfhu5utk') order by b.LAST_ACTIVE_TIME

阻止特定用户访问命令提示符

方法一: takeown /f cmd.exe icacls cmd.exe /deny ramesh:RX 方法二: 原文地址:https://www.cnblogs.com/feiyucha/p/11030165.html

oracle数据库删除数据Delete语句和Truncate语句的对比

oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分别介绍. 一.delete语句 (1)有条件删除    语法格式:delete [from]  table_name  [where condition]; 如:删除users表中的userid为‘001’的数据:delete from users where userid='001'; (2)无条

oracle高级查询(实例基于scott用户四张表)

oracle高级查询(实例基于scott用户四张表) 分组查询 多表查询 子查询 综合实例 ======================================================================= scott用户的四张表(emp,dept,bonus,salgrade) 没有这四张表的可参考http://blog.csdn.net/love_legain/article/details/54311040进行创建 -----------------------

Forefront TMG 2010 篇(九)--禁止用户访问特定网站

上文已经提过可以允许用户直接访问外网了,但是公司有特定的要求,不允许某些用户访问某些网站,如:淘宝.QQ.奇艺等.所以我们又要进行相关的设置. 计划: A.建立二个用户组: 无限制用户>>>>公司因为要控制,允许一部分人联网,所以没有办法使用默认的所有者 受限制用户>>>>在允许上网的基础上,进行限制. B.建立 URL 集. 方便把不允许访问的网站集合起来. C.使用 web 访问策略. 创建一条WEB访问策略,就可以把隐藏起来的系统策略调出来,再进行编辑