oracle database vault(数据库保险库)

本文涉及的产品
访问控制,不限时长
简介: 转载:http://www.linuxidc.com/Linux/2011-12/48689p2.htm 本篇包含如下内容: ·         什么是Oracle Database Vault? ·         Oracle Database Va...

转载:http://www.linuxidc.com/Linux/2011-12/48689p2.htm

本篇包含如下内容:

·         什么是Oracle Database Vault?

·         Oracle Database Vault组成部分

·         Oracle Database Vault遵循哪些规范

·         Database Vault应对哪些内部威胁

·         Oracle Database Vault允许制定灵活的安全策略

·         Oracle Database Vault如何应对数据库联合

1.1  什么是Oracle Database Vault?

Oracle Database Vault能够限制任何用户访问数据库中的特定区域,包括拥有管理(administrative)权限在内的用户,例如,你可以限制管理员访问员工薪水、客户医疗记录、或者其他敏感信息。

这样你就可以针对你的敏感数据以多种方式来应用细粒度的访问控制,它加固Oracle数据库实例,同时加强了分离传统高权限用户职责的这个业界最佳实践。更重要的是,它使你的数据免遭特权用户损坏,同时又允许他们维护Oracle数据库。Oracle Database Vault是你的企业不可分割的一部分。

通过Oracle Database Vault,你可以解决现在仍然是最困难的安全问题:保护数据免遭内部威胁,满足通常的合规要求,加强职责隔离。

你可以配置Oracle Database Vault去管理独立的Oracle数据库实例的安全。你可以安装Oracle Database Vault到一个独立的Oracle数据库设备上、多个Oracle home下、以及Oracle RAC环境中。

更多关于Oracle Database VaultFAQ请访问如下链接:

http://www.oracle.com/technology/deploy/security/database-security/database-vault/dbv_faq.html

更多OTN上关于Oracle Database Vault的信息请访问如下链接:

http://www.oracle.com/technology/deploy/security/database-security/database-vault/index.html

1.2  Oracle Database Vault组成部分

Oracle Database Vault包含如下部分:

·         Oracle Database Vault 访问控制组件

·         Oracle Database Vault 管理员组件(DVA)

·         Oracle Database Vault配置助手(DVCA)

·         Oracle Database Vault DVSYS和 DVF Schemas

·         Oracle Database Vault PL/SQL接口和开发包

·         Oracle Database Vault和Oracle Label Security PL/SQL APIs

·         Oracle Database Vault 监控和报告工具

1.2.1   Oracle Database Vault访问控制组件

Oracle Database Vault使你能够创建如下组件来保护你的数据库实例的安全:

·         域:域是需要被保护的数据库schemal、对象、角色的一个功能上的集合。例如:你可以将和账户、销售、或者人力资源相关的数据库schemal、对象、角色组成一个域。当你将这些组成一个域后,你可以使用域来控制赋给特定账户或者角色的系统权限的使用。这样你就可以给任何想使用这些数据库schemal、对象、角色的用户提供细粒度的访问控制。Chapter 4, "Configuring Realms" 详细讨论了域。.

·         命令规则:命令规则是一个特殊的规则,通过这个规则,你可以控制用户如何执行他们能够执行的几乎所有的SQL语句,包括SELECT, ALTER SYSTEM, database definition language (DDL), data manipulation language (DML)语句.命令规则必须和规则集一起决定某个语句是否允许执行。Chapter 6, "Configuring Command Rules" 详细讨论了规则集.

·         因素:因素是一个命名变量或者属性,例如用户位置、数据库IP地址、会话用户,这些因素是Oracle Database Vault能够识别和保护的。你可以针对用户活动使用这些因素,例如授权数据库账户链接到数据库,或者创建过滤逻辑条件来限制数据的可见性和可管理性。每个因素可以包含一个或者多个标识,标识是因素的具体的值。一个因素可以包含多个标识,这取决于因素的检索方法或者它的映射逻辑。Chapter 7, "Configuring Factors" 详细讨论了因素.

·         规则集:规则集是一个或者多个规则的集合,你可以将规则集和一个域的授权、命令规则、因素指派、或者安全应用角色关联起来。规则集基于其中的每个规则的计算值以及规则的计算方式(所有为真或者任意为真)。规则集中的规则是一个结果为“true”或“false”的PL/SQL表达式。Chapter 5, "Configuring Rule Sets"详细讨论了规则集。

