Oracle Vault是Oracle推出的一套比较完整的运维安全体系框架。在很多运维机构中,Vault是非常好的可选择方案。Oracle Vault的原则
Oracle Vault是Oracle推出的一套比较完整的运维安全体系框架。在很多运维机构中,Vault是非常好的可选择方案。
Oracle Vault的原则是安全职责的拆分保护。从原来数据库管理员sys承担安全职责这个假设,转变为单独安全人员dbvowner和dbvaccount manager为安全配置中心。之后,从行为、领域等多个层面设定了很多安全区,对安全区采用额外的保护策略,将管理员屏蔽住。
注意:Vault的出发点是我们进行选型的一个重要考虑。安全威胁是多种类、多层次的。Oracle Vault是针对运维机构对“自己人”的一种约束设置,形成管理员和安全员相互牵制的结构。
数据库管理员虽然可以进行管理工作,但是却不能访问特定敏感区域。而安全员虽然有安全授权能力,但是没有管理员数据授权(系统权限和数据权限),安全员也不能访问敏感数据。
这个过程中是有一些漏洞的,比如管理员存在修改安全员密码,夺取安全员权限的可能,所以Oracle Vault在安装之后,有一些默认的领域和命令规则,将管理员严格的进行束缚。
此外,管理员有一些日常操作,如使用DB Control、Datapump和Recovery Manager,都有触动安全领域规则的风险。这样的情况Oracle是如何处理呢?本篇从Data Pump操作入手,进行简单讨论。
1、Data Pump与Vault
Oracle Data Pump(数据泵)是Oracle10g以后推出的数据备份管理工具。作为Exp/Imp的进化版,Data Pump对于各种Oracle新特性、功能支持力度是比较好的,在海量数据操作的时候,Data Pump也是有独特的优势。
如果我们仔细研究过Data Pump操作过程,就可以得知,Oracle Data Pump进行数据导入的过程并不是一个整体,而是一系列动作的集合。比如:当进行数据导入Schema模式的时候,如果目标数据库没有这个用户,Data Pump时会创建出这个用户。这个过程其实就是一般的create user xxx语句执行。
所以,进行export和import数据的过程,是一个多种权限(系统权限)综合的过程。这也就是为什么Oracle中导入导出数据库的权限是两个角色权限(Import/Export Full Database)。
那么,,如果管理员(备份操作员)需要进行数据导入导出敏感数据的时候,是要触动到敏感信息的。Oracle Vault环境下我们是怎么配置呢?
2、默认行为配置
当前我们实验选择Oracle 11gR2版本,数据库已经配置Vault组件。对scott数据进行保护,即使sys管理员也是无法访问的。
SQL> show user;
User is "SYS"
SQL> select count(*) from scott.emp;
select count(*) from scott.emp
ORA-01031: 权限不足
创建directory对象,导出数据。
[oracle@SimpleLinux ~]$ cd /dumps/
[oracle@SimpleLinux dumps]$ ls -l
total 0
Oracle中创建directory对象dumps。尝试进行导出。
[oracle@SimpleLinux dumps]$ expdp \"/ as sysdba\" directory=dumps schemas=scott dumpfile=scottvault.dmp
Export: Release 11.2.0.4.0 - Production on Fri Apr 4 15:21:30 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
(篇幅原因,有省略……)
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
ORA-39127: unexpected error from call to export_string :=SYS.DBMS_TRANSFORM_EXIMP.INSTANCE_INFO_EXP('AQ$_MGMT_NOTIFY_QTABLE_S','SYSMAN',1,1,'11.02.00.04.00',newblock)
ORA-01031: insufficient privileges
ORA-06512: at "SYS.DBMS_TRANSFORM_EXIMP", line 197
ORA-06512: at line 1
ORA-06512: at "SYS.DBMS_METADATA", line 9876
ORA-39127: unexpected error from call to export_string :=SYS.DBMS_TRANSFORM_EXIMP.INSTANCE_INFO_EXP('AQ$_MGMT_LOADER_QTABLE_S','SYSMAN',1,1,'11.02.00.04.00',newblock)
ORA-01031: insufficient privileges
ORA-06512: at "SYS.DBMS_TRANSFORM_EXIMP", line 197
ORA-06512: at line 1
ORA-06512: at "SYS.DBMS_METADATA", line 9876
Processing object type SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA
ORA-31693: Table data object "SCOTT"."DEPT" failed to load/unload and is being skipped due to error:
ORA-02354: error in exporting/importing data
ORA-28116: insufficient privileges to do direct path access
ORA-31693: Table data object "SCOTT"."EMP" failed to load/unload and is being skipped due to error:
ORA-02354: error in exporting/importing data
ORA-28116: insufficient privileges to do direct path access
ORA-31693: Table data object "SCOTT"."SALGRADE" failed to load/unload and is being skipped due to error:
ORA-02354: error in exporting/importing data
ORA-28116: insufficient privileges to do direct path access
. . exported "SCOTT"."BONUS" 0 KB 0 rows
Master table "SYS"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for SYS.SYS_EXPORT_SCHEMA_01 is:
/dumps/scottvault.dmp
Job "SYS"."SYS_EXPORT_SCHEMA_01" completed with 5 error(s) at Fri Apr 4 15:22:22 2014 elapsed 0 00:00:41
从报错信息中,我们看到Data Pump本质就是调用一系列的包方法,来将数据导出。Sys用户是有导出数据权限的,但是默认情况如果碰触敏感信息,也是报错失败。
更多详情见请继续阅读下一页的精彩内容:

MySQL和SQLite的主要区别在于设计理念和使用场景:1.MySQL适用于大型应用和企业级解决方案,支持高性能和高并发;2.SQLite适合移动应用和桌面软件,轻量级且易于嵌入。

MySQL中的索引是数据库表中一列或多列的有序结构,用于加速数据检索。1)索引通过减少扫描数据量提升查询速度。2)B-Tree索引利用平衡树结构,适合范围查询和排序。3)创建索引使用CREATEINDEX语句,如CREATEINDEXidx_customer_idONorders(customer_id)。4)复合索引可优化多列查询,如CREATEINDEXidx_customer_orderONorders(customer_id,order_date)。5)使用EXPLAIN分析查询计划,避

在MySQL中使用事务可以确保数据一致性。1)通过STARTTRANSACTION开始事务,执行SQL操作后用COMMIT提交或ROLLBACK回滚。2)使用SAVEPOINT可以设置保存点,允许部分回滚。3)性能优化建议包括缩短事务时间、避免大规模查询和合理使用隔离级别。

选择PostgreSQL而非MySQL的场景包括:1)需要复杂查询和高级SQL功能,2)要求严格的数据完整性和ACID遵从性,3)需要高级空间功能,4)处理大数据集时需要高性能。PostgreSQL在这些方面表现出色,适合需要复杂数据处理和高数据完整性的项目。

MySQL数据库的安全可以通过以下措施实现:1.用户权限管理:通过CREATEUSER和GRANT命令严格控制访问权限。2.加密传输:配置SSL/TLS确保数据传输安全。3.数据库备份和恢复:使用mysqldump或mysqlpump定期备份数据。4.高级安全策略:使用防火墙限制访问,并启用审计日志记录操作。5.性能优化与最佳实践:通过索引和查询优化以及定期维护兼顾安全和性能。

如何有效监控MySQL性能?使用mysqladmin、SHOWGLOBALSTATUS、PerconaMonitoringandManagement(PMM)和MySQLEnterpriseMonitor等工具。1.使用mysqladmin查看连接数。2.用SHOWGLOBALSTATUS查看查询数。3.PMM提供详细性能数据和图形化界面。4.MySQLEnterpriseMonitor提供丰富的监控功能和报警机制。

MySQL和SQLServer的区别在于:1)MySQL是开源的,适用于Web和嵌入式系统,2)SQLServer是微软的商业产品,适用于企业级应用。两者在存储引擎、性能优化和应用场景上有显着差异,选择时需考虑项目规模和未来扩展性。

在需要高可用性、高级安全性和良好集成性的企业级应用场景下,应选择SQLServer而不是MySQL。1)SQLServer提供企业级功能,如高可用性和高级安全性。2)它与微软生态系统如VisualStudio和PowerBI紧密集成。3)SQLServer在性能优化方面表现出色,支持内存优化表和列存储索引。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Dreamweaver CS6
视觉化网页开发工具

WebStorm Mac版
好用的JavaScript开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)