Skip to main content
19 março 2021
Follow Us

Se RLS já era bom, agora imagine o OLS…

Muitas vezes você já se perguntou se podia mostrar aos usuários do relatório do Power BI certas métricas que estão nos visuais?

Object-Level Security é o nome de um dos novos recursos lançados pela Microsoft, no final de fevereiro, para o Power BI para avançarmos com segurança nesse cenário. Ou seja, mais um recurso de prudência dos dados.

É uma virada de jogo quando se trata de segurança e visualização dos dados, porque permite que você bloqueie tabela e colunas específicas de um determinado relatório. Até então, nós só conseguíamos realizar o RLS (Row Level Security, a Restrição ao Nível de Linha), que é uma restrição nos dados e não nos visuais.

A grosso modo, podemos dizer que esse novo recurso é capaz de permitir que você, criador e analista de dados, especifique quais tabelas e colunas serão reportados aos visualizadores, sob uma perspetiva de visualização do relatório. Ou seja, te permite restringir o acesso aos utilizadores a um nível mais visual, de modo que quem recebe o relatório só poderá ver imagens contendo as colunas e tabelas que você permitiu que o utilizador tivesse acesso.

Então, se você restringir certas colunas e tabelas de um utilizador específico, é como que se para ele, essas não existissem.

Lembrando que esse recurso está disponível apenas para licenças Pro, Premium e Premium Per User.

Cenário

Suponha que temos um relatório que contém as informações da faturação das vendas de uma loja que possui unidades em várias localidades.

0.0 OLS Power BI

No entanto, por algum motivo, os responsáveis do marketing nos solicitou uma restrição de visualização para os vendedores. Ou seja, eles não querem permitir que sejam mostradas as informações dos vendedores (que na imagem acima está representado como 'Gestor'). 

O que na prática, significaria que o primeiro cartão do canto superior direito ("Contagem de Gestor"), o slicer de gestores (filtro de segmentação de dados localizado no canto esquerdo) e o gráfico de barras ('Faturação por Gestor') deixariam de apresentar essas informações. Algo do tipo:

13.0 OLS Power BI

Como fazer isso? Alguma sugestão?

Como fazer o OLS ?

Vejamos então os passos necesários para realizar essa ação:

1) Criar a função no Power BI Desktop no friso Modelação > Gerir funções

1.0 OLS Power BI

> Criar > Ex.: OLS Gestores > Guardar

9.0 OLS Power BI

2) Ferramentas Externas > Usar o Tabular Editor (quando aberto, ele se conectará diretamente ao modelo. Certifique-se de utilizar a versão mais recente) 

3.0 OLS Power BI

Caso não tenha o Tabular Editor instalado, o poderá fazê-la através do seguinte link:

https://github.com/otykier/TabularEditor/releases/tag/2.14.2

#Observação: caso você esteja usando o Power BI há pouco tempo, é natural que não apareça nada no friso de Ferramentas Externas, pois é um espaço dedicado ao utilizador personalizar como melhor entender e, por consequência, instalar ou configurar com as ferramentas externas que lhe apetece.

> Tables > Escolher a coluna desejada, nesse nosso caso, é a Gestor > Object Level Security > Buscaremos pela função que criamos há pouco, a OLS Gestores > Mudamos de Default para None(removendo efetivamente esta coluna das permissões de funções) 

10.0 OLS Power BI

> Salvar ou Ctrl+S (para salvar essas alterações)

11.0 OLS Power BI

3) Power BI Desktop > Modelação > Ver como > Escolher a função que fizemos as configurações de OLS > OLS Gestores > Dessa forma, conseguimos testar se funcionou e como o utilizador verá o relatório depois que partilharmos com ele.

12.0 OLS Power BI

> Veremos os recursos visuais que dependiam dessa coluna (Gestor) serem apresentados com Erro

13.0 OLS Power BI

> Stop viewing (parar visualização)

4) Salvar e Publicar numa Workspace do Power BI Service

5) Power BI Service > Aceder a Workspace que contém o relatório publicado > Conjunto de dados > Três pontinhos > Segurança 

14.0 OLS Power BI

> Adicionar os membros ou grupos de segurança apropriados > Salvar

15.0 OLS Power BI

6) Para verificar como o utilizador irá visualizar, basta clicar em > OLS Gestores > três pontinhos > Testar como função

16.0 OLS Power BI

7) Agora que as regras de segurança a nível de objeto são definidas, os usuários que não têm a permissão necessária, receberão uma mensagem de que o campo não existe para todos os visuais do relatório.

Vale ressaltar que, mesmo que o usuário tente fazer o downlod para analisar no Excel, por exemplo, ele não terá acesso à coluna dos gestores.

Entenda a diferença entre RLS e OLS

Veja abaixo o que o desenvolvedor da Microsoft explica sobre as diferenças entre o RLS e o OLS:

“Para contextualizar como isso melhora a segurança do seu modelo, vamos contrastar com a segurança ou as perspetivas em nível de linha. A segurança em nível de linha (RLS) é um recurso que permite proteger os dados atribuindo visualizações às funções. Definir filtros DAX restringe o acesso aos dados da linha para funções que não têm a permissão necessária. No entanto, os usuários podem visualizar os objetos de metadados específicos no modelo. Com as perspetivas, você também pode ocultar tabelas e colunas dos usuários, mas não é um recurso de segurança. Como o RLS, ocultar tabelas e colunas usando perspetivas não impede que os usuários as acedam via DAX. Os usuários também podem simplesmente alterar a string de conexão para usar uma perspetiva diferente ou aceder uma visualização completa do modelo.

A segurança de nível de linha, por outro lado, é um recurso de segurança; ainda, RLS não oculta completamente os metadados do modelo. Em contraste, a segurança em nível de objeto, não apenas oculta tabelas e colunas, mas também as protege. Suas tabelas e colunas protegidas são obscurecidas na lista de campos ao usar ferramentas de relatório como Excel ou Power BI. Um usuário sem permissões não pode aceder objetos de metadados protegidos por meio de DAX ou qualquer outro método. Para visualizadores que não têm a permissão necessária, as tabelas ou colunas protegidas simplesmente não existem.”

 Então, o que acharam?

Espero vocês no próximo artigo.

Isa


Assine a nossa newsletter e receba o nosso conteúdo diretamente no seu email