Skip to main content
所有云提供商
  • Amazon Web Services
  • Google Cloud
  • Microsoft Azure
  • 所有云提供商
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

设置Cloud Volumes ONTAP以在 Azure 中使用客户管理的密钥

贡献者 netapp-manini

使用带有 Microsoft 管理密钥的 Azure 存储服务加密,数据在 Azure 中的Cloud Volumes ONTAP上自动加密。但是您可以按照本页上的步骤使用您自己的加密密钥。

数据加密概述

Cloud Volumes ONTAP数据在 Azure 中自动使用 "Azure 存储服务加密"。默认实现使用 Microsoft 管理的密钥。无需设置。

如果您想将客户管理的密钥与Cloud Volumes ONTAP一起使用,则需要完成以下步骤:

  1. 从 Azure 创建一个密钥保管库,然后在该保管库中生成一个密钥。

  2. 从NetApp控制台,使用 API 创建使用密钥的Cloud Volumes ONTAP系统。

数据如何加密

控制台使用磁盘加密集,从而可以通过托管磁盘而不是页面 blob 来管理加密密钥。任何新的数据磁盘也使用相同的磁盘加密集。较低版本将使用 Microsoft 管理的密钥,而不是客户管理的密钥。

创建配置为使用客户管理密钥的Cloud Volumes ONTAP系统后, Cloud Volumes ONTAP数据将按如下方式加密。

Cloud Volumes ONTAP配置 用于密钥加密的系统磁盘 用于密钥加密的数据磁盘

单节点

  • 引导

  • NVRAM

  • 数据

具有页 Blob 的 Azure HA 单可用性区域

  • 引导

  • NVRAM

具有共享托管磁盘的 Azure HA 单可用性区域

  • 引导

  • NVRAM

  • 数据

具有共享托管磁盘的 Azure HA 多个可用性区域

  • 引导

  • NVRAM

  • 数据

Cloud Volumes ONTAP的所有 Azure 存储帐户均使用客户管理的密钥加密。如果您想在创建存储帐户期间对其进行加密,则必须在Cloud Volumes ONTAP创建请求中创建并提供资源的 ID。这适用于所有类型的部署。如果您不提供,存储帐户仍将被加密,但控制台首先使用 Microsoft 管理的密钥加密创建存储帐户,然后更新存储帐户以使用客户管理的密钥。

Cloud Volumes ONTAP中的密钥轮换

配置加密密钥时,必须使用 Azure 门户来设置并启用自动密钥轮换。创建并启用新版本的加密密钥可确保Cloud Volumes ONTAP可以自动检测并使用最新的密钥版本进行加密,从而确保您的数据保持安全而无需人工干预。

有关配置密钥和设置密钥轮换的信息,请参阅以下 Microsoft Azure 文档主题:

备注 配置密钥后,请确保已选择 "启用自动旋转",以便Cloud Volumes ONTAP可以在之前的密钥过期时使用新的密钥。如果您未在 Azure 门户上启用此选项, Cloud Volumes ONTAP将无法自动检测新密钥,这可能会导致存储配置问题。

创建用户分配的托管标识

您可以选择创建称为用户分配的托管标识的资源。这样做可以让您在创建Cloud Volumes ONTAP系统时加密您的存储帐户。我们建议在创建密钥保管库和生成密钥之前创建此资源。

该资源具有以下 ID: userassignedidentity

步骤
  1. 在 Azure 中,转到 Azure 服务并选择 托管标识

  2. 单击“创建”。

  3. 提供以下详细信息:

    • 订阅:选择订阅。我们建议选择与控制台代理的订阅相同的订阅。

    • 资源组:使用现有资源组或创建一个新的资源组。

    • 区域:可选,选择与控制台代理相同的区域。

    • 名称:输入资源的名称。

  4. (可选)添加标签。

  5. 单击“创建”。

创建密钥保管库并生成密钥

密钥保管库必须位于您计划创建Cloud Volumes ONTAP系统的同一 Azure 订阅和区域中。

如果你创建了用户分配的托管标识,在创建密钥保管库时,还应该为密钥保管库创建访问策略。

步骤
  1. "在 Azure 订阅中创建密钥保管库"

    请注意密钥保管库的以下要求:

    • 密钥保管库必须与Cloud Volumes ONTAP系统位于同一区域。

    • 应启用以下选项:

      • 软删除(此选项默认启用,但不能禁用)

      • 清除保护

      • 用于卷加密的 Azure 磁盘加密(适用于单节点系统、多个区域中的 HA 对以及 HA 单 AZ 部署)

        备注 使用 Azure 客户管理加密密钥的前提是为密钥保管库启用 Azure 磁盘加密。
    • 如果创建了用户分配的托管标识,则应启用以下选项:

      • 保险库访问政策

  2. 如果选择了“保管库访问策略”,请单击“创建”为密钥保管库创建访问策略。如果没有,请跳至步骤 3。

    1. 选择以下权限:

      • 得到

      • 列表

      • 解密

      • 加密

      • 解开密钥

      • 包装键

      • 核实

      • 符号

    2. 选择用户分配的托管标识(资源)作为主体。

    3. 审查并创建访问策略。

  3. "在密钥保管库中生成密钥"

    请注意密钥的以下要求:

    • 密钥类型必须是*RSA*。

    • 建议的 RSA 密钥大小为 2048,但也支持其他大小。

创建使用加密密钥的系统

创建密钥保管库并生成加密密钥后,您可以创建配置为使用该密钥的新Cloud Volumes ONTAP系统。这些步骤通过使用 API 来支持。

所需权限

如果要在单节点Cloud Volumes ONTAP系统中使用客户管理密钥,请确保控制台代理具有以下权限:

"Microsoft.Compute/diskEncryptionSets/read",
"Microsoft.Compute/diskEncryptionSets/write",
"Microsoft.Compute/diskEncryptionSets/delete"
"Microsoft.KeyVault/vaults/deploy/action",
"Microsoft.KeyVault/vaults/read",
"Microsoft.KeyVault/vaults/accessPolicies/write",
"Microsoft.ManagedIdentity/userAssignedIdentities/assign/action"
步骤
  1. 使用以下 API 调用获取 Azure 订阅中的密钥保管库列表。

    对于 HA 对: GET /azure/ha/metadata/vaults

    对于单节点: GET /azure/vsa/metadata/vaults

    记下*名称*和*资源组*。您需要在下一步中指定这些值。

  2. 使用以下 API 调用获取保管库中的密钥列表。

    对于 HA 对: GET /azure/ha/metadata/keys-vault

    对于单节点: GET /azure/vsa/metadata/keys-vault

    记下*keyName*。您需要在下一步中指定该值(以及保险库名称)。

  3. 使用以下 API 调用创建Cloud Volumes ONTAP系统。

    1. 对于 HA 对:

      POST /azure/ha/working-environments

      请求主体必须包含以下字段:

      "azureEncryptionParameters": {
                    "key": "keyName",
                    "vaultName": "vaultName"
      }
      备注 包括 `"userAssignedIdentity": " userAssignedIdentityId"`如果您创建此资源是为了用于存储帐户加密,则字段。
    2. 对于单节点系统:

      POST /azure/vsa/working-environments

      请求主体必须包含以下字段:

      "azureEncryptionParameters": {
                    "key": "keyName",
                    "vaultName": "vaultName"
      }
      备注 包括 `"userAssignedIdentity": " userAssignedIdentityId"`如果您创建此资源是为了用于存储帐户加密,则字段。
结果

您有一个新的Cloud Volumes ONTAP系统,该系统配置为使用客户管理的密钥进行数据加密。