适用于 Microsoft Purview 的 Amazon RDS 多云扫描连接器 (公共预览版)

借助适用于 Microsoft Purview 的多云扫描连接器,除了 Azure 存储服务之外,还可以跨云提供商(包括 Amazon Web Services)浏览组织数据。

重要

此功能目前处于预览阶段。 Microsoft Azure 预览版补充使用条款包括适用于 Beta 版、预览版或其他尚未正式发布的 Azure 功能的其他法律条款。

本文介绍如何使用 Microsoft Purview 扫描当前存储在 Amazon RDS 中的结构化数据,包括 Microsoft SQL 和 PostgreSQL 数据库,并发现数据中存在哪些类型的敏感信息。 你还将了解如何识别当前存储数据的 Amazon RDS 数据库,以便于信息保护和数据符合性。

对于此服务,请使用 Microsoft Purview 为 Microsoft 帐户提供对 AWS 的安全访问,用于 Microsoft Purview 的多云扫描连接器将在其中运行。 适用于 Microsoft Purview 的多云扫描连接器使用此访问 Amazon RDS 数据库来读取数据,然后将扫描结果(仅包括元数据和分类)报告回 Azure。 使用 Microsoft Purview 分类和标记报告分析和查看数据扫描结果。

重要

Microsoft Purview 的多云扫描连接器是 Microsoft Purview 的独立加载项。 适用于 Microsoft Purview 的多云扫描连接器的条款和条件包含在你获取 Microsoft Azure 服务的协议中。 有关详细信息,请参阅 中的 https://azure.microsoft.com/support/legal/Microsoft Azure 法律信息。

Amazon RDS 的 Microsoft Purview 范围

  • 支持的数据库引擎:Amazon RDS 结构化数据存储支持多个数据库引擎。 Microsoft Purview 支持使用/基于 Microsoft SQL 和 PostgreSQL 的 Amazon RDS。

  • 支持的最大列数:不支持扫描列数超过 300 的 RDS 表。

  • 公共访问支持:Microsoft Purview 仅支持在 AWS 中使用专有专用链接进行扫描,不包括公共访问扫描。

  • 支持的区域:Microsoft Purview 仅支持位于以下 AWS 区域的 Amazon RDS 数据库:

    • 美国东部 (俄亥俄州)
    • 美国东 (弗吉尼亚州)
    • 美国西 (加利福尼亚州)
    • 美国西 (俄勒冈州)
    • 欧洲 (法兰克福)
    • 亚太 (东京)
    • 亚太 (新加坡)
    • 亚太 (悉尼)
    • 欧洲 (爱尔兰)
    • 欧洲 (伦敦)
    • 欧洲 (巴黎)
  • IP 地址要求:RDS 数据库必须具有静态 IP 地址。 静态 IP 地址用于配置 AWS PrivateLink,如本文所述。

  • 已知问题:目前不支持以下功能:

    • 测试连接 ”按钮。 扫描状态消息将指示与连接设置相关的任何错误。
    • 选择要扫描的数据库中的特定表。
    • 数据世系

有关更多信息,请参阅:

先决条件

在将 Amazon RDS 数据库添加为 Microsoft Purview 数据源并扫描 RDS 数据之前,请确保已执行以下先决条件。

  • 你需要是 Microsoft Purview 数据源管理员。
  • 你需要一个 Microsoft Purview 帐户。 创建 Microsoft Purview 帐户实例(如果还没有)。
  • 需要包含数据的 Amazon RDS PostgreSQL 或 Microsoft SQL 数据库。

配置 AWS 以允许 Microsoft Purview 连接到 RDS 专有网络

仅当数据库托管在虚拟私有云 (VPC) 时,Microsoft Purview 才支持扫描,而 RDS 数据库只能从同一个VPC内部访问。

