RESTRINGIR ACESSO A MODULOS DO SISTEMA
Caros amigos ! ..vamos a mais um HELP
Necessidade: Restringir rotinas do sistema por cliente
Motivo: Alguns clientes querem somente o contas a receber, então gostaria de liberar somente módulos referente ao mesmo
Alguém tem algo parecido, pois no meu caso tenho clientes que querem como já dito somente o contas a receber então querem um preço mais em conta do que aqueles que usam o sistema por completo, e no final acabam usando outras coisas. Gostaria de alguma idéia para que possa estar restringindo acesso a determinados módulos do sistema, e também podendo liberar os mesmos de forma on-line como por exemplo se esse cliente no futuro quizer usar o contas a pagar também eu liberaria de alguma forma sem ter que atualizar.
Aberto a sugestões.
Necessidade: Restringir rotinas do sistema por cliente
Motivo: Alguns clientes querem somente o contas a receber, então gostaria de liberar somente módulos referente ao mesmo
Alguém tem algo parecido, pois no meu caso tenho clientes que querem como já dito somente o contas a receber então querem um preço mais em conta do que aqueles que usam o sistema por completo, e no final acabam usando outras coisas. Gostaria de alguma idéia para que possa estar restringindo acesso a determinados módulos do sistema, e também podendo liberar os mesmos de forma on-line como por exemplo se esse cliente no futuro quizer usar o contas a pagar também eu liberaria de alguma forma sem ter que atualizar.
Aberto a sugestões.
Uma opção possÃvel é [Ô]cadastrar[Ô] as telas (módulos) em uma tabela e em algum campo quardar que clientes tem acesso a ela. Quando você abrir a tela, verifique se o cliente tem permissão (no banco de dados). Se não, feche a tela/mostre mensagem.
Esse é o modo [Ô]tosco[Ô] de se fazer. Para algo mais profissional, sugiro criar os menus da sua aplicação (suponho de tenha) via código, validando assim as permissões.
Esse é o modo [Ô]tosco[Ô] de se fazer. Para algo mais profissional, sugiro criar os menus da sua aplicação (suponho de tenha) via código, validando assim as permissões.
Caro HUMBER,
O ideal seria VC fazer um cadastro de permissões em seu sistema, e conforme o usuário LOGADO, VC verifica nesta tabela se o mesmo possuà direito a uso daquele determinado módulo, e se naquele determinado módulo o cara pode INSERIR/EDITAR/APAGAR um registro.
AÃ, VC pode vender os seus sistemas da forma que está vendendo agora, só que o cara teria o usuário de acesso ao sistema liberado somente o módulo RECEBER. E se o cara quiser usar o módulo PAGAR, aà VC libera neste usuário o módulo PAGAR e pronto.......
Se for o caso, para isso não ficar visÃvel para o CLIENTE (como uma tela de cadastro), faça isso via INSERTS na tabela direto. Mas trate todo o seu sistema a LER essa tabela e verificar se o cara terá acesso para abrir tal módulo.
O ideal seria VC fazer um cadastro de permissões em seu sistema, e conforme o usuário LOGADO, VC verifica nesta tabela se o mesmo possuà direito a uso daquele determinado módulo, e se naquele determinado módulo o cara pode INSERIR/EDITAR/APAGAR um registro.
AÃ, VC pode vender os seus sistemas da forma que está vendendo agora, só que o cara teria o usuário de acesso ao sistema liberado somente o módulo RECEBER. E se o cara quiser usar o módulo PAGAR, aà VC libera neste usuário o módulo PAGAR e pronto.......
Se for o caso, para isso não ficar visÃvel para o CLIENTE (como uma tela de cadastro), faça isso via INSERTS na tabela direto. Mas trate todo o seu sistema a LER essa tabela e verificar se o cara terá acesso para abrir tal módulo.
Monta um número de licença para o cliente, dentro da licença você permite (via código binario por exemplo) os modulos que podem ser acessados ou não.
Você pode fazer um esquema semelhante a login do usuário: Coloca os seriais em um banco cryptografado ou no próprio código. Quando acessar ele consulta esse arquivo e verifica a permissão. Conforme o serial, ele terá ou não acesso a tais módulos. Para trocar o serial, ou você cria a rotina para o usuário entrar com o novo serial ou envia um arquivo para, ao executar, substituir o arquivo validador. Esse arquivo Validador pode ser um txt ou .mdb, com extensão modificada, para dificultar a localização. Pode até colocá-lo na pasta system do win.
Olá amigos ! grato pela ajuda até o momento. Vou expor minha idéia inicial e se estiver viajando me avisem.rs
Minha idéia inicial é trabalhar com nÃvel de acesso, ou seja, deixar meus menus [Ô]não editáveis[Ô] ou [Ô]invisÃveis[Ô], tanto faz, dependendo do nÃvel de acesso gravado (criptografado) na tabela. Imagino se nÃvel 1 o cliente tem acesso ao Contas a Receber, se o cliente é de nÃvel 2 tem acesso a Contas a Receber e Contas a Pagar e assim sucessivamente.
Tenho um controle de usuários onde o mesmo (ADM) pode habilitar e desabilitar acesso a determinados módulos do sistema, podendo restringir por grupos, etc...mais isso é controle do usuário final, acho que não posso seguir o mesmo rumo para esse tipo de controle que busco.
Acho que minha idéia inicial por nÃvel é um bom começo, mais ai surgiu a dúvida de como trocar esse cliente do nÃvel 1 para o nÃvel 2 via telefone por exemplo ? Será que existe alguma senha (número de licença) que consiga embutir esse nÃvel de acesso nela e assim mudando o nÃvel automáticamente no meu bco de dados ? Será que consigo fazer essa senha não repetiviva ? pois trabalho também com representações, então pode ser que meu [Ô]representante[Ô] pega essa senha e saia aumentando o nÃvel nos seus clientes.
Minha idéia inicial é trabalhar com nÃvel de acesso, ou seja, deixar meus menus [Ô]não editáveis[Ô] ou [Ô]invisÃveis[Ô], tanto faz, dependendo do nÃvel de acesso gravado (criptografado) na tabela. Imagino se nÃvel 1 o cliente tem acesso ao Contas a Receber, se o cliente é de nÃvel 2 tem acesso a Contas a Receber e Contas a Pagar e assim sucessivamente.
Tenho um controle de usuários onde o mesmo (ADM) pode habilitar e desabilitar acesso a determinados módulos do sistema, podendo restringir por grupos, etc...mais isso é controle do usuário final, acho que não posso seguir o mesmo rumo para esse tipo de controle que busco.
Acho que minha idéia inicial por nÃvel é um bom começo, mais ai surgiu a dúvida de como trocar esse cliente do nÃvel 1 para o nÃvel 2 via telefone por exemplo ? Será que existe alguma senha (número de licença) que consiga embutir esse nÃvel de acesso nela e assim mudando o nÃvel automáticamente no meu bco de dados ? Será que consigo fazer essa senha não repetiviva ? pois trabalho também com representações, então pode ser que meu [Ô]representante[Ô] pega essa senha e saia aumentando o nÃvel nos seus clientes.
Como o RRANGON falou, crie uma chave que libera o acesso, baseado no HD da máquina ou código do cliente. Assim você consegue [Ô]liberar via telefone[Ô] e evitar que o código [Ô]vaze[Ô].
[txt-size=1]Colegas não seria mais fácil, dividir o projeto em partes, um executável para cada modulo?[/txt-size]
E PQ ao invés de VC liberar o acesso para o cliente via FONE, VC não dá a opção da liberação somente via ACESSO REMOTO ao micro ??
E via ACESSO REMOTO VC pode rodar scripts de atualização na tabela USUARIO, onde liberaria o acesso a outros módulos do sistema.
E via ACESSO REMOTO VC pode rodar scripts de atualização na tabela USUARIO, onde liberaria o acesso a outros módulos do sistema.
Tópico encerrado , respostas não são mais permitidas