·         安全应用角色:一个安全应用角色是一个特殊的Oracle数据库角色,它可以基于Oracle database vault规则集的计算结果激活。Chapter 8, "Configuring Secure Application Roles for Oracle Database Vault"详细讨论了安全应用角色。

为了加强这些组件的功能,Oracle Database vault提供了一系列的PL/SQL接口和包。"Oracle Database Vault PL/SQL Interfaces and Packages" 提供了一个概括的介绍.

通常情况下,你要做的第一步是创建一个包含你想保护的schema或者数据库对象的域,然后你就可以通过创建规则、命令规则、因素、标识、规则集、安全应用角色来保护你的域。除此以外,你可以运行报告工具来报告这些组件监控和保护的活动。Chapter 3, "Getting Started with Oracle Database Vault"提供了一个简单的指南,可以使你熟悉Oracle Database Vault的功能,Chapter 16, "Oracle Database Vault Reports"提供了更多关于如何运行报告来检查配置和其它Oracle Database Vault 完成的活动。

1.2.2   Oracle Database Vault管理员(DVA)

Oracle Database Vault 管理员是一个基于Oracle Database VaultPL/SQL API构建的Java程序。这个程序可以让不熟悉PL/SQL接口的安全管理者通过友好的用户界面来配置访问控制策略。Oracle Database Vault管理员程序提供了众多的安全相关的报告,这些报告可以帮助了解基准的安全配置。这些报告同时也有助于指出与基准配置相比,当前配置有哪些变化。

Chapter 4  Chapter 9解释了如何通过Oracle database Vault管理员程序来配置访问策略,以及如何将Oracle Database Vault与其它Oracle产品集成起来Chapter 16, "Oracle Database Vault Reports" 解释了Oracle Database Vault报告.

1.2.3   Oracle Database Vault 配置助手 (DVCA)

为了执行维护任务,可以使用命令行工具Oracle Database Vault配置助手(DVCA).更多信息请参考Appendix C, "Postinstallation Oracle Database Vault Procedures".

1.2.4   Oracle Database Vault DVSYS and DVF Schemas

Oracle Database Vault 提供了DVSYS这个schema来存储所有需要Oracle Database Vault保护的数据库对象。DVSYS schema包含角色、视图、账户、函数、以及其它Oracle Database Vault使用的数据库对象。DVF schema包含一些公共函数,这些函数用于从Oracle Database Vault访问控制配置中读取因素值的集合。

Chapter 10, "Oracle Database Vault Objects" 详细描述了这两个schema.

1.2.5   Oracle Database Vault PL/SQL 接口和包

Oracle Database Vault提供了一个PL/SQL接口和包,让安全管理员或者应用程序开发者按需配置访问控制策略。PL/SQL存储过程和函数使得普通的数据库账户能够在一个数据库会话上下文中在访问控制策略边界里进行操作。

参考Chapter 14, "Using the Oracle Database Vault PL/SQL Interfaces" and Chapter 11, "Using the DVSYS.DBMS_MACADM Package"获取更多信息.

1.2.6   Oracle Database Vault 和Oracle Label Security PL/SQL APIs

Oracle Database Vault提供了能够和Oracle Label Security集成的访问控制能力。Oracle Label Security是和Oracle Enterprise Manager Database Control集成的,Oracle Enterprise Manager Database Control能够让安全管理员定义应用到数据库对象的标签安全策略。Oracle Label Security同样提供了一组可以供数据库应用程序开发者用来提供标签安全策略的PL/SQL API

参考 "Integrating Oracle Database Vault with Oracle Label Security" 获取更多关于Oracle Database VaultOracle Label Security如何配合的信息参考 Oracle Label Security Administrator's Guide 获取更多关于Oracle Policy Manager的信息.

1.2.7   Oracle Database Vault 报告和监控工具

你可以根据Oracle Database Vault监控的不同的活动来生成报告,你可以监控策略的改变、异常的安全尝试、数据库配置和结构的变化。

参考 Chapter 16, "Oracle Database Vault Reports" 获取更多关于你可以生成的报告的信息Chapter 15, "Monitoring Oracle Database Vault" 解释了如何监控Oracle Database Vault.

1.3  Oracle Database Vault遵循哪些规范

对规章制度的顺从的一个最大的好处是安全意识。历史上,关于信息技术部门的关注重点在可获得性和性能上面,而对遵守规章制度的关注要求每个人退后一步,然后从安全的角度看看他们的IT基础设施、数据库、应用程序。通常的问题包括:

·         谁能够访问这些信息?

·         敏感信息存储在哪里?

法律法规如Sarbanes-Oxley Act, Health Insurance Portability and Accountability Act (HIPAA), International Convergence of Capital Measurement and Capital Standards: a Revised Framework (Basel II), Japan Privacy Law, Payment Card Industry Data Security Standard (PCI DSS), and the European Union Directive on Privacy and Electronic Communications都含有一些常见的主题,例如内部控制、职责分离,以及访问控制。

然而,对于像Sarbanes-Oxley and HIPAA这些法规来说,最大的挑战是程序上的,剩余的部分可能需要技术投资。法律规章中一个常见的安全需求是严厉的内部控制。Oracle Database Vault能够帮助组织达到要求的程度随不同的法律规章而变化。通常情况下,Oracle Database Vault域、职责分离、命令集、因素总体上有助于减少全世界的法律规章规定的安全威胁。

Table 1-1列出了法律规章给出的潜在的安全威胁

Table 1-1法律规章给出的潜在的安全威胁

Regulation

Potential Security Threat

Sarbanes-Oxley Section 302

未经授权修改数据

Sarbanes-Oxley Section 404

修改数据,未经授权访问

Sarbanes-Oxley Section 409

拒绝服务,未经授权访问

Gramm-Leach-Bliley

未经授权访问修改,查看

Health Insurance Portability and Accountability Act (HIPAA) 164.306

未经授权访问

HIPAA 164.312

未经授权访问

Basel II – Internal Risk Management

未经授权访问

CFR Part 11

未经授权访问

Japan Privacy Law

未经授权访问

EU Directive on Privacy and Electronic Communications

未经授权访问

Payment Card Industry Data Security Standard (PCI DSS)

未经授权修改数据

 

1.4  Database Vault应对哪些内部威胁

多年来,蠕虫、病毒,和外部入侵者(黑客)被认为是计算机系统最大的威胁。不幸的是,经常被忽视的是可信用户以及特权用户可能盗窃或者修改数据。

Oracle Database Vault使用域、因素、命令规则来应对内部威胁。这些手段合起来提供强大的安全工具来帮助保护对数据库、应用程序、敏感数据的访问。你可以结合规则和因素来控制在什么样的条件下数据库命令能够被执行,控制被域保护的数据的访问。例如,你可以基于IP地址、时间日期、特定的应用程序来创建规则和因素来控制对数据的访问。这样可以限制只能由满足条件的连接才能够访问数据,以此来防止未经授权访问应用数据和为经授权的应用访问数据库。

Oracle Database Vault提供一些内置的因素,你可以将其与规则结合来控制数据库访问、域保护应用、以及数据库内部的命令。

你可以将规则以及因素和几十个数据库内部命令关联起来,提供更强的数据库内部控制。你可以定制这些手段来满足你的操作策略。例如,你可以定义一个规则来限制特定IP地址特定主机名称运行ALTER SYSTEM语句。

1.5  Oracle Database Vault允许制定灵活的安全策略

Oracle Database Vault可以帮助你为你的数据库设计灵活的安全策略。例如,任何具有DBA角色的数据库用户,如SYSTEM,能够修改数据库的基本参数。加入一个有系统特权的菜鸟管理员决定启动新的redo log文件,但是他并没有意识到在特定的时间进行那样操作会导致数据库出问题。通过Oracle Database Vault,你可以创建一个限制使用ALTER SYSTEM SWITCH LOGFILE命令规则来防止这样的用户做这样的操作。

除此以外,你也可以将规则绑定到命令规则上,以此来多方面的限制活动,例如,按照如下方式限制语句的执行:

·         按照时间(例如,只能在周五下午4~5点执行)

·         只能本地访问即不允许远程访问

·         按照IP地址(例如,只允许每个特定范围的IP地址访问)

通过这种方式,你可以很小心的控制和保护你的系统。你可以按照你的需要激活或者禁止命令规则,你也可以通过Oracle Database Vault管理员工具非常容易的集中维护命令规则。

1.6  Oracle Database Vault如何应对数据库联合

Oracle的客户拥有数百甚至数千分布在企业或者全球的数据库。因此,数据库合并在未来的几年将持续作为一个成本节约策略。分布式的数据库架构提供的物理安全在合并环境中也必须具备。Oracle Database Vault提出了关于数据库合并的主要关注点。

Figure 1-1 表明了Oracle Database Vault 如何应对这些关注点:

