`

Oracle授权访问

阅读更多
Oracle授权访问

一、为什么要使用oracle授权访问?

Oracle授权访问控制特定用户只能访问数据库指定访问的内容和权限。

例如,系统A需要访问系统B的数据库erpdev中的表test,如果我们将系统B的访问数据库用户提供给系统A使用,那么系统A将具有控制系统B数据库erpdev的权限,这显然是系统B不想看到的安全隐患。所以,可以通过oracle的授权用户来控制系统A访问系统B的权限,来排除这种隐患。例如,用oracle授权访问功能控制系统A只能查询数据库erpdev中的test表,如果用户试图向test表中插入数据,或者修改test表中的数据,那么oracle将返回错误信息,用户操作失败。其实这就是用oracle授权访问控制了某个用户访问数据库的权限。

二、Oracle授权访问语句(假设被授权用户名INTEST)

1、  给INTEST授权select表test功能:grant select on test to INTEST

2、  给INTEST授权update表test功能:grant update on test to INTEST

3、  给INTEST授权delete表test功能:grant delete on test to INTEST

三、oracle授权访问实例

假设将给某程序提供访问某数据库指定表的需求,现在用oracle授权访问来实现。

1、先建立用户hdtb2,如下图:角色可以不用设置,并且一定不能给用户设定 “DBA”角色!只给hdtb2保留CONNECT即可,或者新建角色付给hdtb2用户。

注意,我在新建hdtb2这个用户时选择的表空间是SYSDATE或者USERS,而并不是将要给hdtb2授权的表空间。






此时,查看hdtb2用户“已授予的对象权限”时是空的,也就是说并没有授予用户对象权限,如下图






2、在现在还未给hdtb2用户设置oracle授权访问时,用java程序测试一下hdtb2用户访问数据库提示的错误:




这就证明hdtb2虽然连上了数据库,但是却不能访问。

3、用原系统用户在PL/SQL中给hdtb2用户设置oracle授权访问,语句如下:设置hdtb2删除t_prd_order_t_2表中数据的授权(grant delete on t_prd_order_t_2 to hdtb2)






执行完毕后再查看hdtb2用户“已授予的对象权限”时,如下图所示:






这说明用户hdtb2已经具有了删除t_prd_order_t_2表中数据的功能。

4、oracle授权访问设置完毕后,用java程序测试授权是否有效,如下图:




怪事了L怎么还不行呢?delete from t_prd_order_t_2?呵呵,相信看到这条语句就知道问题出在哪里了。继续……




吼吼,执行通过了,delete from hgvs_hdtb.t_prd_order_t_2,“hgvs_hdtb”就是我数据库的用户,并且刚才也是在用“hgvs_hdtb”这个用户登录PL/SQL后给hdtb2用户加的oracle授权,千万别忘了!

再测试一下,将delete换成select看看,执行后,如下图:




哈哈,看来控制的还不错呀。

5、通过以上步骤后,就可以用hdtb2这个用户来删除t_prd_order_t_2中的数据了。



哎,语言表达能力还有待大量提高啊。不知道有没有把我想的明明白白的说出来,呵呵。



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wlq1983/archive/2008/09/14/2874458.aspx

分享到:
评论

相关推荐

    ORACLE透明网关访问mysql

    在本篇文章中,我们将详细探讨如何在Windows Server 2012环境下,利用Oracle 11.2版本的数据库来通过透明网关访问MySQL 5.7数据库。该过程涉及服务器配置、数据库权限设置、ODBC驱动安装配置、网络配置以及Oracle...

    oracle 添加用户 授权问题

    ### Oracle添加用户及授权问题详解 #### 一、Oracle用户管理概述 在Oracle数据库管理系统中,用户管理是一项非常重要的任务。正确地创建用户并授予适当的权限对于确保数据的安全性和完整性至关重要。本文将详细...

    ORACLE单独授权表或视图或存储过程.doc

    ORACLE单独授权是指在ORACLE数据库中,授予某个用户对部分数据表、视图或存储过程的访问权限,而不是授予全数据库的访问权限。本文将详细介绍如何授予用户对部分表、视图或存储过程的权限。 为什么需要单独授权 在...

    oracle跨数据库查询授权

    支持授权非自身表空间的用户权限。 跨数据库查询对方表数据,以及复制粘贴。

    Oracle创建表空间、创建用户、授权、授权对象的访问以及查看权限

    根据提供的文件信息,本文将详细解释Oracle数据库中的关键操作,包括创建表空间、创建用户、授予用户权限等重要步骤,并进一步解析如何实现对特定数据库对象的访问授权以及如何查看用户的权限。 ### 一、创建表空间...

    oracle授权语法

    ### Oracle授权语法详解 在Oracle数据库管理中,权限管理是一项重要的功能,它允许数据库管理员(DBA)控制用户对数据库对象的访问级别。本文将详细解释Oracle中的授权语法,并通过具体的例子来阐述如何进行不同类型...

    Oracle创建用户,并授权DBA权限

    ### Oracle 创建用户并授权 DBA 权限 在 Oracle 数据库管理系统中,用户管理与权限分配是维护数据库安全性和操作性的关键环节。本文将详细解析如何在 Oracle 中创建用户、分级授权以及对 DBA 权限的具体操作方法,...

    Oracle 授权 ORA-00990: 权限缺失或无效

    在本篇文章中,我们将深入探讨这个问题的原因、解决方案以及如何正确地授权和管理Oracle数据库的权限。 1. **错误原因**: - 用户未被授予执行特定操作所需的系统权限,例如UPDATE、DELETE、SELECT或INSERT。 - ...

    Oracle创建表空间、临时表、用户及用户授权

    在Oracle数据库管理中,表空间(Tablespaces)、临时表(Temporary Tables)、用户(Users)以及用户授权(User Authorization)是数据库管理员(DBA)进行数据库架构设计和安全管理的基础操作。以下将详细介绍这些...

    oracle精细访问控制(初级)

    ### Oracle 精细访问控制(Fine-Grained Access Control, FGAC)初级解析 #### 一、Oracle FGAC ...这种机制非常适合需要高度定制化安全策略的应用场景,能够有效防止未经授权的数据访问,并增强系统的整体安全性。

    Oracle用户授权

    在Oracle中,创建用户、表空间以及进行授权是管理数据库的关键步骤。以下是对这些概念的详细解释: 1. **创建用户**: Oracle中的用户是数据库操作的主要实体,通过`CREATE USER`语句来创建。例如: ```sql ...

    ORACLE新建用户表空间及授权DBA

    本文将根据提供的文件信息,深入解析如何在Oracle环境中新建用户表空间,并授予DBA级别的权限,确保数据存储与访问的安全性与高效性。 ### 一、创建表空间 在Oracle中,表空间是数据物理存储的逻辑容器,用于组织...

    oracle创建用户并授权

    在 Oracle 数据库中,创建用户是一项常见的管理任务,用于确保数据库资源的安全访问控制。通过创建不同的用户账户,并为这些账户分配适当的权限,管理员可以实现对数据库操作的精细控制。 ##### 命令格式: ```sql ...

    Oracle如何限制固定IP的访问

    这种做法不仅可以防止未授权访问,还可以有效减少潜在的安全威胁。本文将详细介绍如何通过修改Oracle的相关配置文件来实现对固定IP地址的访问控制。 #### 一、理解关键配置选项 首先,我们需要了解几个重要的配置...

    ORACLE资料ORACLE资料

    审计功能可以帮助监控数据库活动,防止未授权访问。 10. **数据库连接与管理工具**:如SQL*Plus、Oracle SQL Developer等,是管理和操作Oracle数据库的常用工具。了解如何使用它们进行数据库连接、查询、维护等操作...

    Oracle_审计表_sys.aud$_授权给用户Truncate权限.docx

    在Oracle数据库管理系统中,审计功能是一项重要的安全特性,它记录了数据库的所有访问活动,包括但不限于登录、查询、更新等操作。这些审计记录通常存储在系统表`SYS.AUD$`中。为了确保系统的稳定运行和数据的安全性...

    oracle笔记 (导出、导入、创建用户、授权、insert,rownum)

    本文将深入探讨Oracle笔记中的几个关键概念:导出、导入、创建用户、授权以及使用INSERT语句和ROWNUM。 1. 导出(Export)与导入(Import): Oracle提供了数据泵(Data Pump)工具用于数据的导出和导入,它极大地...

    oracle 数据库oracle 数据库

    4. **数据安全**:Oracle提供了多种级别的安全特性,包括用户权限管理、角色权限分配、行级安全性、列级安全性、数据加密等,确保只有授权用户才能访问特定数据。 5. **高可用性与容错**:Oracle数据库支持多种高...

    Oracle 11g 客户端工具 精简版 Oracle Client

    此外,还有身份验证和授权机制,如Oracle Wallet和操作系统认证,保障了用户访问控制的安全性。 10. **兼容性**: Oracle 11g客户端工具可与不同版本的Oracle数据库服务器兼容,包括更高版本的数据库,比如Oracle ...

    oracle创建huike用户与表空间并授权

    在Oracle中,用户是指具有访问数据库权限的实体。每个用户都有自己的安全凭证,即用户名和密码。用户可以拥有对象,如表、视图、存储过程等,并有权访问其他用户或系统级别的资源。 **表空间(Tablespace)**: 表...

Global site tag (gtag.js) - Google Analytics