亚马逊AWS官方博客

利用 DataSunrise Security 保护和审计 Amazon Redshift 中的 PII 数据

DataSunrise ,用他们自己的话说:DataSunrise 是一家数据库安全软件公司,提供广泛的安全解决方案,包括数据屏蔽(动态和静态屏蔽)、活动监控、数据库防火墙和各种数据库的敏感数据发现。目标是保护数据库免受外部和内部威胁和漏洞的侵害。客户通常选择 DataSunrise Database Security 是因为它在保护运行在 AWS 上的不同数据库引擎时可提供统一控制和单一用户体验,包括 Amazon RedshiftAmazon Aurora、所有 Amazon RDS 数据库引擎Amazon DynamoDBAmazon Athena 等等。DataSunrise Security Suite 是一套工具,可以保护和审计 Amazon Redshift 中的 PII 数据。除了主动数据和数据库安全性之外,DataSunrise 还通过数据审计提供被动安全性。主动安全性基于预定义的安全策略,例如,防止未经授权访问敏感数据、阻止可疑的 SQL 查询、防止 SQL 注入攻击或实时动态屏蔽和混淆数据。DataSunrise 具有高可用性、故障转移和自动扩展功能。这篇文章重点介绍了 Amazon Redshift 的主动安全性,尤其是 DataSunrise 对个人身份信息 (PII) 的屏蔽和访问控制功能,您可以使用 DataSunrise 的被动安全性产品(如敏感信息访问审计)来支持这些功能。文章还讨论了 Amazon Redshift 的 DataSunrise 安全性、工作原理以及如何使用。

为什么需要 Amazon Redshift 的主动安全性

Amazon Redshift 是一款大规模并行处理 (MPP)、完全托管的 PB 级数据仓库 (DW) 解决方案,在全球范围内进行了 15,000 多次部署。Amazon Redshift 提供了一种数据库加密机制来保护敏感数据,例如付款信息和健康保险。有关更多信息,请参阅 Amazon Redshift 数据库加密

许多组织会存储敏感数据,这些数据通常分为个人身份信息 (PII) 或敏感个人信息 (SPI)。您可能需要解决方案来管理对此类敏感信息的访问控制,并希望高效且灵活地对其进行管理,最好是使用管理工具。DataSunrise 是一款可以屏蔽数据的集中管理工具。它允许您对针对 Amazon Redshift 数据仓库的所有查询强制实施屏蔽策略,从而满足了 PII 和 SPI 数据访问控制要求。

DataSunrise 屏蔽的作用

DataSunrise 充当应用程序与 Amazon Redshift 后端存储之间的代理层来屏蔽针对 Amazon Redshift 的查询,并支持透明数据流、绑定等,而您的最终用户将会接收经过屏蔽或混淆的数据,从而允许他们执行自己的工作,同时防止 PII 数据意外泄露的风险。

DataSunrise 可通过编写策略以及从预定义的模板中选择策略以便在必要时允许用户绕过屏蔽约束,从而豁免有权访问此信息的用户。

工作原理

DataSunrise 充当连接到数据库和数据库服务器的用户或应用程序之间的代理。DataSunrise 可拦截流量以进行深入分析和过滤。它应用数据屏蔽和访问控制策略针对您的 PII 数据实施主动安全策略。当数据库防火墙启用并检测到违反安全策略时,DataSunrise 会阻止恶意 SQL 查询并通过 SMTP 或 SNMP 通知管理员。借助实时警报,您可以保持持续的数据库安全性并简化合规性。

DataSunrise 充当代理

开始使用 DataSunrise

您可以在 Amazon EC2 中的 Windows 或 Linux 实例上部署 DataSunrise。可从 AWS Marketplace 下载准备就绪的 DataSunrise AMI 来保护您的 Amazon Redshift 集群。DataSunrise Database 和 Data Security 可用于 WindowsLinux 平台。

