Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
guilherme_perei
Contributor III
Contributor III

Acesso a pasta por usuário

Bom Dia Pessoal,

Estou com alguns problemas em relação a acesso das pastas disponíveis em uma aplicação. Eu tenho 3 pastas e 5 usuários,

mas nem todos os usuários podem ter acesso a todas as pastas. Atualmente eu faço da seguinte forma:

Pasta01:

=osuser()='dominio\usuario01' or osuser()='dominio\usuario02' or osuser()='dominio\usuario03'


Pasta02:

=osuser()='dominio\usuario01' or osuser()='dominio\usuario05' or osuser()='dominio\usuario02'


Pasta03:

=osuser()='dominio\usuario02' or osuser()='dominio\usuario04' or osuser()='dominio\usuario03'


Mas desta forma acaba se tornando inviável, pois a aplicação autentica com o usuário do AD, não solicitando nenhum tipo de usuário ao

abrir e a cada usuário que eu libero acesso preciso acessar todas as pastas, uma por uma, e definir o acesso deste novo usuário.

Alguma sugestão?


Obrigado!



Labels (1)
1 Solution

Accepted Solutions
guilherme_perei
Contributor III
Contributor III
Author

Pessoal,

Consegui resolver da forma que está descrito aqui: Sheets Security with Section Access File

Obrigado!

View solution in original post

6 Replies
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Guilherme,

no section access eu criaria um grupo de acesso

//==================================================================

Section Access;

//==================================================================

Load * InLine [

ACCESS   ,  USERID  ,   PASSWORD  ,  NTNAME , GRUPO

ADMIN    ,  farol   ,   farol     ,    *    , TODOS

USER     ,  teste   ,   teste     ,    *    , 1

];

//==================================================================

Section Application;

//==================================================================

// No exemplo, cada letra seria uma pasta......Somente para efeito de mostrar como poderia ser feito.......

Modulo:

LOAD * INLINE [

GRUPO       , MODULO

TODOS       , ABCDEFGHIJ

1                  , ABC

2                  , I

NENHUM    , Z

];

e na pasta, na condicional poderia ser usado

FindOneOf(MODULO,'J')=0

ou o match()   para saber se o usuário teria ou não acesso a pasta (no caso usei letras como exemplo....).

furtado@farolbi.com.br
guilherme_perei
Contributor III
Contributor III
Author

Alessandro,

Como eu não utilizo password na aplicação, fiz o script da seguinte forma:

Section Access;

LOAD * INLINE [

    ACCESS, NTNAME, GRUPO

    ADMIN, qlikview, QLIK

    USER, Usuario01, USER

];

Section Application;

LOAD * INLINE [

    GRUPO, PASTA

    USER, SH01

  QLIK, SH02

];

E nas condicionais coloquei esta função:

=FindOneOf(PASTA,'SH01')=0

=FindOneOf(PASTA,'SH02')=0


Mas ainda assim não tive sucesso.

nicolett_yuri

Guilherme, você marcou a opção para reduzir os dados de seu qvw?

Configuração -> Propriedades do Documento -> Abrindo

Marque as opções:

  • Redução Inicial de Dados Baseado na Sessão de Acesso
  • Exclusão total

Outro ponto, ao utilizar o NTNAME, informe o nome do domínio antes de passar o usuário, por exemplo: DOMINIO\USER1

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Guilherme,

normalmente alem do NTNAME deixo um USERID pois assim seria "uma chave mestra" independente se estou logado com o usuário,na rede ou o que for, eu sei que abro o modelo.

furtado@farolbi.com.br
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Se voce colocar o campo PASTA na tela mostra 1 registro ou os 2 ? 

Se mostrar os dois, faz o que o nicolett.yuri‌ comentou.

furtado@farolbi.com.br
guilherme_perei
Contributor III
Contributor III
Author

Pessoal,

Consegui resolver da forma que está descrito aqui: Sheets Security with Section Access File

Obrigado!