Traga suas próprias chaves de criptografia para o Power BI

O Power BI criptografa dados em repouso e em processo. Por padrão, o Power BI usa chaves gerenciadas pela Microsoft para criptografar seus dados. No Power BI Premium, também é possível usar suas chaves para os dados em repouso que são importados em um modelo semântico. Essa abordagem geralmente é descrita como BYOK (Bring Your Own Key). Para obter mais informações, confira Considerações sobre fonte de dados e armazenamento.

Por que usar a abordagem BYOK?

O BYOK torna mais fácil atender aos requisitos de conformidade que especificam as disposições de chave com o provedor de serviço de nuvem (neste caso, a Microsoft). Com o BYOK, você fornece e controla as chaves de criptografia para os dados do Power BI em repouso no nível do aplicativo. Como resultado, você pode exercer controle e revogar as chaves da sua organização se decidir sair do serviço. Quando você revogar as chaves, os dados ficarão ilegíveis para o serviço dentro de 30 minutos.

Considerações sobre armazenamento e fonte de dados

Para usar o BYOK, você deve fazer upload dos dados no serviço do Power BI em um arquivo do Power BI Desktop (PBIX). Não é possível usar o BYOK nos seguintes cenários:

O BYOK se aplica apenas a modelos semânticos. Modelos semânticos por push, arquivos do Excel e arquivos CSV que os usuários podem carregar no serviço não podem ser criptografados usando uma chave própria. Para identificar quais itens são armazenados em seus workspaces, use o seguinte comando do PowerShell:

PS C:\> Get-PowerBIWorkspace -Scope Organization -Include All

Observação

Este cmdlet requer o módulo de gerenciamento v1.0.840 do Power BI. Você pode ver qual versão você tem ao executar Get-InstalledModule -Name MicrosoftPowerBIMgmt. Instale a última versão executando Install-Module -Name MicrosoftPowerBIMgmt. Você pode obter mais informações sobre o cmdlet do Power BI e os parâmetros dele em módulo cmdlet do PowerShell do Power BI.

Configurar o Azure Key Vault

Esta seção explica como configurar o Azure Key Vault, uma ferramenta para armazenar e acessar segredos com segurança, como chaves de criptografia. Você pode usar um cofre de chaves existente para armazenar chaves de criptografia ou pode criar um novo especificamente para uso com o Power BI.

As instruções a seguir pressupõem conhecimento básico do Azure Key Vault. Para obter mais informações, veja O que é o Azure Key Vault?

Configure o cofre de chaves da seguinte maneira:

  1. Adicione o serviço do Power BI como uma entidade de serviço para o cofre de chaves, com permissões de encapsulamento e desencapsulamento.

  2. Crie uma chave RSA com um comprimento de 4096 bits ou use uma chave existente desse tipo, com permissões de encapsulamento e desencapsulamento.

    Importante

    O Power BI BYOK dá suporte apenas a chaves RSA com um comprimento de 4.096 bits.

  3. Recomendado: verifique se o cofre de chaves tem a opção exclusão reversível habilitada.

Adicionar a entidade de serviço

  1. Faça logon no portal do Azure e pesquise por Key Vaults.

  2. No cofre de chaves, selecione Políticas de acesso e Criar.

    Screenshot of the Create button for access policies in the Azure portal.

  3. Na tela Permissões, em Permissões de chave, selecione Desencapsular Chave e Encapsular Chave e escolha Avançar.

    Screenshot of the permission screen to create a new access policy.

  4. Na tela Principal, pesquise por e selecione Microsoft.Azure.AnalysisServices.

    Observação

    Se você não encontrar Microsoft.Azure.AnalysisServices, é provável que a assinatura do Azure associada ao seu Azure Key Vault nunca tenha tido um recurso do Power BI associado. Em vez disso, tente pesquisar a seguinte cadeia de caracteres: 00000009-0000-0000-c000-000000000000.

    Screenshot of the Principal screen to select a new principal for the access policy.

  5. Selecione Avançar e, em seguida, Examinar + criar>Criar.