部署 DataSunrise 之后,您可以为 Amazon Redshift 配置安全策略,并创建数据屏蔽,访问控制安全规则。配置并激活安全策略后,DataSunrise 将会对通过 DataSunrise 代理连接到数据库的用户和应用程序流量实施这些策略。

DataSunrise 客户需要配置 Amazon Redshift 集群安全组入站规则以允许 DataSunrise IP。有关更多信息,请参阅 Amazon Redshift 集群安全组。此外,当 DataSunrise 安全组在同一 AWS VPC 上运行时,您可以将其包含在集群安全组中。用户只能通过连接到 DataSunrise 终端节点而不是 Amazon Redshift 集群终端节点来执行查询。所有数据库用户和组都从 Amazon Redshift 导入到 DataSunrise,以对 Amazon Redshift 对象进行身份验证和授权。

创建动态数据屏蔽规则

屏蔽会混淆部分或整个列值。当列被屏蔽时,列值将替换为伪值。可通过将某些原始字符替换为伪字符或使用某些屏蔽功能来实现。DataSunrise 有许多内置的屏蔽功能,用于屏蔽信用卡号、电子邮件等。屏蔽可保护敏感或个人身份数据,如信用卡号。这与加密或散列不同,后者将复杂的算法应用于标量值以将其转换为另一个值。

您可以在 DataSunrise 控制台中使用基于对象的过滤器来创建动态屏蔽规则。DataSunrise 在应用程序调用期间识别受保护对象,并针对您的 Amazon Redshift 集群中的目标操作、架构或一般对象强制实施这些安全规则。安全管理员可根据对象级别和调用者身份精确启用这些规则。他们可以识别授权的调用者,在必要时允许豁免。

要在 DataSunrise 中执行动态屏蔽,需要在定义此类安全策略的过程中创建数据屏蔽规则。

完成以下步骤以创建这些屏蔽策略:

  1. 在 DataSunrise 控制台中,选择 Masking(屏蔽) > Dynamic Masking Rules(动态屏蔽规则)
  2. 选择 Add Rule(添加规则)。添加所需信息。

    创建动态数据屏蔽规则

创建动态数据屏蔽规则

  1. Masking Settings(屏蔽设置)部分中,单击 Select(选择),然后导航到架构中的表,检查要屏蔽的列。请参见以下检查列页面的屏幕截图:

    待启用动态屏蔽的 Redshift 列

待启用动态屏蔽的 Redshift 列

在确定要保护的列之后,单击“完成”,然后选择屏蔽方法和任何相关设置以允许以业务为导向的屏蔽信息结果。

Add Rule(添加规则)Filter Sessions(筛选会话)中,您可以选择受此规则影响的用户、应用程序、主机等。

创建静态数据屏蔽规则

您可以使用静态屏蔽而非动态数据屏蔽永久屏蔽数据。它将对象永久存储在单独的架构或数据库中。在静态屏蔽期间,DataSunrise 将每个选定的表复制到单独的架构或数据库中。因此,静态屏蔽可能需要额外的存储空间。其中一些表的列包含已屏蔽内容,这些内容存储在磁盘上。此复制架构是功能齐全的架构,您可以在其中执行用户查询。源表保持不变,可以查看未屏蔽的数据。如果原始数据已更改,则需要再次执行静态屏蔽过程。在这种情况下,有必要清除先前屏蔽的数据表中数据。

  1. 从菜单中选择 Masking(屏蔽) > Static Masking(静态屏蔽)
  2. New Static Masking Task(新建静态屏蔽任务)Source and Target Instances(源和目标实例)中,选择源数据库、架构和对应的目标目的地。请参见以下新建静态屏蔽任务页面的屏幕截图:
  1. Select Source Tables to Transfer and Columns to Mask(选择要传输的源表和要屏蔽的列)中,选择要对其应用屏蔽的对象。以下屏幕截图显示了可用表的列表:

DataSunrise 还允许您重新调度重复的静态掩码作业,以便根据源或生产数据刷新屏蔽记录。