适用于 Microsoft Purview 服务的 Azure 多云扫描连接器在 AWS 中单独的 Microsoft 帐户中运行。 若要扫描 RDS 数据库,Microsoft AWS 帐户需要能够访问您的专有网络网络中的 RDS 数据库。 若要允许此访问,你需要在客户帐户中的 RDS 专有网络 (之间配置 AWS PrivateLink ,) 到用于 Microsoft Purview 的多云扫描连接器在 Microsoft 帐户) 中运行 (。

下图显示了客户帐户和 Microsoft 帐户中的组件。 黄色突出显示了需要创建的组件,以便在帐户中启用 RDS VPC 与 MICROSOFT 帐户中运行 Microsoft Purview 的多云扫描连接器的专有网络。

用于 Microsoft Purview 服务的多云扫描连接器在一个专有网络体系结构中的示意图。

重要

为客户的专用网络创建的任何 AWS 资源都将在客户的 AWS 帐单上产生额外费用。

以下过程介绍如何使用 AWS CloudFormation 模板配置 AWS PrivateLink,使 Microsoft Purview 能够连接到 RDS 专有网络。 此过程在 AWS 中执行,适用于 AWS 管理员。

此 CloudFormation 模板可从 Azure GitHub 存储库下载,可帮助你创建目标组、负载均衡器和终结点服务。

提示

也可以手动执行此过程。 有关详细信息,请参阅 手动配置 AWS PrivateLink (高级)

若要使用 CloudFormation 模板准备 RDS 数据库,请执行以下操作

  1. 从 Azure GitHub 存储库下载此过程所需的 CloudFormation RDSPrivateLink_CloudFormation.yaml 模板:

    1. 链接的 GitHub 页面右侧,选择“ 下载 ”以下载 zip 文件。

    2. 将 .zip 文件解压缩到本地位置,以便可以访问 RDSPrivateLink_CloudFormation.yaml 文件。

  2. 在 AWS 门户中,导航到 CloudFormation 服务。 在页面右上角,选择“使用新资源创建堆栈>” (标准) 。

  3. “先决条件 - 准备模板 ”页上,选择“ 模板已准备就绪”。

  4. “指定模板 ”部分中,选择“ 上传模板文件”。 选择“ 选择文件”,导航到之前下载 的 RDSPrivateLink_CloudFormation.yaml 文件,然后选择“ 下一步 ”继续。

  5. “堆栈名称 ”部分中,输入堆栈的名称。 此名称将与自动添加的后缀一起使用,用于进程稍后创建的资源名称。 因此:

    • 请确保为堆栈使用有意义的名称。
    • 确保堆栈名称不超过 19 个字符。
  6. “参数” 区域中,使用 AWS 中 RDS 数据库页提供的数据输入以下值:

    名称 说明
    终结点 & 端口 输入 RDS 终结点 URL 和端口的已解析 IP 地址。 例如:192.168.1.1:5432

    - 如果配置了 RDS 代理,请使用相关数据库的代理的读/写终结点的 IP 地址。 建议在使用 Microsoft Purview 时使用 RDS 代理,因为 IP 地址是静态的。

    - 如果同一个 VPC 后面有多个终结点,请输入最多 10 个逗号分隔的终结点。 在这种情况下,将创建一个负载均衡器到该专有网络,从而允许从 AWS 中适用于 Microsoft Purview 的 Amazon RDS 多云扫描连接器连接到该专有网络中的所有 RDS 终结点。
    网络 输入你的专有网络 ID
    VPC IPv4 CIDR 输入你的VPC 的 CIDR 值。 可以通过选择 RDS 数据库页上的“专有网络”链接来查找此值。 例如:192.168.0.0/16
    子网 选择与你的专有网络网络关联的所有子网。
    安全性 选择与 RDS 数据库关联的专有网络安全组。

    完成后,选择“ 下一步 ”以继续。

  7. 对于此过程, “配置堆栈”选项 上的设置是可选的。

    根据需要为环境定义设置。 有关详细信息,请选择 “了解详细信息 ”链接以访问 AWS 文档。 完成后,选择“ 下一步 ”以继续。

  8. 在“审阅”页上,检查,以确保所选值适用于你的环境。 进行所需的任何更改,然后在完成后选择“ 创建堆栈 ”。

  9. 监视要创建的资源。 完成后,此过程的相关数据将显示在以下选项卡上:

    • 事件:显示 CloudFormation 模板执行的事件/活动

    • 资源:显示新创建的目标组、负载均衡器和终结点服务

    • 输出:显示 RDS 服务器的 ServiceName 值以及 IP 地址和端口

      如果配置了多个 RDS 服务器,则会显示不同的端口。 在这种情况下,在 将 RDS 数据库注册 为 Microsoft Purview 数据源时,请使用此处所示的端口,而不是实际的 RDS 服务器端口。

  10. 在“ 输出 ”选项卡中,将 ServiceName 密钥值复制到剪贴板。

    RDS 数据库注册为 Microsoft Purview 数据源时,将使用 Microsoft Purview 治理门户中 ServiceName 密钥的值。 在“通过终结点服务连接到专用网络”字段中输入 ServiceName 密钥。

注册 Amazon RDS 数据源

若要将 Amazon RDS 服务器添加为 Microsoft Purview 数据源,请执行以下操作

  1. 在 Microsoft Purview 中,导航到 “数据映射 ”页,然后选择“ 注册注册”图标

  2. “源 ”页上,选择“ 注册”。 在右侧显示的“ 注册源 ”页上,选择“ 数据库 ”选项卡,然后选择 Amazon RDS (PostgreSQL) Amazon RDS (SQL)

    用于选择 Amazon RDS (PostgreSQL) 的“注册源”页的屏幕截图。

  3. 输入源的详细信息:

    字段 说明
    Name 为源输入有意义的名称,例如 AmazonPostgreSql-Ups
    服务器名称 使用以下语法输入 RDS 数据库的名称: <instance identifier>.<xxxxxxxxxxxx>.<region>.rds.amazonaws.com

    建议从 Amazon RDS 门户复制此 URL,并确保 URL 包含 AWS 区域。
    端口 输入用于连接到 RDS 数据库的端口:

    - PostgreSQL: 5432
    - Microsoft SQL: 1433

    如果已 使用 CloudFormation 模板配置 AWS PrivateLink ,并且在同一个专有网络中有多个 RDS 服务器,请使用“CloudFormation 输出 ”选项卡中列出的端口,而不是读取 RDS 服务器端口。
    通过终结点服务连接到专用网络 输入在上一过程结束时获取的 ServiceName 密钥值。

    如果已手动准备 RDS 数据库,请使用在步骤 5:创建终结点服务结束时获取的服务名称值。
    收集 (可选) 选择要向其添加数据源的集合。 有关详细信息,请参阅 在 Microsoft Purview (Preview) 中管理数据源
  4. 准备好继续时,选择“ 注册 ”。

RDS 数据源将显示在源映射或列表中。 例如:

“源”页上 Amazon RDS 数据源的屏幕截图。

为 RDS 扫描创建 Microsoft Purview 凭据

Amazon RDS 数据源支持的凭据仅包括用户名/密码身份验证,密码存储在 Azure KeyVault 机密中。

为 RDS 凭据创建机密,以便在 Microsoft Purview 中使用

  1. 将密码作为机密添加到 Azure KeyVault。 有关详细信息,请参阅使用 Azure 门户 从密钥保管库设置和检索机密

  2. 将访问策略添加到具有 “获取 ”和 “列表” 权限的 KeyVault。 例如:

    Microsoft Purview 中 RDS 的访问策略的屏幕截图。

    定义策略的主体时,请选择 Microsoft Purview 帐户。 例如:

    选择 Microsoft Purview 帐户作为主体的屏幕截图。

    选择“ 保存” 以保存访问策略更新。 有关详细信息,请参阅分配 Azure 密钥保管库访问策略

  3. 在 Microsoft Purview 中,添加 KeyVault 连接以将具有 RDS 机密的 KeyVault 连接到 Microsoft Purview。 有关详细信息,请参阅 Microsoft Purview 中的源身份验证凭据

为 RDS 创建 Microsoft Purview 凭据对象

在 Microsoft Purview 中,创建扫描 Amazon RDS 帐户时要使用的凭据对象。

  1. 在“Microsoft Purview 管理 ”区域中,选择“ 安全性并访问>凭据>”“新建”。

  2. 选择“ SQL 身份验证 ”作为身份验证方法。 然后,输入存储 RDS 凭据的密钥保管库的详细信息,包括密钥保管库和机密的名称。

    例如:

    RDS 的新凭据的屏幕截图。

有关详细信息,请参阅 Microsoft Purview 中的源身份验证凭据

扫描 Amazon RDS 数据库

若要为 RDS 数据库配置 Microsoft Purview 扫描,请执行以下操作:

  1. 在“Microsoft Purview ”页中,选择要扫描的 Amazon RDS 数据源。

  2. 选择“新建扫描开始定义扫描。 在右侧打开的窗格中,输入以下详细信息,然后选择“ 继续”。

    • 名称:为扫描输入有意义的名称。
    • 数据库名称:输入要扫描的数据库的名称。 需要从 Microsoft Purview 外部查找可用的名称,并为已注册的 RDS 服务器中的每个数据库创建单独的扫描。
    • 凭据:选择之前为 Microsoft Purview 的多云扫描连接器创建的凭据,以访问 RDS 数据库。
  3. “选择扫描规则集 ”窗格中,选择要使用的扫描规则集,或创建一个新规则集。 有关详细信息,请参阅 创建扫描规则集

  4. “设置扫描触发器 ”窗格中,选择是要运行扫描一次还是定期运行扫描,然后选择“ 继续”。

  5. 在“ 查看扫描 ”窗格中,查看详细信息,然后选择“ 保存并运行”,或选择 “保存” 以稍后运行它。

运行扫描时,选择“ 刷新 ”以监视扫描进度。

注意

使用 Amazon RDS PostgreSQL 数据库时,仅支持完全扫描。 不支持增量扫描,因为 PostgreSQL 没有 “上次修改时间” 值。 

浏览扫描结果

在 Amazon RDS 数据库上完成 Microsoft Purview 扫描后,在 Microsoft Purview 数据映射 区域中向下钻取以查看扫描历史记录。 选择数据源以查看其详细信息,然后选择“ 扫描 ”选项卡以查看当前正在运行或已完成的任何扫描。

使用 Microsoft Purview 的其他区域来查找有关数据资产中内容的详细信息,包括 Amazon RDS 数据库:

此过程介绍在专有网络网络中准备 RDS 数据库以连接到 Microsoft Purview 所需的手动步骤。

默认情况下,建议改用 CloudFormation 模板,如本文前面所述。 有关详细信息,请参阅 使用 CloudFormation 模板配置 AWS PrivateLink

步骤 1:检索 Amazon RDS 终结点 IP 地址

找到托管在 Amazon VPC 中的 Amazon RDS 终结点的 IP 地址。 稍后在创建目标组时,你将在过程中使用此 IP 地址。

若要检索 RDS 终结点 IP 地址,请执行以下操作

  1. 在 Amazon RDS 中,导航到 RDS 数据库,并标识终结点 URL。 它位于“连接安全性”&下,作为终结点值。

    提示

    使用以下命令获取终结点中的数据库列表: aws rds describe-db-instances

  2. 使用终结点 URL 查找 Amazon RDS 数据库的 IP 地址。 例如,使用以下方法之一:

    • Pingping <DB-Endpoint>

    • nslookupnslookup <Db-Endpoint>

    • 联机 nslookup。 在搜索框中输入数据库 终结点 值,然后选择“ 查找 DNS 记录”。 NSLookup.io 在下一个屏幕上显示你的 IP 地址。

步骤 2:从负载均衡器启用 RDS 连接

若要确保允许从负载均衡器进行 RDS 连接,请稍后在该过程中创建:

  1. 查找“专有网络”IP 范围

    在 Amazon RDS 中,导航到 RDS 数据库。 在 “连接 & 安全” 区域中,选择 “专有网络” 链接, (IPv4 CIDR) 查找其 IP 范围。

    在“ 你的 VPC” 区域中,IP 范围显示在 “IPv4 CIDR ”列中。

    提示

    若要通过 CLI 执行此步骤,请使用以下命令: aws ec2 describe-vpcs

    有关详细信息,请参阅 ec2 — AWS CLI 1.19.105 命令参考 (amazon.com)

  2. 为此 IP 范围创建安全组

    1. https://console.aws.amazon.com/ec2/ 上打开 Amazon EC2 控制台,然后导航到 “安全组”。

    2. 选择“ 创建安全组 ”,然后创建安全组,确保包含以下详细信息:

      • 安全组名称:输入有意义的名称
      • 说明:输入安全组的说明
      • 专有网络:选择 RDS 数据库专有网络
    3. 在“ 入站规则”下,选择“ 添加规则 ”并输入以下详细信息:

      • 类型:选择“自定义 TCP
      • 端口范围:输入 RDS 数据库端口
      • :选择“ 自定义 ”,并输入上一步中的“专有网络”IP 范围。
    4. 滚动到页面底部,然后选择“ 创建安全组”。

  3. 将新安全组关联到 RDS

    1. 在 Amazon RDS 中,导航到 RDS 数据库,然后选择“ 修改”。

    2. 向下滚动到 “连接” 部分,然后在“ 安全组” 字段中,添加在 上一步中创建的新安全组。 然后向下滚动到页面底部,然后选择“ 继续”。

    3. “计划修改 ”部分中,选择“ 立即应用 ”以立即更新安全组。

    4. 选择 “修改数据库实例”。

提示

若要通过 CLI 执行此步骤,请使用以下命令:

步骤 3:创建目标组

若要在 AWS 中创建目标组,请执行以下操作

  1. https://console.aws.amazon.com/ec2/ 打开 Amazon EC2 控制台,导航到 “负载均衡>目标组”。

  2. 选择“ 创建目标组”并创建目标组,确保包含以下详细信息:

    • 目标类型: (可选) 选择 IP 地址
    • 协议:选择“TCP
    • 端口:输入 RDS 数据库端口
    • 专有网络:输入 RDS 数据库专有网络

    注意

    可以在 RDS 数据库页上的“连接安全性”&下找到 RDS 数据库端口和 VPC 值

    完成后,选择“ 下一步 ”以继续。

  3. “注册目标 ”页中,输入 RDS 数据库 IP 地址,然后选择下面的“ 包括为挂起”。

  4. 看到“目标”表中列出的新 目标 后,选择页面底部的“ 创建目标组 ”。

提示

若要通过 CLI 执行此步骤,请使用以下命令:

步骤 4:创建负载均衡器

可以 创建新的网络负载均衡器 以将流量转发到 RDS IP 地址,或向现有负载均衡器 添加新的侦听器

若要创建网络负载均衡器以将流量转发到 RDS IP 地址,请执行以下操作

  1. https://console.aws.amazon.com/ec2/ 上打开 Amazon EC2 控制台,并导航到 “负载均衡>负载均衡器”。

  2. 选择“创建负载均衡器>网络负载均衡器然后选择或输入以下值:

    • 方案:选择“内部

    • 专有网络:选择 RDS 数据库专有网络

    • 映射:请确保为所有 AWS 区域定义了 RDS,并确保选择所有这些区域。 可以在 RDS 数据库页上的“连接&安全性”选项卡上的“可用性区域”值中找到此信息。

    • 侦听器和路由

      • 协议:选择“TCP
      • 端口:选择 RDS DB 端口
      • 默认操作:选择在上一步中创建的目标组
  3. 在页面底部,选择“创建负载均衡器>查看负载均衡器”。

  4. 等待几分钟并刷新屏幕,直到新负载均衡器的“状态”列处于活动状态。

提示

若要通过 CLI 执行此步骤,请使用以下命令:

若要向现有负载均衡器添加侦听器,请执行以下操作

  1. https://console.aws.amazon.com/ec2/ 上打开 Amazon EC2 控制台,并导航到 “负载均衡>负载均衡器”。

  2. 选择负载均衡器 >侦听器>“添加侦听器”。

  3. 在“ 侦听器 ”选项卡上的“ 协议: 端口 ”区域中,选择“ TCP ”,并为侦听器输入新端口。

提示

若要通过 CLI 执行此步骤,请使用以下命令: aws elbv2 create-listener --load-balancer-arn <value> --protocol <value> --port <value> --default-actions Type=forward,TargetGroupArn=<target_group_arn>

有关详细信息,请参阅 AWS 文档

步骤 5:创建终结点服务

创建负载均衡器且其状态为“活动”后,可以创建终结点服务。

若要创建终结点服务,请执行以下操作

  1. https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台并导航到 “虚拟私有云 > 终结点服务”。

  2. 选择“ 创建终结点服务”,然后在“ 可用负载均衡器 ”下拉列表中,选择 在上一步中创建的新负载均衡器,或在其中添加了新侦听器的负载均衡器。

  3. “创建终结点服务 ”页中,清除“ 要求接受终结点 ”选项的选择。

  4. 在页面底部,选择“ 创建服务>关闭”。

  5. 返回到 “终结点服务 ”页:

    1. 选择创建的新终结点服务。
    2. “允许主体 ”选项卡中,选择“ 添加主体”。
    3. “要添加 > ARN 的主体 ”字段中,输入 arn:aws:iam::181328463391:root
    4. 选择 “添加主体”。

    注意

    添加标识时,请使用星号 (*****) 为所有主体添加权限。 这使所有 AWS 帐户中的所有主体都可以创建终结点服务的终结点。 有关详细信息,请参阅 AWS 文档

提示

若要通过 CLI 执行此步骤,请使用以下命令:

复制服务名称以在 Microsoft Purview 中使用

创建终结点服务后,在将 RDS 数据库注册为 Microsoft Purview 数据源时,可以在 Microsoft Purview 治理门户中复制“服务名称”值。

在所选终结点服务的“详细信息”选项卡上找到“服务名称”。

提示

若要通过 CLI 执行此步骤,请使用以下命令: Aws ec2 describe-vpc-endpoint-services

有关详细信息,请参阅 describe-vpc-endpoint-services — AWS CLI 2.2.7 命令参考 (amazonaws.com)

排查你的专有网络连接问题

本部分介绍配置与 Microsoft Purview 的 VPC 连接时可能发生的常见错误,以及如何对其进行故障排除和解决。

无效的专有网络服务名称

如果 Microsoft Purview 中出现 或 Invalid endpoint service 错误Invalid VPC service name,请使用以下步骤进行故障排除:

  1. 请确保你的专有网络服务名称正确无误。 例如:

    AWS 中专有网络服务名称的屏幕截图。

  2. 请确保在允许的主体中列出了 Microsoft ARN: arn:aws:iam::181328463391:root

    有关详细信息,请参阅 步骤 5:创建终结点服务

  3. 请确保 RDS 数据库列在某个受支持的区域中。 有关详细信息,请参阅 Amazon RDS 的 Microsoft Purview 范围

可用性区域无效

如果 Microsoft Purview 中出现 错误 Invalid Availability Zone ,请确保至少为以下三个区域之一定义了 RDS:

  • us-east-1a
  • us-east-1b
  • us-east-1c

有关详细信息,请参阅 AWS 文档

RDS 错误

Microsoft Purview 中可能会出现以下错误:

  • Unknown database. 在这种情况下,定义的数据库不存在。 检查配置的数据库名称是否正确

  • Failed to login to the Sql data source. The given auth credential does not have permission on the target database. 在这种情况下,用户名和密码不正确。 检查凭据并根据需要更新凭据。

后续步骤

详细了解 Microsoft Purview Insight 报表: