Arquivo de março, 2013

OBIEEBRASIL_ANIVERSARIO_1

Anúncios

Olá pessoal, vamos retomar o assunto segurança no OBIEE, mais especificamente segurança em nível de coluna e filtro de dados.

 A segurança em nível de coluna ou pasta permite controlar a sua visibilidade, é implementada na camada de apresentação, ocultando os objetos para um determinado grupo de usuários.

 Já o Filtro de dados (Data Filter), já falamos dele neste blog, é implementado direto no grupo associado ao usuário, através de uma cláusula SQL .

 No nosso exemplo o usuário do grupo de Gerentes tem permissão para ver o total de vendas e o total de custos por cidade e regiões geográficas  já os vendedores devem ver o somente o total de vendas e apenas a cidade que ele representa.

 O usuário bieeuser1 que esta associado ao perfil de Gerentes construiu um relatório onde apresenta o total de vendas e custos variáveis por cidade e região geográfica e deseja publicar este relatório para todos os seus vendedores.

 A coluna de custos variáveis “10- Variable Costs” e a coluna Região “R50 Region” não deve ser visualizada pelo vendedor.

O usuário bieeuser2 esta associado ao perfil Vendedores e deve visualizar o mesmo relatório apenas para a cidade que ele representa, Bueno Aires.

 O resultado apresentado abaixo será para o Gerente:


O resultado apresentado abaixo será para o Vendedor:

Vamos iniciar implementando a segurança do filtro de dados (Data Filter) no OBIEE:

 1 – Para isto criamos uma tabela de controle de acesso onde é possivel definir o usuário, o grupo do usuário, a dimensão e o valor que será filtrado. Esta estrutura de tabela torna flexível a inclusão de futuros filtros de dados para outros usuários e outras dimensões.

 

 No nosso exemplo o usuário bieeuser2 receberá o filtro “Bueno Aires” para a dimensão City.

 2 – No OBIEE, vamos criar um bloco de inicialização buscando o valor desta tabela onde o grupo é o de Vendedores e o usuário será igual ao usuário que estiver logado na sessão.

 

 O login do usuário é pego através da variável de sessão USER.

 3 – A variável V_CIDADE será populado pelos valores retornados no bloco de inicialização que é marcado para ser sempre requerida durante a autenticação do usuário na aplicação.



ideia aqui é utilizar esta variável nos filtros de dados.

Salve tudo.

4 – Agora vamos incluir o filtro de dados no Grupo de Vendedores, acessando o Gerenciador de Identidades e click na role BI_Vendedores.


No nosso exemplo o único usuário associado a esta role é o usuário bieeuser2.

 Click em Permissões.

 

 5 – Click no sinal de “+” para adicionar um novo data filter e vamos selecionar a tabela de apresentação “Ship to Regions”.

 

 Click em editar expressão.

 

 A tabela será filtrado somente para a cidade que retornar na variável.

 

Bom agora vamos implementar a segurança em nível de coluna, no nosso caso os campos “10- Variable Costs” e “R50 Region” não devem ser apresentados para os Vendedores.

1 – Selecione as propriedades dos campos onde é necessário aplicar a restrição de acesso.

2 – Click em Permissões:

3 – Para o grupo de Vendedores marcamos para a role BI_Vendedores sem acesso.

4 – No arquivo de configuração NQSConfig.ini mude o parâmetro PROJECT_INACCESSIBLE_COLUMN_AS_NULL para YES, está sob a seção de segurança. Por padrão é definido como NO. Reinicie os serviços.

Este parâmetro permite que mesmo não tendo acesso as colunas o usuário consiga visualizar um relatório previamente construído com estas coluna.

Para o usuário que tem restrição, estas colunas também ficam ocultas no relatório

5 – O usuário bieeuser1 que esta no grupo de Gerentes consegue visualizar o campo “10-Variable Costs” e “R50 Region” na camada de apresentação e consegue utilizá-loa em qualquer relatório. Alem de visualizar os dado de todas as cidades.


6 – Já o usuário bieeuser2 que esta no grupo de Vendedores não consegue visualizar o campo “10-Variable Costs” e o campo “R50 Region” e acessa apenas a cidade que ele representa “Buenos Aires”.


Portanto, o relatório é apresentado para o vendedor ocultando as colunas que ele não tem acesso, alem de ver apenas as vendas de cidade que ele representa.

Bom pessoal, lembrando que este exemplo não esgota o assunto segurança no OBIEE, mesmo porque em cada cliente existe um cenário e necessidades diferentes.

A versão que utilizamos aqui do OBIEE foi a 11.1.1.5.5

Até a próxima.

Alan Viegas