Observação

Para revogar o acesso do Power BI aos seus dados, remova os direitos de acesso a essa entidade de serviço de seu Azure Key Vault.

Criar uma chave RSA

  1. No cofre de chaves, em Chaves, selecione Gerar/Importar.

  2. Selecione um Tipo de Chave de RSA e um Tamanho da Chave RSA de 4096.

    Screenshot of the RSA key type and size selections.

  3. Selecione Criar.

  4. Em Chaves, selecione a chave que você criou.

  5. Selecione o GUID para a Versão Atual da chave.

  6. Verifique se Chave de encapsulamento e Chave de desencapsulamento estão selecionadas. Copie o Identificador de Chave a ser usado ao habilitar o BYOK no Power BI.

    Screenshot of the key properties with the identifier and permitted operations.

Opção de exclusão reversível

Você deve habilitar a exclusão reversível no cofre de chaves para proteger contra perda de dados em caso de exclusão acidental de chave ou cofre de chaves. Para habilitar a propriedade de exclusão reversível, você precisa usar o PowerShell, porque essa opção ainda não está disponível no portal do Azure.

Com o Azure Key Vault configurado corretamente, você está pronto para habilitar o BYOK em seu locatário.

Configure o firewall do Azure Key Vault

Esta seção descreve o uso de bypass no firewall do serviço confiável da Microsoft para configurar um firewall em seu Azure Key Vault.

Observação

Você pode optar por habilitar regras de firewall no cofre de chaves. Você também pode optar por deixar o firewall desabilitado no cofre de chaves de acordo com a configuração padrão.

O Power BI é um serviço confiável da Microsoft. Você pode instruir o firewall do cofre de chaves a permitir o acesso a todos os serviços confiáveis da Microsoft, uma configuração que permite que o Power BI acesse seu cofre de chaves sem especificar conexões de ponto de extremidade.

Para configurar o Azure Key Vault para permitir o acesso a serviços confiáveis da Microsoft, siga estas etapas:

  1. Pesquise por Key Vaults no portal do Azure e selecione o cofre de chaves ao qual você deseja permitir acesso do Power BI e de todos os outros serviços confiáveis da Microsoft.

  2. Selecione Rede no painel de navegação do lado esquerdo.

  3. Em Firewalls e redes virtuais, selecione Permitir acesso público de redes virtuais e endereços IP específicos.

    Screenshot of the Azure Key Vault networking option, with the firewalls and virtual networks option selected.

  4. Role para baixo até a seção Firewall. Selecione Permitir que os serviços Microsoft confiáveis ignorem este firewall.

    Screenshot of the option to allow trusted Microsoft services to bypass this firewall.

  5. Escolha Aplicar.

Habilitar o BYOK em seu locatário

Habilite BYOK no nível do locatário usando o PowerShell. Primeiro, instale o pacote de administração do Power BI para o PowerShell e introduza as chaves de criptografia que você criou e armazenou no Azure Key Vault no seu locatário do Power BI. Em seguida, atribua essas chaves de criptografia por capacidade Premium para criptografar o conteúdo na capacidade.

Considerações importantes

Antes de habilitar o BYOK, tenha as seguintes considerações em mente:

  • Atualmente, não é possível desabilitar o BYOK após habilitá-lo. Dependendo de como você especificar os parâmetros para Add-PowerBIEncryptionKey, será possível controlar como usar o BYOK para uma ou mais das suas capacidades. No entanto, não é possível desfazer a introdução das chaves em seu locatário. Para saber mais, veja Habilitar BYOK.

  • Não é possível mover diretamente um workspace que usa o BYOK de uma capacidade no Power BI Premium para uma capacidade compartilhada. Primeiramente, você precisa mover o workspace para uma capacidade que não tenha o BYOK habilitado.

  • Se você mover um workspace que usa o BYOK de uma capacidade no Power BI Premium para uma compartilhada, os relatórios e os modelos semânticos ficarão inacessíveis, já que estarão criptografados com a chave. Para evitar essa situação, primeiramente é necessário mover o workspace para uma capacidade que não tenha o BYOK habilitado.

