在Azure Database for PostgreSQL灵活服务器中配置数据加密

本文提供为 Azure Database for PostgreSQL 灵活服务器配置数据加密的分步说明。

重要

可以决定仅在创建服务器时使用系统托管密钥或客户托管密钥进行数据加密。 做出该决定并创建服务器后,不能在两个选项之间切换。

本文介绍如何创建新服务器并配置其数据加密选项。 对于使用客户托管加密密钥进行数据加密的现有服务器,你将了解:

  • 如何为服务选择其他用户分配的托管标识来访问加密密钥。
  • 如何指定其他加密密钥,或者如何轮换当前用于数据加密的加密密钥。

若要了解Azure Database for PostgreSQL上下文中的数据加密,请参阅数据加密

在服务器预配期间使用系统管理的密钥配置数据加密

使用 Azure 门户

  1. 在预配新的Azure Database for PostgreSQL灵活服务器期间,请在“安全”选项卡中配置数据加密。对于数据加密密钥,请选择“服务管理的密钥”选项。

    屏幕截图显示了在服务器预配过程中如何选择系统管理的加密密钥。

  2. 如果要将异地冗余备份存储与服务器一起预配,则“安全性”选项卡方面略有变化,因为服务器使用两个单独的加密密钥。 一个密钥用于你部署服务器的主区域,另一个密钥用于服务器备份被异步复制到的配对区域。

    屏幕截图显示了在服务器预配期间为异地冗余备份存储启用服务器时如何选择系统管理的加密密钥。

在服务器预配期间为数据加密配置客户管理的密钥

使用 Azure 门户

  1. 如果还没有托管标识,请创建用户分配的托管标识。 如果服务器启用了异地冗余备份,则需要创建两个不同的标识。 这些身份中的每一个都可访问这两个数据加密密钥中的每一个。

注释

虽然这不是必需的,但为了保持区域复原能力,请在与服务器相同的区域中创建用户分配的托管标识。 如果服务器启用了异地备份冗余,请在服务器的 配对区域中 创建第二个用户托管标识。

  1. 如果尚未创建密钥存储,请创建Azure 密钥保管库。 请确保满足 要求。 此外,请在配置密钥存储之前以及创建密钥并将所需的权限分配给用户分配的托管标识之前,按照建议进行操作。 如果服务器启用了异地冗余备份,则需要创建第二个密钥存储。 第二个密钥存储保存着用于加密复制到服务器配对区域的备份的数据加密密钥。

注释

必须部署密钥存储,以便将数据加密密钥保留在服务器所在的同一区域中。 如果服务器启用了异地备份冗余,则必须创建密钥存储,用于在服务器的 配对区域中 保留异地冗余备份的数据加密密钥。

  1. 在密钥存储中创建密钥。 如果服务器启用了异地冗余备份,则每个密钥存储都需要一个密钥。 通过使用其中一个密钥,可以加密服务器的所有数据(包括所有系统和用户数据库、临时文件、服务器日志、预写日志段和备份)。 通过使用第二个密钥,可以加密通过服务器的 配对区域 异步复制的备份副本。

  2. 在预配新的Azure Database for PostgreSQL灵活服务器期间,请在“安全”选项卡中配置数据加密。对于数据加密密钥,请选择“客户管理的密钥”单选按钮。

    屏幕截图显示了在群集预配期间如何选择客户管理的加密密钥。

  3. 如果要将异地冗余备份存储与服务器一起预配,则“安全性”选项卡方面略有变化,因为服务器使用两个单独的加密密钥。 一个密钥用于你部署服务器的主区域,另一个密钥用于服务器备份被异步复制到的配对区域。

    屏幕截图显示了当服务器启用了异地冗余备份存储时,在服务器预配期间如何选择客户管理的加密密钥。

  4. 在“用户分配的托管标识”中,选择“更改标识”

    屏幕截图显示了如何选择用户分配的托管标识以访问服务器位置数据的数据加密密钥。

  5. 从用户分配的托管标识列表中,选择希望服务器用来访问存储在Azure 密钥保管库中的数据加密密钥。

    屏幕截图显示了如何选择用户分配的托管标识供服务器用来访问数据加密密钥。

  6. 选择 并添加

    屏幕截图显示了“添加”按钮的位置,该按钮用于分配服务器用来访问数据加密密钥的标识。

  7. 选择“选择密钥”

    屏幕截图显示了如何选择数据加密密钥。

  8. 订阅会自动填充为要在其上创建服务器的订阅的名称。 保存数据加密密钥的密钥存储必须与服务器位于同一订阅中。

    屏幕截图显示了如何选择密钥存储所在的订阅。

  9. 展开 Key Vault,然后选择数据加密密钥所在的实例。

    屏幕截图显示了如何选择保存数据加密密钥的密钥存储。

    注释

    展开下拉框时,它会显示“无可用项”。 需要几秒钟时间才能列出部署在服务器所在的同一区域中的密钥保管库的所有实例。

  10. 展开“密钥”,然后选择要用于数据加密的密钥的名称。

    屏幕截图显示了如何选择数据加密密钥。

  11. 展开 “版本”,然后选择要用于数据加密的密钥版本的标识符。

    屏幕截图显示了如何选择要使用的数据加密密钥版本。

  12. 选择 选择

    屏幕截图显示了如何选择目标密钥。

  13. 配置新服务器的所有其他设置,然后选择“查看 + 创建”

    屏幕截图显示了如何完成服务器创建。

