亚马逊AWS官方博客

保护指南:利用 DataSunrise 数据库安全方案监控 Amazon Aurora 数据库活动

Original URL: https://amazonaws-china.com/cn/blogs/database/monitor-amazon-aurora-database-activities-using-datasunrise-database-security/?from=timeline

DataSunrise是一家数据库安全软件企业,专门提供应用范围广泛的安全解决方案,包括活动监控、数据掩蔽(动态与静态掩蔽)、数据库防火墙以及针对各类数据库的敏感数据发现等服务。我们的目标是保护数据库免受内部/外部威胁及安全漏洞的侵害。客户之所以选择DataSunrise Database Security产品,是因为它能够在保护AWS之上各类数据库引擎(包括Amazon Aurora、 Amazon Redshift、 Amazon RDS for MySQL、 Amazon RDS for PostgreSQL、 Amazon RDS for MariaDB、 Amazon RDS for Oracle Database以及 Amazon RDS for Microsoft SQL Server)时提供统一的控制与单用户使用体验。

除了主动数据与数据库安全保障之外,DataSunrise公司还提供多种被动安全功能(例如审计功能)。主动安全以预定义的安全策略为基础,例如防止对敏感数据进行未授权访问、阻止可疑的SQL查询、防止SQL注入攻击以及数据的实时动态掩蔽与脱敏等。DataSunrise产品具有高可用性、故障转移以及自动扩展等多项卓越特性。

在本文中,我们将着力探讨被动安全,即审计部分的内容。我们将介绍DataSunrise如何监控Aurora中的运行内容、监控的实现方式以及使用方法。在后续文章中,我们还将进一步介绍安全保障的其他方面,包括主动安全、数据掩蔽与敏感信息发现等。

DataSunrise审计监控是什么?

DataSunrise能够对SQL查询、数据流以及绑定等进行审计,具体收集的信息则包括SQL查询的详细信息以及执行结果。作为一大突出优势,我们对SELECT查询结果的审计功能是其他数据库主动监控(DAM)产品所不具备的。此外,DataSunrise还能够捕捉用户会议中的数据,包括IP地址、主机名称、何时执行查询、执行了哪些查询、使用了哪些应用程序、是否引发数据库错误以及连接尝试失败等。我们捕捉的信息还包括高权限用户及管理员所应用的设置变更。

收集到的审计数据将被存储在名为audit storage的独立数据库当中。DataSunrise提供多种不同选项以存储审计结果。您可以将其保存在内部内置数据库或者外部数据库当中(例如Amazon Aurora、MySQL、Amazon Redshift或者PostgreSQL数据库),也可以将审计数据发送至第三方SIEM(安全信息与事件管理)系统处。

审计监控的实现方式

DataSunrise将在接入数据库与数据库服务器的各用户(或者应用程序)之间充当代理角色。DataSunrise能够拦截往来流量以进行深度分析与过滤。以此为基础,它会利用指定的数据审计策略对活动和查询进行审计与监控。在启用数据库防火墙并检测到安全策略违规活动之后,DataSunrise会阻止恶意SQL查询并通过SMTP或SNMP向管理员发出通报。这一实时警报功能将帮助用户在持续保障数据库安全的同时,显著简化合规性实现流程。

图一:DataSunrise以代理形式运作起效

DataSunrise上手指南

大家可以将DataSunrise部署在Amazon EC2中的Windows或者Linux实例之上。您可以从AWS Marketplace处下载到开箱即用的DataSunrise Amazon Machine Image(AMI),快速保护Amazon RDS与EC2实例中的数据库。AWS Marketplace上提供的DataSunrise Database and Data Security产品目前适用于Windows与Linux系统平台。

在DataSunrise部署完成之后,您可以为需要保护的数据库配置安全策略,并根据需求创建Data Audit安全规则。安全策略配置并激活完成后,DataSunrise会审计并监控一切通过DataSunrise代理接入数据库的用户及应用程序。

在DataSunrise中创建 Data Audit规则

在DataSunrise产品中,审计规则经由基于对象的过滤器创建而成。DataSunrise能够区分不同数据库对象,并针对目标数据库按特定操作、schema及表进行审计。如此一来,数据库管理员即可根据所需的准确度级别收集完善的审计信息。

要在DataSunrise当中执行审计,我们首先需要在安全策略定义当中创建数据审计规则。

DataSunrise Audit Rules的具体创建步骤如下:

  1. 在DataSunrise中,前往Data Audit。
  2. 选择左窗格中的“Rules”以显示现有Audit Rules列表。
  3. 选择“Rule+”以创建一条新规则,这里请输入必要信息:

图二:创建一条新的Audit Rule

在Audit Rule部分,您可以指定DataSunrise需要处理哪些SQL语句、根据需求设置调度规划,并为首选订阅用户设置通知策略。

在DataSunrise中监控数据审计结果

经过授权的DataSunrise用户可以随时在Events当中查看审计结果。

图三:查看Data Audit事件

DataSunrise可以对收集到的审计信息进行过滤,具体条件包括数据库层级、schema层级或者列层级。您可以按应用程序名称、用户名称、主机名称以及其他多种属性执行过滤。DataSunrise还允许管理员查看特定会话中的所有操作,并生成详细的报告以支持后续管理及合规保障工作。

在Event Details当中,大家可以打开所有已列出事件以查看其中的各项查询信息。您也可以查看由谁发出特定查询、何时发出以及与之对应的查询结果。您可以部分或者全部审计查询结果,借此有效保障业务体系的合规性水平。

图四所示,为DataSunrise中显示的事件详细信息:

图四:事件详细信息

在Session Details中,您可以看到关于特定客户端会话的信息,例如客户端主机、主机名称以及其他会话属性。

图五所示,为DataSunrise中显示的会话详细信息:

图五:会话详细信息

DataSunrise使用syslog进行消息记录。在配置之后,您可以将审计日志发送至SIEM等外部系统。在与SIEM集成之后,DataSunrise的安全分析功能将大大增强,并帮助管理员更深入地分析用户行为。

与Amazon Aurora功能配合使用

除了支持多种安全措施之外,DataSunrise还能够匹配Amazon Aurora中使用的SSL/TLS(安全套接字层/传输层安全)加密协议。SSL/TLS负责生成会话密钥、加密传输数据、检查传输数据的完整性并基于证书进行身份验证。位于客户端与数据库之间的DataSunrise将利用自有密钥替换SSL握手过程中传输的中间密钥,借此解密并分析SSL流量。

Aurora与MySQL还支持网络流量压缩。这项功能有助于在传输大量数据时(例如对表、schema甚至完整数据库进行导入/导出)实现网络负载均衡。DataSunrise也支持此项功能。

企业应用不可能在每次接入数据库时都创建一条新的连接。相反,这些连接将长期保持活动状态,并在应用程序请求访问数据库时为其分配其中一条。这项技术被称为连接池,Amazon Aurora与MySQL都支持连接池技术。DataSunrise同样支持连接池,并能够将已接入用户转移至处于活动状态的连接当中,借此实现以往非常棘手的连接池逻辑优化。

总结

DataSunrise (www.datasunrise.com)目前已经在AWS Marketplace上提供预配置虚拟方案。您可以将DataSunrise作为独立DAM解决方案使用,也可以利用它作为更广泛的数据库安全解决方案,将它与DAM、数据掩蔽、数据发现以及数据库防火墙等现有安全功能匹配使用。DataSunrise还支持多种云数据库(包括Amazon Aurora、Amazon Redshift等)以及其他Amazon RDS数据库(例如MySQL、PostgreSQL、MariaDB、Oracle Database以及微软SQL Server等)。

在本系列的下一篇文章中,我们将介绍DataSunrise中的其他模块,包括DataSunrise Security(数据库防火墙)、Data Masking(数据掩蔽)以及Sensitive Data Discovery(敏感数据发现)。

本篇作者

Radik Chumaren

DataSunrise公司工程技术主管