Configurar chaves gerenciadas pelo cliente para criptografia de volume do Azure NetApp Files

As chaves gerenciadas pelo cliente para criptografia de volume do Azure NetApp Files permitem que você use suas próprias chaves em vez de uma chave gerenciada pela plataforma ao criar um novo volume. Com chaves gerenciadas pelo cliente, você pode gerenciar totalmente o relacionamento entre o ciclo de vida de uma chave, as permissões de uso de chave e as operações de auditoria em chaves.

O diagrama a seguir demonstra como as chaves gerenciadas pelo cliente funcionam com o Azure NetApp Files:

Diagrama conceitual de chaves gerenciadas pelo cliente.

  1. O Azure NetApp Files concede permissões para chaves de criptografia a uma identidade gerenciada. A identidade gerenciada pode ser uma identidade gerenciada atribuída pelo usuário que você cria e gerencia ou uma identidade gerenciada atribuída pelo sistema associada à conta do NetApp.

  2. Você configura a criptografia com uma chave gerenciada pelo cliente para a conta do NetApp.

  3. Você usa a identidade gerenciada à qual o administrador do Azure Key Vault concedeu permissões na etapa 1 para autenticar o acesso ao Azure Key Vault por meio do Microsoft Entra ID.

  4. O Azure NetApp Files encapsula a chave de criptografia da conta com a chave gerenciada pelo cliente no Azure Key Vault.

    As chaves gerenciadas pelo cliente não têm impacto no desempenho do Azure NetApp Files. Sua única diferença em relação às chaves gerenciadas pela plataforma é como a chave é gerenciada.

  5. Para operações de leitura/gravação, o Azure NetApp Files envia solicitações ao Azure Key Vault para desencapsular a chave de criptografia da conta a fim de executar operações de criptografia e descriptografia.

Considerações

  • Para criar um volume usando chaves gerenciadas pelo cliente, você deve selecionar os recursos de rede Standard. Você não pode usar volumes de chaves gerenciadas pelo cliente com volume configurado usando recursos de rede de nível Básico. Siga as instruções para Definir a opção Recursos de Rede na página de criação de volume.
  • Para aumentar a segurança, você pode selecionar a opção Desabilitar acesso público nas configurações de rede do seu cofre de chaves. Ao selecionar essa opção, você também deve selecionar Permitir que serviços confiáveis da Microsoft ignorem esse firewall para permitir que o serviço Azure NetApp Files acesse sua chave de criptografia.
  • As chaves gerenciadas pelo cliente dão suporte à renovação automática do certificado MSI (Identidade Gerenciada do Sistema). Se o certificado for válido, você não precisará atualizá-lo manualmente.
  • Não há suporte para aplicar grupos de segurança de rede do Azure na sub-rede de link privado ao Azure Key Vault para as chaves gerenciadas pelo cliente do Azure NetApp Files. Os grupos de segurança de rede não afetam a conectividade com o Link Privado, a menos que Private endpoint network policy esteja habilitado na sub-rede. É obrigatório para manter essa opção desabilitada.
  • Se o Azure NetApp Files não criar um volume da chave gerenciada pelo cliente, serão exibidas mensagens de erro. Consulte a seção Mensagens de erro e solução de problemas para obter mais informações.
  • Não faça nenhuma alteração no Azure Key Vault subjacente ou no Ponto de Extremidade Privado do Azure depois de criar um volume de chaves gerenciadas pelo cliente. As alterações podem fazer com que os volumes fiquem inacessíveis.
  • Se o Azure Key Vault ficar inacessível, o Azure NetApp Files perderá o acesso às chaves de criptografia e a capacidade de ler ou gravar dados em volumes habilitados com chaves gerenciadas pelo cliente. Nessa situação, crie um tíquete de suporte para que o acesso seja restaurado manualmente para os volumes afetados.
  • O Azure NetApp Files agora dá suporte a chaves gerenciadas pelo cliente em volumes de replicação de dados e de origem com replicação entre regiões ou relações de replicação entre zonas.