Habilitar o BYOK

Para habilitar o BYOK, você deverá ser um administrador do Power BI e se conectar usando o cmdlet Connect-PowerBIServiceAccount. Em seguida, use Add-PowerBIEncryptionKey para habilitar o BYOK, conforme mostrado no seguinte exemplo:

Add-PowerBIEncryptionKey -Name'Contoso Sales' -KeyVaultKeyUri'https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2'

Para adicionar várias chaves, execute Add-PowerBIEncryptionKey com valores diferentes para -Name e -KeyVaultKeyUri.

O cmdlet aceita dois parâmetros de opção que afetam a criptografia para as capacidades atuais e futuras. Por padrão, nenhuma das opções é definida:

  • -Activate: indica que essa chave é usada para todas as capacidades existentes no locatário que ainda não estão criptografadas.

  • -Default: Indica que essa chave agora é o padrão para todo o locatário. Quando você cria uma nova capacidade, a capacidade herda essa chave.

Importante

Se você especificar -Default, todas as capacidades criadas no locatário, neste ponto, serão criptografadas usando a chave que você especificar (ou uma chave padrão atualizada). Não é possível desfazer a operação padrão, portanto, você perde a capacidade de criar uma capacidade Premium em seu locatário que não usa o BYOK.

Depois de habilitar o BYOK em seu locatário, defina a chave de criptografia para uma ou mais capacidades do Power BI:

  1. Use Get-PowerBICapacity para obter a ID de capacidade necessária para a próxima etapa.

    Get-PowerBICapacity -Scope Individual
    

    O cmdlet retorna uma saída semelhante à seguinte:

    Id              : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    DisplayName     : Test Capacity
    Admins          : adam@sometestdomain.com
    Sku             : P1
    State           : Active
    UserAccessRight : Admin
    Region          : North Central US
    
  2. Use Set-PowerBICapacityEncryptionKey para definir a chave de criptografia:

    Set-PowerBICapacityEncryptionKey -CapacityId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -KeyName 'Contoso Sales'
    

Você tem controle sobre como usar o BYOK em seu locatário. Por exemplo, para criptografar uma capacidade única, chame Add-PowerBIEncryptionKey sem -Activate ou -Default. Em seguida, chame Set-PowerBICapacityEncryptionKey para a capacidade do local em que você deseja habilitar o BYOK.

Gerenciar o BYOK

O Power BI fornece cmdlets adicionais para ajudar a gerenciar o BYOK em seu locatário:

  • Use Get-PowerBICapacity para obter a chave que uma capacidade está usando atualmente:

    Get-PowerBICapacity -Scope Organization -ShowEncryptionKey
    
  • Use Get-PowerBIEncryptionKey para obter a chave que seu locatário está usando atualmente:

    Get-PowerBIEncryptionKey
    
  • Use Get-PowerBIWorkspaceEncryptionStatus para ver se os modelos semânticos em um workspace são criptografados e se o seu status de criptografia está em sincronia com o workspace:

    Get-PowerBIWorkspaceEncryptionStatus -Name'Contoso Sales'
    

    Observe que a criptografia está habilitada no nível de capacidade, mas você obtém o status de criptografia no nível do modelo semântico para o workspace especificado.

  • Use Switch-PowerBIEncryptionKey para alternar (ou girar) a versão da chave usada para criptografia. O cmdlet simplesmente atualiza o -KeyVaultKeyUri para uma chave -Name:

    Switch-PowerBIEncryptionKey -Name'Contoso Sales' -KeyVaultKeyUri'https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2'
    

    Observe que a chave atual deve estar habilitada.