在现有服务器上为数据加密配置客户管理的密钥

决定是在创建服务器时使用系统托管密钥还是客户托管密钥进行数据加密。 做出该决定并创建服务器后,不能在两个选项之间切换。 如果想要从一个选项更改为另一选项,则只能将服务器的现有备份还原到新的服务器。 配置还原时,可以更改新服务器的数据加密配置。

对于使用客户托管密钥进行数据加密部署的现有服务器,可以进行多个配置更改。 可以更改用于加密的密钥引用,以及该服务用于访问密钥存储中保存的密钥时所使用的用户分配托管标识引用。

你必须更新 Azure Database for PostgreSQL 灵活服务器对某个密钥的引用:

  • 当存储在密钥保管库中的密钥以手动或自动方式轮换,且你的 Azure Database for PostgreSQL 灵活服务器指向该密钥的特定版本时。
  • 当你想要使用存储在不同密钥存储中的相同或不同密钥时。

每当你想要改用其他标识时,都必须更新 Azure Database for PostgreSQL 灵活服务器用于访问加密密钥的用户分配托管标识。

使用 Azure 门户

  1. 选择您的“Azure Database for PostgreSQL”灵活服务器。

  2. 在资源菜单中的 “安全 ”部分下,选择 “数据加密”。

    屏幕截图显示了如何转到现有服务器的“数据加密”。

  3. 若要更改服务器用于访问密钥存储的用户分配托管标识,请展开 “用户分配的托管标识 ”下拉列表,然后选择任何可用的标识。

    屏幕截图显示了如何选择与服务器关联的用户分配的托管标识之一。

    注释

    组合框中仅显示你的 Azure Database for PostgreSQL 灵活服务器所分配的标识。 虽然这不是必需的,但为了保持区域复原能力,请选择与服务器位于同一区域的用户分配的托管标识。 如果服务器启用了异地备份冗余,则用于访问异地冗余备份的数据加密密钥的第二个用户托管标识应存在于服务器的 配对区域中

  4. 如果要用于访问数据加密密钥的用户分配托管标识尚未分配给你的 Azure Database for PostgreSQL 灵活服务器,且未作为 Azure 资源存在,也未在 Microsoft Entra ID 中具有相应对象,请选择 创建 来创建它。

    显示如何在 Azure 和 Microsoft Entra ID 中创建新的用户分配托管标识、自动将其分配给 Azure Database for PostgreSQL 灵活服务器,并使用它访问数据加密密钥的屏幕截图。

  5. “创建用户分配的托管标识”面板中,输入要创建的用户分配的托管标识的详细信息,并将其自动分配给Azure Database for PostgreSQL灵活服务器以访问数据加密密钥。

    屏幕截图显示了如何为新的用户分配的托管标识提供详细信息。

  6. 如果用户分配的用于访问数据加密密钥的托管标识未分配给Azure Database for PostgreSQL灵活服务器,但它作为Azure资源存在于Microsoft Entra ID中的相应对象,请通过选择“选择”来分配它。

    显示如何在 Azure 和 Microsoft Entra ID 中选择现有的用户分配托管标识、自动将其分配给 Azure Database for PostgreSQL 灵活服务器,并使用该标识访问数据加密密钥的屏幕截图。

  7. 从用户分配的托管标识列表中,选择希望服务器用来访问存储在Azure 密钥保管库中的数据加密密钥。

    显示如何选择现有用户分配的托管标识以将其分配给 Azure Database for PostgreSQL 灵活服务器的屏幕截图,并使用它访问数据加密密钥。

  8. 选择 并添加

    屏幕截图显示了如何添加选定的用户分配的托管标识。

  9. 如果轮换密钥,或者想要使用不同的密钥,请更新Azure Database for PostgreSQL灵活服务器,使其指向新的密钥版本或新密钥。 为此,请复制密钥的资源标识符,并将其粘贴到 “密钥标识符 ”框中。

    屏幕截图显示了在何处粘贴服务器进行数据加密必须使用的新密钥或新密钥版本的资源标识符。

  10. 如果访问 Azure 门户的用户有权访问密钥存储中存储的密钥,则可以使用其他方法选择新密钥或新密钥版本。 为此,请在“密钥选择方法”中,选择“选择密钥”单选按钮

    屏幕截图显示了如何启用对用户更友好的方法来选择用于数据加密的数据加密密钥。

  11. 选择“选择密钥”。

    屏幕截图显示了如何选择数据加密密钥。

  12. 订阅会自动填充为要在其上创建服务器的订阅的名称。 保存数据加密密钥的密钥存储必须与服务器位于同一订阅中。

    屏幕截图显示了如何选择密钥存储所在的订阅。

  13. 展开 Key Vault,然后选择数据加密密钥所在的实例。

    屏幕截图显示了如何选择保存数据加密密钥的密钥存储。

    注释

    展开下拉框时,它会显示“无可用项”。 需要几秒钟时间才能列出部署在服务器所在的同一区域中的密钥保管库的所有实例。

  14. 展开“密钥”,然后选择要用于数据加密的密钥的名称。

    屏幕截图显示了如何选择数据加密密钥。

  15. 展开 “版本”,然后选择要用于数据加密的密钥版本的标识符。

    屏幕截图显示了如何选择要使用的数据加密密钥版本。

  16. 选择 选择

    屏幕截图显示了如何选择目标密钥。

  17. 对更改感到满意时,请选择“ 保存”。

    屏幕截图显示了如何保存对数据加密配置所做的更改。