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

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

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

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.

Adicione alguns registros na tabela Usuarios e dê algumas permissões ao mesmo. Criaremos dois formulários na aplicação, chamados Customer e Employee.

 

Listagem 1. Script para criação das tabelas no banco

CREATE TABLE USUARIOS (

    ID             INTEGER NOT NULL,

    USER_NAME      VARCHAR(15) NOT NULL,

    SENHA          CHAR(6) NOT NULL,

    ADM            CHAR(1) NOT NULL,

    LEMBRAR_SENHA  CHAR(1));

                       

ALTER TABLE USUARIOS

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?