Segurança de aplicações: Gerenciando usuários, permissões e restrições

Neste artigo apresentarei um exemplo que construí utilizando técnicas avançadas e interessantes, para aumento da segurança da aplicação e controle de permissões.

 

Esse artigo faz parte da revista Clube Delphi edição 64. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler essa revista em PDF.

Segurança de aplicações

Gerenciando usuários, permissões e restrições

 

Todo sistema comercial possui algum tipo de restrição a usuários, por exemplo, não permitir a alteração de determinadas informações ou inclusão de novos registros. É fundamental que cada desenvolvedor saiba como aplicar regras de controle em suas aplicações, visando garantir a integridade e segurança das informações apresentadas ao usuário.

Neste artigo apresentarei um exemplo que construí utilizando técnicas avançadas e interessantes, para aumento da segurança da aplicação e controle de permissões. O sistema permite, por exemplo, que você diga que um determinado usuário só pode alterar registros da tabela de empregados, mas não incluir ou excluir. Além disso, será possível dizer, por exemplo, que um determinado usuário não pode visualizar um campo em específico (o salário de um empregado, por exemplo). Para facilitar o entendimento dos passos indicados aqui e acompanhar as técnicas apresentadas, sugiro que o leitor faça download do projeto completo a partir do endereço deste artigo.

Criando as tabelas

Primeiramente, precisamos criar as tabelas que armazenarão as permissões dos usuários, bem como os tipos de permissões que vamos ter na aplicação. Na Listagem 1

 temos o código para criação de três tabelas no banco Employee.fdb do Firebird (você pode utilizar o Employee do InterBase, bem como qualquer outro banco de dados). Criamos as tabelas Usuarios, Permissoes e Permissoes_Usuarios.

A lógica consiste em cadastrar usuários e permissões, assim o usuário só poderá realizar determinadas tarefas, como incluir, excluir e salvar um registro em um determinado formulário (Nome_Form) se estiver cadastrado na tabela. Se o usuário não tiver nenhuma permissão no formulário, o mesmo não poderá nem mesmo abri-lo.

" [...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados