Focus On Oracle

Installing, Backup & Recovery, Performance Tuning,
Troubleshooting, Upgrading, Patching

Oracle Engineered System


当前位置: 首页 » 技术文章 » Oracle

全面了解Oracle 12c数据安全

Oracle Database 12c 提供多层安全性,包括用于评估风险、防止未授权的数据泄露、检测和报告数据库活动,以及通过数据驱动的安全性在数据库中实施数据访问控制的控制。Oracle Database 12c 与 Oracle Key Vault 和 Oracle Audit Vault and Database Firewall 结合使用,提供了前所未有的控制,可以帮助组织应对现有和新兴的安全性和合规性要求。这张图涵盖了Oracle在安全方面的组件和产品,能够全方位纵深防御。


Oracle Database 12c 安全特性和产品

Oracle Advanced Security

Oracle Advanced Security 是 Oracle Database 企业版的一个选件,提供了两种重要的预防性控制(加密和编辑)从源头保护敏感数据。这两种控制共同构成了 Oracle 深度防御、多层数据库安全解决方案的基础。

透明数据加密 (TDE)

透明数据加密 (TDE) 通过在数据库层执行静止数据加密,阻止可能的攻击者绕过数据库直接从存储读取敏感信息。

数据编辑

数据编辑通过降低应用中未授权的数据暴露的风险,并在敏感数据离开数据库之前对其进行编辑,对 TDE 进行了补充。


Oracle Database Vault

Oracle Database Vault 减少了内部和外部威胁的风险并解决了常见的合规性要求,方法是:
    防止高权限用户 (DBA) 访问敏感的应用数据
    防止使用已泄漏的特权用户帐户窃取敏感数据或者对数据库和应用进行未授权的更改
    在数据库中严格控制用户权限,并控制访问应用、数据和数据库的时间和方式
    为数据库中的所有用户和应用提供权限分析,帮助实现最小权限模型并使数据库和应用更安全

支付卡行业 (PCI)、Sarbanes-Oxley (SOX)、欧盟隐私指令和美国健康保险流通与责任法案 (HIPAA) 都要求强化对敏感信息的内部控制,以防止因敏感信息的泄露或篡改而导致欺诈、身份窃取、金融违规和财务处罚。Oracle Database Vault 通过严格控制数据库中用户的权限以及控制应用、数据和数据库的访问时间和方式,帮助客户符合这些规定。

Oracle Database Vault 经过了众多 Oracle 和合作伙伴企业应用的认证,包括 Oracle E-Business Suite、Oracle PeopleSoft、Oracle Siebel 和 SAP。认证包括针对每个应用的随需随用的安全策略,考虑了它们的安装、运行时和维护需求。安全策略可以下载,也可以通过支持服务请求。


Oracle Data Masking and Subsetting Pack
Oracle Data Masking and Subsetting 通过处理用于测试、开发和其他活动的生产数据副本以及轻松丢弃不必要的数据,帮助数据库用户提高安全性、加速合规性并降低 IT 成本。

使用 Oracle Data Masking and Subsetting 可以从数据库提取应用数据的完整副本或子集,对其进行模糊处理,然后与企业内部和外部的合作伙伴共享。保证了数据库的完整性,确保了应用的连续性。

自动发现敏感数据和关系
应用数据建模自动根据内置的发现模式(如国民身份证号、信用卡号和其他个人身份信息)发现 Oracle Database 表中包含敏感信息的列。它还自动发现数据库中定义的父子关系。

丰富的屏蔽格式库和应用模板
集中、广泛、可自定义的预定义屏蔽模式(如国民身份证号、信用卡号和其他个人身份信息)便于随时可以使用的屏蔽格式。Oracle E-Business Suite 和 Oracle 融合应用产品精选版本的可下载的屏蔽模板进一步简化了定义屏蔽规范的任务。

全面屏蔽转换
全面屏蔽转换满足了不同的屏蔽用例,如根据某个条件屏蔽、针对给定的输入生成一致的屏蔽输出等。

多因素子集
复杂的子集方法有助于根据目标(比如数据库大小百分比、表中行百分比或者区域、时间、部门等条件)生成数据子集。

快速、安全、异构
可以对原始数据的克隆副本执行屏蔽和子集,消除生产系统上的任何开销。也可以在数据库到处期间执行屏蔽和子集,从而无需临时服务器。可以通过使用相关的 Oracle Database Gateway 将数据临时存放在一个 Oracle Database 中,对非 Oracle 数据库执行屏蔽和子集。


Oracle Label Security
Oracle Label Security 提供行级安全性,允许具有不同访问权限的用户查看他们能够查看的数据子集,从而提高了安全性和合规性。
过去 30 年,Oracle 一直是打造能够保护敏感信息的先进数据安全解决方案的行业领军企业。Oracle Label Security (OLS) 是 Oracle 纵深防御方法的一部分,它是业界基于数据分类控制访问的最先进的解决方案。能够基于数据分类控制访问对于实施“需要了解”的原则以及数据整合非常重要。数据整合不仅降低了成本,而且还可以提高数据分析和决策的效率。

访问敏感项目
不同人群根据需要了解的内容不同,可获得对公司研发项目不同的访问权限。Oracle Label Security 区间可以授权合适的人只能查看其有权访问的项目。

分层访问

组织所管理的财务收入数据可以使用 Oracle Label Security 进行分组。各国/地区工作的人员将只能查看所在国/地区的数据。负责一组国家/地区的区域经理可以查看区域内所有国家/地区的数据。全球经理可以查看每个国家/地区的数据。所有数据均存在于相同的数据库表中。无需为每个国家/地区创建单独的表和数据库。从而简化了报告、数据管理和数据安全。

多级敏感数据

OLS 可以将不同敏感级别的数据整合成一个数据库表集。数据可以是公开的、敏感的或是最敏感的(甚至更多级别)。根据用户访问级别(公开、员工、经理、高管)的不同,每个用户只能查看其有权访问的数据。无需保留单独的表来管理相同的数据 — 只是在不同的级别。通过在行级管理数据安全性,从长远来看可以同时简化和提高数据的安全性。


有条件的统一审计

Oracle Database 12c 统一审计功能利用策略和条件在 Oracle 数据库内部有选择地执行有效的审计。新的基于策略的语法简化了数据库中的审计管理,并且能够基于条件加速审计。例如,审计策略可配置为根据特定 IP 地址、程序、时间段或连接类型(如代理身份验证)进行审计。此外,启用审计策略时,还可以轻松地将特定模式排除在审计之外。

引入了新的角色来管理策略和查看审计数据。AUDIT_ADMIN 和 AUDIT_VIEWER 角色为希望指定特定用户管理审计设置和查看审计活动的组织提供了职责分离和灵活性。新架构将现有审计跟踪统一为单一审计跟踪,从而简化了管理,提高了数据库生成的审计数据的安全性。只能使用数据库内置的审计数据管理软件包来管理数据,不能使用 SQL 命令直接更新或删除审计数据。Oracle Database 12c 附带了 3 个配置好的默认策略。Oracle Audit Vault and Database Firewall 12.1.1 与新的 Oracle Database 12c 统一审计集成以实现审计整合。有关 Oracle 数据库审计的更多详细信息,请参阅 Oracle 文档。


传统数据库审计(AUDIT_TRAIL参数)
Oracle 数据库在其标准版和企业版数据库中均提供了强健的审计支持。审计记录包括有关已审计的操作、执行操作的用户以及操作的时间和日期的信息。审计记录可以存储在数据库审计线索中或操作系统上的文件中。标准审计包括有关权限、模式、对象和语句的操作。

Oracle 建议将审计线索写入到操作系统文件中,这是因为这种配置在源数据库系统上造成的开销最小。要启用数据库审计,应将初始化参数 AUDIT_TRAIL 设置为以下任一值:

参数值