Regiões com suporte

Há suporte para chaves gerenciadas pelo cliente do Azure NetApp Files para as seguintes regiões:

  • Austrália Central
  • Austrália Central 2
  • Leste da Austrália
  • Sudeste da Austrália
  • Brazil South
  • Sudeste do Brasil
  • Canadá Central
  • Leste do Canadá
  • Índia Central
  • Centro dos EUA
  • Leste da Ásia
  • Leste dos EUA
  • Leste dos EUA 2
  • França Central
  • Norte da Alemanha
  • Centro-Oeste da Alemanha
  • Israel Central
  • Norte da Itália
  • Leste do Japão
  • Oeste do Japão
  • Coreia Central
  • Sul da Coreia
  • Centro-Norte dos EUA
  • Norte da Europa
  • Leste da Noruega
  • Oeste da Noruega
  • Catar Central
  • Norte da África do Sul
  • Centro-Sul dos Estados Unidos
  • Sul da Índia
  • Sudeste Asiático
  • Espanha Central
  • Suécia Central
  • Norte da Suíça
  • Oeste da Suíça
  • EAU Central
  • Norte dos EAU
  • Sul do Reino Unido
  • Oeste do Reino Unido
  • Governo dos EUA do Arizona
  • Governo dos EUA do Texas
  • Gov. dos EUA – Virgínia
  • Europa Ocidental
  • Oeste dos EUA
  • Oeste dos EUA 2
  • Oeste dos EUA 3

Requisitos

Antes de criar seu primeiro volume de chave gerenciada pelo cliente, você deve configurar:

  • Um cofre de chaves no Azure Key Vault, que contenha pelo menos uma chave.
    • O cofre de chaves deve ter a exclusão reversível e a proteção contra limpeza habilitadas.
    • A chave deve ser do tipo RSA.
  • O cofre de chaves deve ter um ponto de extremidade privado do Azure.
    • O ponto de extremidade privado deve residir em uma sub-rede diferente daquela delegada ao Azure NetApp Files. A sub-rede deve estar na mesma VNet que a delegada ao Azure NetApp.

Para obter mais informações sobre o Azure Key Vault e o Ponto de Extremidade Privado do Azure, consulte:

Configurar uma conta do NetApp para usar chaves gerenciadas pelo cliente

  1. No portal do Azure e no Azure NetApp Files, selecione Criptografia.

    A página Criptografia permite que você gerencie as configurações de criptografia para sua conta do NetApp. Ela inclui uma opção para permitir que você defina sua conta do NetApp para usar sua própria chave de criptografia, que é armazenada no Azure Key Vault. Essa configuração fornece uma identidade atribuída pelo sistema à conta do NetApp e adiciona uma política de acesso à identidade com as permissões de chave necessárias.

    Captura de tela do menu de criptografia.

  2. Ao definir sua conta do NetApp para usar a chave gerenciada pelo cliente, você tem duas maneiras de especificar o URI da chave:

    • A opção Selecionar no cofre de chaves permite que você selecione um cofre de chaves e uma chave. Captura de tela da interface de seleção de uma chave.

    • A opção Inserir o URI da chave permite que você insira manualmente o URI da chave. Captura de tela do menu de criptografia mostrando o campo URI da chave.

  3. Selecione o tipo de identidade que você deseja usar para autenticação no Azure Key Vault. Se o Azure Key Vault estiver configurado para usar a política de acesso de Cofre como seu modelo de permissão, ambas as opções estarão disponíveis. Caso contrário, somente a opção atribuída pelo usuário estará disponível.

    • Se você escolher Atribuído pelo sistema, selecione o botão Salvar. O portal do Microsoft Azure configura a conta NetApp automaticamente, adicionando uma identidade atribuída pelo sistema à sua conta NetApp. Uma política de acesso também é criada em seu Azure Key Vault com as permissões de chave Get, Encrypt, Decrypt.

    Captura de tela do menu de criptografia com opções atribuídas pelo sistema.

    • Se você escolher Atribuído pelo usuário, deverá selecionar uma identidade. Escolha Selecionar uma identidade para abrir um painel de contexto no qual você seleciona uma identidade gerenciada atribuída pelo usuário.

    Captura de tela do submenu atribuído pelo usuário.

    Se você configurou seu Azure Key Vault para usar a política de acesso de Cofre, o portal do Azure configurará a conta do NetApp automaticamente com o seguinte processo: a identidade atribuída pelo usuário selecionada será adicionada à sua conta do NetApp. Uma política de acesso é criada no seu Azure Key Vault com as permissões de chave Obter, Criptografar, Descriptografar.

    Se você configurou o Azure Key Vault para usar o controle de acesso baseado em função do Azure, precisará verificar se a identidade atribuída pelo usuário selecionado tem uma atribuição de função no cofre de chaves com permissões para ações:

  4. Selecione Salvar e observe a notificação comunicando o status da operação. Se a operação não tiver sido bem-sucedida, será exibida uma mensagem de erro. Consulte mensagens de erro e solução de problemas para obter assistência para resolver o erro.

Use o controle de acesso baseado em função

Você pode usar um Azure Key Vault configurado para usar o controle de acesso baseado em função do Azure. Para configurar chaves gerenciadas pelo cliente por meio do portal do Azure, você precisa fornecer uma identidade atribuída pelo usuário.

  1. Em sua conta do Azure, navegue até Cofres de chaves e, em seguida, vá para Políticas do acesso.

  2. Para criar uma política de acesso, em Modelo de permissão, selecione Controle de acesso baseado em função do Azure. Captura de tela do menu de configuração de acesso.

  3. Ao criar a função atribuída pelo usuário, há três permissões necessárias para as chaves gerenciadas pelo cliente:

    1. Microsoft.KeyVault/vaults/keys/read
    2. Microsoft.KeyVault/vaults/keys/encrypt/action
    3. Microsoft.KeyVault/vaults/keys/decrypt/action

    Embora haja funções predefinidas que incluem essas permissões, essas funções concedem mais privilégios do que os necessários. É recomendável que você crie uma função personalizada com apenas as permissões mínimas necessárias. Para obter mais informações, confira Funções personalizadas do Azure.

    {
        "id": "/subscriptions/<subscription>/Microsoft.Authorization/roleDefinitions/<roleDefinitionsID>",
        "properties": {
            "roleName": "NetApp account",
            "description": "Has the necessary permissions for customer-managed key encryption: get key, encrypt and decrypt",
            "assignableScopes": [
                "/subscriptions/<subscriptionID>/resourceGroups/<resourceGroup>"
            ],
            "permissions": [
              {
                "actions": [],
                "notActions": [],
                "dataActions": [
                    "Microsoft.KeyVault/vaults/keys/read",
                    "Microsoft.KeyVault/vaults/keys/encrypt/action",
                    "Microsoft.KeyVault/vaults/keys/decrypt/action"
                ],
                "notDataActions": []
                }
            ]
          }
    }
    
  4. Depois que a função personalizada for criada e ficar disponível para uso com o cofre de chaves, você a aplicará à identidade atribuída pelo usuário.

Captura de tela da revisão do RBAC e do menu de atribuição.

Criar um volume do Azure NetApp Files usando chaves gerenciadas pelo cliente

  1. No Azure NetApp Files, selecione Volumes e, em seguida, + Adicionar volume.

  2. Siga as instruções em Configurar recursos de rede para um volume do Azure NetApp Files:

  3. Para uma conta do NetApp configurada para usar uma chave gerenciada pelo cliente, a página Criar Volume inclui uma opção chamada Fonte da Chave de Criptografia.

    Para criptografar o volume com sua chave, selecione Chave Gerenciada pelo Cliente no menu suspenso Fonte da Chave de Criptografia.

    Ao criar um volume usando uma chave gerenciada pelo cliente, você também deve selecionar Standard para a opção Recursos de rede. Não há suporte para recursos de rede no nível Básico.

    Você também deve selecionar um ponto de extremidade privado do cofre de chaves. O menu suspenso exibe pontos de extremidade privados na rede virtual selecionada. Se não houver nenhum ponto de extremidade privado para o cofre de chaves na rede virtual selecionada, a lista suspensa estará vazia e você não poderá continuar. Nesse caso, consulte Ponto de Extremidade Privado do Azure.

    Captura de tela do menu de criação de volume.

  4. Continue para concluir o processo de criação de volume. Consulte:

Fazer a transição de um volume do Azure NetApp Files para chaves gerenciadas pelo cliente (versão prévia)

O Azure NetApp Files dá suporte à capacidade de migrar volumes existentes do uso de chaves gerenciadas pela plataforma para chaves gerenciadas pelo cliente. Após concluir a migração, você não poderá reverter para chaves gerenciadas pela plataforma.

Registrar o recurso

A transição de chave de criptografia para o Azure NetApp Files está atualmente em versão prévia. Você precisa registrar o recurso para usá-lo pela primeira vez.

  1. Registrar o recurso:

    Register-AzProviderFeature -ProviderNamespace Microsoft.NetApp -FeatureName ANFMigratePmkToCmk 
    
  2. Verifique o status do registro do recurso:

    Get-AzProviderFeature -ProviderNamespace Microsoft.NetApp -FeatureName ANFMigratePmkToCmk
    

    Observação

    O RegistrationState pode ficar no estado Registering por até 60 minutos antes de mudar para Registered. Aguarde até que o status seja Registrado antes de continuar.

Você também pode usar os comandos da CLI do Azure az feature register e az feature show para registrar o recurso e exibir o status do registro.

Volumes de transição

Observação

Ao fazer a transição de volumes para usar chaves gerenciadas pelo cliente, execute a transição para cada rede virtual em que sua conta do Azure NetApp Files tem volumes.

  1. Verifique se você configurou sua conta do Azure NetApp Files para usar chaves gerenciadas pelo cliente.
  2. No portal do Azure, navegue até a Criptografia.
  3. Selecione o guia Migração do CMK.
  4. No menu suspenso, selecione a rede virtual e o ponto de extremidade privado do cofre de chaves a ser usado.
  5. O Azure gera uma lista de volumes a serem criptografados pela chave gerenciada pelo cliente.
  6. Selecione Confirmar para iniciar a migração.

Rechaveamento de todos os volumes em uma conta do NetApp

Se você já tiver configurado sua conta do NetApp para chaves gerenciadas pelo cliente e tiver um ou mais volumes criptografados com chaves gerenciadas pelo cliente, poderá alterar a chave usada para criptografar todos os volumes na conta do NetApp. Você pode selecionar qualquer chave que esteja no mesmo cofre de chaves. Não há suporte para a alteração de cofres de chaves.

  1. Em sua conta do NetApp, navegue até o menu Criptografia. No campo de entrada Chave atual, selecione o link Rechaveamento. Captura de tela da chave de criptografia.

  2. No menu Rechaveamento, selecione uma das chaves disponíveis no menu suspenso. A chave escolhida deve ser diferente da chave atual. Captura de tela do menu de rechave.

  3. Selecione OK para salvar. A operação de rechaveamento pode demorar alguns minutos.

Alternar da identidade atribuída pelo sistema para a atribuída pelo usuário