DataSunrise 下的静态数据屏蔽适用于 Amazon Redshift 本地表。除了本地表之外,Amazon Redshift 还允许查询 Amazon S3 中的外部表;但 DataSunrise 不支持对通过外部表在 Amazon Redshift 中访问并存储在 Amazon S3 中的数据进行静态屏蔽。有关更多信息,请参阅使用 Amazon Redshift Spectrum 查询外部数据

创建安全/访问控制规则

虽然数据屏蔽在许多情况下允许您的 Amazon Redshift 用户进行适当的访问,但您可能需要进一步实施访问控制,以过滤掉任何可能违反安全策略的操作。DataSunrise 可以从 Amazon Redshift 导入数据库用户和组的元数据,DataSunrise 管理员可以用它来配置安全配置文件。如果您已在现有 Redshift 数据库中定义了一组用户,则无需为 DataSunrise 另外重新创建用户。DataSunrise 仅使用此用户列表来配置规则。默认情况下,DataSunrise 不会修改任何与数据库用户身份验证过程相关的工作。

  1. 在 DataSunrise 控制台中,从菜单中选择 Security(安全) > Rules(规则)。以下屏幕截图所示为安全规则页面:
  2. 选择 Add Rule(添加规则)。以下屏幕截图显示了可输入以编写此新规则的详细信息:

DataSunrise 还允许您编写规则以限制或允许某些用户、应用程序、主机等对 Amazon Redshift 集群中的特定对象或区域执行您认为需要禁止的活动。

以下屏幕截图显示了过滤会话页面:

DataSunrise 允许您为特定对象、查询组、查询类型和 SQL 注入活动创建规则,并在发生授权错误时触发操作。

静态屏蔽不会直接影响性能,但如果客户使用 DataSunrise 自定义功能,则可能会影响性能,因为自定义功能会在 DataSunrise 服务器上执行。

使用 DataSunrise 审计和合规性策略

在控制台中,选择 Compliance(合规性) > Add Compliance(添加合规性)

合规性协调器页面中,您可以根据合规性标准启动对 Amazon Redshift 集群的扫描以识别所有 PII 数据或一般敏感信息。DataSunrise 与针对 HIPAA、GDPR 和其他合规性标准的一起做内部扫描,但您可以创建或修改其中任何一个库,从而满足安全策略规定的任何特殊要求。以下屏幕截图显示了添加合规性页面:

完成扫描后,DataSunrise 会指导您完成为 Amazon Redshift 集群中的敏感信息编写规则的过程。

您还可以手动创建审计规则。以下屏幕截图显示了新建审计规则页面:

您可以为任何限制设置审计规则,以确保仅在必要时收集事务跟踪。您可以将对象设定从整个数据库开始,一直定位到 Amazon Redshift 集群中的单个列。请参见以下屏幕截图:

小结

除了由 Amazon Redshift 集群提供的内置加密功能之外,DataSunrise 的屏蔽功能还允许对敏感列的访问控制进行描述性规范。其代理支持更细粒度的访问控制、审计和屏蔽功能,以更好地监控、保护和遵守监管标准,从而满足不断增长的数据保护需求。DataSunrise 与 Amazon Redshift 的集成通过简化和自动化安全规则及其应用程序来解决这些问题。随时确保您的数据安全无虞!

要开始使用 DataSunrise with Amazon Redshift,请访问 AWS Marketplace 中的 DataSunrise

本博文中的内容和意见属于第三方作者,AWS 不对本博文的内容或准确性负责。

 


关于作者


Saunak Chandra 是 AWS Redshift 的高级合作伙伴解决方案架构师
Saunak 喜欢在技术领域以及日常工作中尝试新产品。他喜欢探索太平洋西北部的自然风光。他最喜欢在周末的早上短途徒步旅行或在小路上骑自行车。当他不用陪孩子时,他还喜欢做瑜伽。

 

 

 

 

Radik Chumaren 是 DataSunrise 的工程主管。Radik 专门从事异构数据库环境,致力于在云中构建数据库安全软件。他喜欢读书和踢足球。