Ir para o conteúdo

Privilégios e Permissões

O modelo de segurança do Vinyl é composto pelos seguintes conceitos:

  • Usuários
  • Grupos
  • Privilégios
  • Funções
  • Permissões

Grupos e Privilégios

Os grupos organizam os usuários. Os administradores de segurança concedem privilégios de grupos a aplicativos e fontes de dados. Se um grupo receber privilégio para um aplicativo, o grupo receberá automaticamente privilégio para qualquer fonte de dados referenciada por esse aplicativo.

Funções e Permissões

As fontes de dados podem definir funções. As funções organizam as permissões; as permissões determinam os direitos de acesso de uma função aos objetos de dados.

As permissões podem conceder um ou mais dos seguintes direitos de acesso a um objeto de dados:

Permissão Descrição
Leia Permite que os usuários consultar o objeto de dados.
Inserir Permite que os usuários insiram registros no objeto de dados.
Atualização Permite que os usuários atualizem registros no objeto de dados e executem eventos definidos pelo usuário.
Excluir Permite que os usuários excluam registros do objeto de dados.

Nota

Se você não vir as alterações de função aplicadas aos usuários, navegue até Vinyl IDE > Configurações adicionais > Liberar cache.

Autorização de Fonte de Dados

As fontes de dados são protegidas usando um dos dois modelos de autorização. O modelo de autorização é determinado pela definição ou não de funções pela fonte de dados. Os modelos de autorização de fonte de dados incluem:

Modelo Descrição
Autorização de fonte de dados Se uma fonte de dados não definir nenhuma função, os usuários com privilégios na fonte de dados terão permissão total para todos os objetos de dados na fonte de dados.
Autorização baseada em funções Se uma fonte de dados definir uma ou mais funções, a fonte de dados estará usando autorização baseada em funções. Nesse caso, além de conceder privilégios de grupos à fonte de dados, os administradores de segurança devem adicionar o grupo a uma ou mais funções de fonte de dados.

Autorização de Aplicativo

Os administradores de segurança podem conceder privilégios de grupo a um aplicativo ou fonte de dados. Os usuários só poderão acessar um aplicativo se tiverem recebido privilégio para o aplicativo. Conforme observado acima, conceder privilégios a um aplicativo concede privilégios a quaisquer fontes de dados referenciadas pelo aplicativo. O inverso não é verdadeiro: conceder um privilégio de grupo a uma fonte de dados não concede esse privilégio de grupo a aplicativos que fazem referência à fonte de dados.

Autorização de Página

No Vinyl, os desenvolvedores protegem objetos de dados, não páginas. No entanto, os seguintes controles de página são vinculados a objetos de dados:

  • Painéis de grade
  • Painéis de formulário
  • Gráficos
  • Listas

Um usuário tem permissão para uma página se, e somente se, tiver acesso de leitura a todos os objetos de dados usados pela página.

Se um usuário solicitar uma página à qual não tem acesso, o usuário receberá um erro "Acesso negado". O Vinyl oculta ou desativa links para páginas que os usuários não podem acessar. Portanto, tais erros só são prováveis se a segurança estiver mal configurada ou se o usuário navegar diretamente para uma página (por exemplo, clicando em um link em um email).

Ao construir links de menu, o Vinyl analisará cada link para determinar se o usuário tem acesso à página de destino. Caso o usuário tenha acesso à página, o link aparecerá no menu. Caso contrário, o link ficará oculto.

Da mesma forma, ao renderizar uma página, o Vinyl analisará cada link da página para determinar se o usuário tem acesso à página de destino. Se o usuário tiver acesso, a página será renderizada conforme projetado. Se o usuário não tiver acesso à página de destino, o Vinyl modificará a página de acordo:

  • O ícone do link do painel da grade (Chevron ou Popup) está oculto. Além disso, a ação de clique duplo está desativada.
  • As colunas do painel de grade definidas por controles que não são vinculados a dados (por exemplo, botões) serão ocultadas.
  • Os controles na grade ou nos painéis de formulário vinculados a dados (por exemplo, Texto, Lista) tornam-se impossíveis de clicar.

Controles de Página

Ao renderizar uma página, o Vinyl oculta ou desabilita os elementos da página com base nos direitos de acesso do usuário aos objetos de dados subjacentes. Isso inclui:

Direito de acesso Afeta
Inserir * O botão Adicionar do painel da grade ficará oculto.
Atualização
  • Os ícones de edição do painel de grade (Lápis) ficarão ocultos.
  • O botão Editar do painel de linha de formulário ficará oculto.
  • Colunas do painel de grade definidas por controles que não estão vinculados a dados (por exemplo, botões) ficarão ocultos.
  • Os controles dentro de um painel de formulário que não estão vinculados a dados (por exemplo, botões) serão ocultos.
  • Os controles dentro da grade ou painéis de formulário vinculados a dados (por exemplo, texto, lista) tornam-se não clicáveis.
Excluir
  • Os ícones Excluir do painel da grade (Lixeira) ficarão ocultos.
  • O botão Excluir do painel do formulário ficará oculto.