Para mudar de identidade atribuída pelo sistema para a atribuída pelo usuário, você deve conceder acesso à identidade de destino ao cofre de chaves que está sendo usado com permissões de leitura/obtenção, criptografia e descriptografia.

  1. Atualize a conta do NetApp enviando uma solicitação PATCH usando o comando az rest:

    az rest -m PATCH -u <netapp-account-resource-id>?api-versions=2022-09-01 -b @path/to/payload.json
    

    O conteúdo deve usar a seguinte estrutura:

    {
      "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
         "<identity-resource-id>": {}
        }
      },
      "properties": {
        "encryption": {
          "identity": {
            "userAssignedIdentity": "<identity-resource-id>"
          }
        }
      }
    }
    
  2. Confirme a operação concluída com sucesso com o comando az netappfiles account show. A saída inclui os seguintes campos:

        "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.NetApp/netAppAccounts/account",
        "identity": {
            "principalId": null,
            "tenantId": null,
            "type": "UserAssigned",
            "userAssignedIdentities": {
                "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity>": {
                    "clientId": "<client-id>",
                    "principalId": "<principalId>",
                    "tenantId": <tenantId>"
                }
            }
        },
    

    Verifique se:

    • encryption.identity.principalId corresponde ao valor em identity.userAssignedIdentities.principalId
    • encryption.identity.userAssignedIdentity corresponde ao valor em identity.userAssignedIdentities[]
    "encryption": {
        "identity": {
            "principalId": "<principal-id>",
            "userAssignedIdentity": "/subscriptions/<subscriptionId>/resourceGroups/<resource-group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity>"
        },
        "KeySource": "Microsoft.KeyVault",
    },
    

Mensagens de erro e solução de problemas

Essa seção lista mensagens de erro e possíveis resoluções quando o Azure NetApp Files falha ao configurar a criptografia de chave gerenciada pelo cliente ou ao criar um volume usando uma chave gerenciada pelo cliente.

Erros ao configurar a criptografia de chave gerenciada pelo cliente em uma conta do NetApp

Condição de erro Resolução
The operation failed because the specified key vault key was not found Ao inserir o URI da chave manualmente, verifique se o URI está correto.
Azure Key Vault key is not a valid RSA key Verifique se a chave selecionada é do tipo RSA.
Azure Key Vault key is not enabled Verifique se a chave selecionada está habilitada.
Azure Key Vault key is expired Verifique se a chave selecionada não expirou.
Azure Key Vault key has not been activated Verifique se a chave selecionada está ativa.
Key Vault URI is invalid Ao inserir o URI da chave manualmente, verifique se o URI está correto.
Azure Key Vault is not recoverable. Make sure that Soft-delete and Purge protection are both enabled on the Azure Key Vault Atualize o nível de recuperação do cofre de chaves para:
“Recoverable/Recoverable+ProtectedSubscription/CustomizedRecoverable/CustomizedRecoverable+ProtectedSubscription”
Account must be in the same region as the Vault Verifique se o cofre de chaves está na mesma região que a conta do NetApp.

Erros ao criar um volume criptografado com chaves gerenciadas pelo cliente

Condição de erro Resolução
Volume cannot be encrypted with Microsoft.KeyVault, NetAppAccount has not been configured with KeyVault encryption Sua conta do NetApp não tem a criptografia de chave gerenciada pelo cliente habilitada. Configure a conta do NetApp para usar uma chave gerenciada pelo cliente.
EncryptionKeySource cannot be changed Sem resolução. A propriedade EncryptionKeySource de um volume não pode ser alterada.
Unable to use the configured encryption key, please check if key is active Verifique o seguinte:
–Todas as políticas de acesso estão corretas no cofre de chaves: obter, criptografar, descriptografar?
–Existe um ponto de extremidade privado para o cofre de chaves?
–Há uma NAT de rede virtual na rede virtual com a sub-rede do Azure NetApp Files delegada habilitada?
Could not connect to the KeyVault Certifique-se de que o ponto final privado está configurado corretamente e que as firewalls não estão a bloquear a ligação da sua Rede Virtual ao seu KeyVault.

Próximas etapas