A RLS (segurança em nível de linha) com o Power BI pode ser usada para restringir o acesso a dados para determinados usuários. Os filtros restringem os dados no nível da linha. É possível definir filtros nas funções.

Observação:

O RLS é um recurso Pro. Leia mais sobre o que é o conteúdo Pro.

Agora é possível configurar a RLS de modelos de dados importados para o Power BI com o Power BI Desktop. Você também pode configurar RLS em conjuntos de dados que estão usando DirectQuery, como o SQL Server. Anteriormente, você conseguia apenas implementar a RLS nos modelos do Analysis Services local fora do Power BI. Para as conexões dinâmicas do Analysis Services, configure a Segurança em nível de linha no modelo local. A opção de segurança não será exibida para conjuntos de dados com conexão dinâmica.

Definir funções e regras no Power BI Desktop

É possível definir funções e regras no Power BI Desktop. Quando você publica no Power BI, ele também publica as definições de função.

Se você quiser tirar proveito da segurança dinâmica, precisará habilitar a opção de visualização Habilitar filtragem cruzada em ambas as direções para o DirectQuery. Isso permitirá a capacidade de filtrar de modo cruzado e aplique o filtro de segurança em ambas as direções.

Para definir funções de segurança, faça o seguinte:

  1. Importe os dados para o relatório do Power BI Desktop ou configure uma conexão do DirectQuery.

    Observação:

    Você não pode definir funções no Power BI Desktop BI para as conexões dinâmicas do Analysis Services. Você precisará fazer isso no modelo do Analysis Services.

  2. Selecione a guia Modelagem.

  3. Selecione Gerenciar Funções.

  4. Selecione Criar.

  5. Forneça um nome para a função.

  6. Selecione a tabela à qual você deseja aplicar uma regra DAX.

  7. Insira as expressões DAX. Essa expressão deve retornar true ou false. Por exemplo: [ID da Entidade] = “Valor”.

    Observação:

    Você pode usar o username() nesta expressão. Lembre-se de que username() terá o formato DOMÍNIO\nomeusuário no Power BI Desktop. No serviço do Power BI, ele estará no formato do UPN do usuário.

  8. Depois de criar a expressão DAX, você pode selecionar a seleção acima da caixa de expressão para validar a expressão.

  9. Selecione Salvar.

Não é possível atribuir usuários a uma função no Power BI Desktop. Isso é feito no serviço do Power BI. É possível habilitar a segurança dinâmica no Power BI Desktop, fazendo uso das funções DAX username() e configurando as relações corretas.

Validando a função no Power BI Desktop

Depois de criar sua função, você poderá testar os resultados da função no Power BI Desktop. Para fazer isso, selecione Exibir Como Funções.

A caixa de diálogo Exibir como funções permite alterar a exibição do que você está vendo para esse usuário ou função específica. Você verá as funções criadas.

Selecione a função criada e OK para aplicar essa função ao que está sendo exibido. Os relatórios somente renderizarão os dados relevantes a essa função.

Você também pode selecionar Outro usuário e fornecer um usuário específico. É melhor fornecer o nome UPN, pois esse é o que será usado pelo serviço do Power BI. Selecione OK e os relatórios serão renderizados com base no que esse usuário pode ver.

Observação:

No Power BI Desktop, isso exibirá apenas resultados diferentes se você estiver usando a segurança dinâmica com base nas expressões DAX.

Gerenciar a segurança no modelo

Para gerenciar a segurança no modelo de dados, é necessário fazer o seguinte.

  1. Selecione as reticências (...) para um conjunto de dados.
  2. Selecione Segurança.

Você será levado à página da RLS para adicionar membros a uma função criada no Power BI Desktop. Somente os proprietários do conjunto de dados verão a opção Segurança disponível. Se o conjunto de dados está em um Grupo, somente os Administradores do grupo encontrarão a opção de segurança.

Você só pode criar ou modificar funções no Power BI Desktop.

Trabalhando com membros

Adicionar membros

É possível adicionar um membro à função digitando o endereço de email, o nome do usuário, o grupo de segurança ou a lista de distribuição que você deseja adicionar. Esse membro deve estar em sua organização. Não é possível adicionar Grupos criados no Power BI.

Você também pode ver quantos membros fazem parte da função pelo número entre parênteses ao lado do nome da função ou ao lado de Membros.

Remover membros

É possível remover membros selecionando o X ao lado do nome.

Validando a função no serviço do Power BI

Você pode validar que a função definida está funcionando corretamente ao testar a função.

  1. Selecione o elipse (...) ao lado da função.
  2. Selecione Testar dados como função

Então, você verá os relatórios que estão disponíveis para essa função. Os painéis de controle não são apresentados nessa exibição. Na barra azul acima, você verá o que está sendo aplicado.

Você pode testar outras funções ou uma combinação de funções, selecionando Exibindo agora como.

Você pode optar por exibir dados como uma pessoa específica ou pode selecionar uma combinação de funções disponíveis para validar que estão funcionando.

Para retornar à exibição normal, selecione Voltar à Segurança de Nível de Linha.

Usando a função DAX username()

Você pode tirar proveito da função DAX username() dentro de seu conjunto de dados. Você pode usá-la dentro de expressões no Power BI Desktop. Quando você publicar seu modelo, ele será usado no serviço do Power BI.

No Power BI Desktop, username() retornará um usuário no formato DOMÍNIO\Usuário.

No serviço do Power BI, username() retornará o nome UPN do usuário. Isso se parece com um endereço de email.

Usando a RLS com grupos no Power BI

Se você publicar o relatório do Power BI Desktop em um grupo do serviço do Power BI, as funções serão aplicadas aos membros somente leitura. Você precisará indicar que os membros só podem exibir o conteúdo do Power BI nas configurações de grupo.

Aviso:

Se você tiver configurado o Grupo para que os membros tenham permissões de edição, as funções RLS não serão aplicadas a eles. Os usuários poderão ver todos os dados.

Limitações

Veja a seguir uma lista das limitações atuais da segurança em nível de linha nos modelos de nuvem.

  • Se você já tinha funções/regras definidas no serviço do Power BI, precisará recriá-las no Power BI Desktop.
  • É possível definir a RLS somente nos conjuntos de dados criados usando o cliente do Power BI Desktop. Se desejar habilitar a RLS para conjuntos de dados criados com o Excel, será necessário converter os arquivos em arquivos PBIX primeiro. Saiba mais
  • Somente conexões ETL e DirectQuery têm suporte. Conexões dinâmicas do Analysis Services são tratadas no modelo local.
  • No momento, não há suporte para a P e R nem para a Cortana na RLS. Você não verá a caixa de entrada da P e R para os dashboards se todos os modelos tiverem a RLS configurada. Isso está em nossos planos, mas ainda não há um cronograma disponível.
  • Atualmente, não há suporte para o compartilhamento externo com conjuntos de dados que usam RLS.

Problemas conhecidos

Há um problema conhecido em que você receberá uma mensagem de erro quando tentar publicar por meio do Power BI Desktop se ele já tiver sido publicado anteriormente. O cenário é descrito a seguir.

  1. Sara tem um conjunto de dados que foi publicado no serviço do Power BI e ela configurou a RLS.

  2. Sara atualiza o relatório no Power BI Desktop e o publica novamente.

  3. Ela receberá um erro.

Solução alternativa: publique novamente o arquivo do Power BI Desktop no serviço do Power BI até que esse problema seja resolvido. Faça isso selecionando Obter Dados > Arquivos.

PERGUNTAS FREQUENTES

Pergunta: E se eu já tiver criado funções/regras para um conjunto de dados no serviço do Power BI? Elas ainda funcionariam se eu não fizesse nada? Resposta: não. Os visuais não seriam renderizados corretamente. Você precisaria recriar as funções/regras no Power BI Desktop e publicá-las no serviço de Power BI.

Pergunta: Posso criar essas funções para fontes de dados do Analysis Services? Resposta: Sim, é possível se você importou os dados no Power BI Desktop. Se você estiver usando uma conexão dinâmica, não poderá configurar a RLS no serviço do Power BI. Isso é definido no modelo local do Analysis Services.

Consulte também

RLS (segurança em nível de linha) com o Power BI Desktop
Mais perguntas? Experimente a Comunidade do Power BI