含义
DB 启用数据库审计并将所有审计记录指向数据库审计线索 (SYS.AUD$) 中,始终写入到操作系统审计线索的记录除外
DB_EXTENDED 完成 AUDIT_TRAIL=DB 的全部操作并填充 SYS.AUD$ 表的 SQL 绑定和 SQL 文本列
XML 启用数据库审计并将所有审计记录以 XML 格式指向一个操作系统文件
XML_EXTENDED 完成 AUDIT_TRAIL=XML 的全部操作,添加 SQL 绑定和 SQL 文本列
OS(推荐) 启用数据库审计并将所有审计记录指向一个操作系统文件

此外,还应设置以下数据库参数:
    init.ora 参数:AUDIT_FILE_DEST — 指定操作系统审计线索位置的动态参数。Unix/Linux 上的默认位置为 $OH/admin/$ORACLE_SID/adump。Windows 上默认为事件日志。为获得最佳性能,它应当引用磁盘上的一个目录,该目录在本地附加到运行 Oracle 实例的主机上。
    init.ora 参数:AUDIT_SYS_OPERATIONS — 启用对用户 SYS 以及使用 SYSDBA 或 SYSOPER 权限进行连接的用户发出的操作的审计。审计线索数据写入到操作系统审计线索中。该参数应当设为 true。


虚拟专用数据库(VPD)
Oracle Database 12c 虚拟专用数据库(VPD,首先在 Oracle8i 中引入)提供了一个将 PL/SQL 包与应用表关联的接口。PL/SQL 软件包计算自动附加到传入 SQL 语句的谓词或“where”子句,对表中的行和列实施访问限制。根据安全要求的不同,VPD 策略可以很简单,也可以很复杂,但几乎总是使用应用在运行时初始化的 Oracle 定义的应用上下文。可以使用 VPD 实施行和/或列级安全要求,以满足隐私和合规性要求。例如,简单的 VPD 示例可能限制只能在营业时间访问数据,更复杂的 VPD 示例可能会在登录触发器期间读取应用上下文,并对应用表实施行级安全性。


Real Application Security

Oracle Database 12c 引入了下一代 Oracle 虚拟专用数据库 (VPD) Oracle Real Application Security (RAS)。Oracle RAS 引入了业界最先进的技术来支持应用安全要求。
Oracle RAS 提供的声明式模型所实现的安全策略不仅包括受保护的业务对象,还包括有权限操作这些业务对象的主体(用户和角色)。RAS 比传统的 Oracle 虚拟专用数据库技术更安全、可扩展性更高、更经济高效。
Oracle RAS 优点包括:
    最终用户会话转播至数据库
    基于应用用户、角色、权限和各种关系的数据安全性
    审计最终用户活动
    使用声明式安全性简化管理

与现有 Oracle VPD 不同,RAS 提供的声明式接口允许开发人员定义数据安全策略、应用角色和应用用户,应用开发人员无需创建和维护 PL/SQL 存储过程。借助 RAS,在数据库内核中使用 Oracle RAS API 定义数据安全策略。与业务对象关联的权限存储在通过 RAS API 定义和维护的访问控制列表 (ACL) 中。ACL 是 Real Application Security 的重要组成部分,存储分配给主体的权限,并控制可在对象上执行的操作类型(选择、插入、更新和删除)。


Reference

http://www.oracle.com/technetwork/cn/database/security/index.html



关键词:security oracle 

相关文章

基于PDB的Active Data Guard(Oracle 21.7+)
在Oracle数据库中使用REST
OGG from MySQL to Oracle
Oracle数据库容灾之两地三中心实践
低代码开发用Oracle Apex,看这篇就够了
Oracle Database 20c之SQL宏
Java beginner for Oracle DBA
Oracle Database 20c之区块链表
Oracle Database 20c的一些微妙变化
关于Oracle的Sequence,你需要知道的
Oracle数据库优化方面资料
Oracle Database 19c在优化方面有哪些新特性
Top