·         管理特权账户访问应用数据这种情况下,Oracle Database Vault 防止DBA访问由FIN域保护的schema。尽管DBA是最强大和可信的用户,但DBA并不需要访问数据库中的应用数据。

·         应用数据访问的职责分离这种情况下,由Oracle Database Vault 创建的,FIN域拥有者,能够访问FIN域的schema.

Figure 1-1 Oracle Database Vault 安全


Description of "Figure 1-1 Oracle Database Vault Security"

数据库合并导致很多强大的用户账号驻留在单个数据库中。这意味着除了整个数据库的DBA,各个应用schema的拥有者也具有强大的特权。废除一些特权将反过来影响已有的应用。通过Oracle Database Vault域,你可以通过可信路径、防止未经授权的用户使用特权查看数据两个手段来加强对应用数据的访问。例如,可以防止拥有SELECT ANY TABLE特权的DBA使用这个特权来查看应用数据。

相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
云安全基础课 - 访问控制概述
课程大纲 课程目标和内容介绍视频时长 访问控制概述视频时长 身份标识和认证技术视频时长 授权机制视频时长 访问控制的常见攻击视频时长
相关文章
|
3天前
|
存储 自然语言处理 Oracle
Oracle数据库字符集概述及修改方式
【8月更文挑战第15天】Oracle 数据库字符集定义了数据的编码方案,决定可存储的字符类型及其表示方式。主要作用包括数据存储、检索及跨系统传输时的正确表示。常见字符集如 AL32UTF8 支持多语言,而 WE8MSWIN1252 主用于西欧语言。修改字符集风险高,可能导致数据问题,需事先备份并评估兼容性。可通过 ALTER DATABASE 语句直接修改或采用导出-导入数据的方式进行。完成后应验证数据完整性。此操作复杂,须谨慎处理。
|
10天前
|
SQL Oracle 关系型数据库
"揭秘!一键解锁Oracle日志清理魔法,让海量归档日志无处遁形,守护数据库健康,告别磁盘空间告急噩梦!"
【8月更文挑战第9天】随着Oracle数据库在企业应用中的普及,归档日志管理对保持数据库健康至关重要。归档日志记录所有更改,对数据恢复极为重要,但也可能迅速占用大量磁盘空间影响性能。利用Oracle提供的RMAN工具,可通过编写Shell脚本来自动清理归档日志。脚本包括设置环境变量、连接数据库、检查和删除指定时间前的日志,并记录执行情况。通过Cron作业定时运行脚本,可有效管理日志文件,确保数据库稳定运行。
35 7
|
7天前
|
Oracle 关系型数据库 MySQL
Mysql和Oracle数据库死锁查看以及解决
【8月更文挑战第11天】本文介绍了解决MySQL与Oracle数据库死锁的方法。MySQL可通过`SHOW ENGINE INNODB STATUS`查看死锁详情,并自动回滚一个事务解除死锁;也可手动KILL事务。Oracle则通过查询V$LOCK与V$SESSION视图定位死锁,并用`ALTER SYSTEM KILL SESSION`命令终止相关会话。预防措施包括遵循ACID原则、优化索引及拆分大型事务。
|
10天前
|
监控 Oracle 关系型数据库
"深度剖析:Oracle SGA大小调整策略——从组件解析到动态优化,打造高效数据库性能"
【8月更文挑战第9天】在Oracle数据库性能优化中,系统全局区(SGA)的大小调整至关重要。SGA作为一组共享内存区域,直接影响数据库处理能力和响应速度。本文通过问答形式介绍SGA调整策略:包括SGA的组成(如数据缓冲区、共享池等),如何根据负载与物理内存确定初始大小,手动调整SGA的方法(如使用`ALTER SYSTEM`命令),以及利用自动内存管理(AMM)特性实现智能调整。调整过程中需注意监控与测试,确保稳定性和性能。
21 2
|
19天前
|
SQL 关系型数据库 MySQL
云服务器 ECS产品使用问题之出现“1044 - Access denied for user ‘root‘@‘%‘ to database ‘数据库名称‘”这样的错误,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
25天前
|
Oracle 安全 关系型数据库
|
19天前
|
开发框架 Oracle 关系型数据库
ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理
ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理
|
24天前
|
Oracle 关系型数据库 数据库
|
25天前
|
存储 Oracle 关系型数据库
|
24天前
|
SQL Oracle 关系型数据库
关系型数据库Oracle设置 RMAN 环境:
【7月更文挑战第25天】
41 2

热门文章

最新文章

推荐镜像

更多