CRIACAO DE ATRIBUICAO DE DIREITOS A USUARIOS
Opa pessoal,blz?....seguinte ,estou desenvolvendo um sistema em Vb.Net com um banco em Sql Server 2008 em minha empresa para alguns controles,ele sera usado por mais de um departamento,entao criei alem de tabelas de logs no banco,um cadastro de usuarios com login no sistema,porem eu gostaria agora de criar uma definiçao melhor neste cadastro para conceder e negar certos direitos nos formularios,como poder alterar,poder incluir ,excluir etc... pesquisei algumas formas para fazer isso porem nao obtive mto sucesso,gostaria de criar algo facil que quem tivesse o direito de fazer o cadastro,pudesse setar quais forms e o que o usuario pudesse fazer. se alguem puder me dar alguma ideia.... agradeço mto...
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Uma idéia simples e convencional, seria você criar uma TABELA de PERMISSÕES, onde os CAMPOS (True/False ou 1/0) representam todas as permissões que um USUÃRIO pode ter, além de um para armazenar o CÓDIGO DO USUÃRIO.
Na aplicação, você cria um FORM com alguns CHECKBOX representando os CAMPOS da tabela recentemente criada. À partir daÃ, e só vincular um USUÃRIO [Ô]X[Ô] as permissões SELECIONADAS.
Finalizando, seria interessante você alimentar um objeto de dados, com as PERMISSÕES do USUÃRIO quando o mesmo efetuar o LOGIN na aplicação. Desta forma, não perderia em PERFORMANCE para notificar o PERFIL COMPLETO do usuário no SISTEMA.
Na aplicação, você cria um FORM com alguns CHECKBOX representando os CAMPOS da tabela recentemente criada. À partir daÃ, e só vincular um USUÃRIO [Ô]X[Ô] as permissões SELECIONADAS.
Finalizando, seria interessante você alimentar um objeto de dados, com as PERMISSÕES do USUÃRIO quando o mesmo efetuar o LOGIN na aplicação. Desta forma, não perderia em PERFORMANCE para notificar o PERFIL COMPLETO do usuário no SISTEMA.
entendi,essa parte da criaçao da tabela foi exatamente o que eu tinha pensado,so que na verdade eu criei uma tabela onde eu tenho os forms cadastrador e uma tabela com as permissoes do usuario em relaçao ao form, o que nao entendi mto bem seria essa parte de criar o objeto de dados para carregar as informaçoes do usuario no login dele...
Vinicius .....
Vc cria uma Classe que represente a sua tabela no BD...O nome da classe seria o nome da tabela, e as propiedade seriam os campos....
EX.....
Public Class Usuario
Private _nome As String
Public Property Nome() As String
Get
Return _nome
End Get
Set(ByVal value As String)
_nome = value
End Set
End Property
Private _permissao1 As String
Public Property Permissao1() As String
Get
Return _permissao1
End Get
Set(ByVal value As String)
_permissao1 = value
End Set
End Property
Private _permissao2 As String
Public Property Permissao2() As String
Get
Return _permissao2
End Get
Set(ByVal value As String)
_permissao2 = value
End Set
End Property
Private _permissao3 As String
Public Property Permissao3() As String
Get
Return _permissao3
End Get
Set(ByVal value As String)
_permissao3 = value
End Set
End Property
End Class
Assim vc pode criar um metodo e carregar as propiedades do objeto uma unica ves no sistema.
Abraço
Vc cria uma Classe que represente a sua tabela no BD...O nome da classe seria o nome da tabela, e as propiedade seriam os campos....
EX.....
Public Class Usuario
Private _nome As String
Public Property Nome() As String
Get
Return _nome
End Get
Set(ByVal value As String)
_nome = value
End Set
End Property
Private _permissao1 As String
Public Property Permissao1() As String
Get
Return _permissao1
End Get
Set(ByVal value As String)
_permissao1 = value
End Set
End Property
Private _permissao2 As String
Public Property Permissao2() As String
Get
Return _permissao2
End Get
Set(ByVal value As String)
_permissao2 = value
End Set
End Property
Private _permissao3 As String
Public Property Permissao3() As String
Get
Return _permissao3
End Get
Set(ByVal value As String)
_permissao3 = value
End Set
End Property
End Class
Assim vc pode criar um metodo e carregar as propiedades do objeto uma unica ves no sistema.
Abraço
entendi,vou fazer os testes e assim que tiver um resultado eu posto aqui.....
valeu....
valeu....
eu fiz a classe para poder carregar os dados,o problema é que nao estou sabendo como fazer para na hora que carregar o menu ele conseguir fazer a verificação ,ou seja carregar todos os forms e ver qual ele tem direito e do que tem direito...
kra...eu faço isso bem diferente....
eu verifico todos os tipos de usuarios q vão usar o programa e atribuo niveis...
AO CARREGAR O FORM PRINCIPAL(onde estão os menus q abrirão os outros forms), conforme o nivel do usuario os menus ficam habilitados ou não
eu verifico todos os tipos de usuarios q vão usar o programa e atribuo niveis...
AO CARREGAR O FORM PRINCIPAL(onde estão os menus q abrirão os outros forms), conforme o nivel do usuario os menus ficam habilitados ou não
como assim ? ...teria como mostrar um exemplo?
na verdade eu compreendi o que o IRRV disse porem eu quero carregar de uma forma onde os dereitos sejam singulares aos forms,por exemplo determinado form o usuario tem acesso de inclusao ,alteraçao etc,em outro esse mesmo usuario so pode consultar ,e assim por diante....
Coloque no inicio de cada formulario para checar cada permissão assim se usuario x so pode consultar vc desabilita o damais botões pronto controle efetuado !!
mas e se o usuario nao puder nem consultar aquele formulario,como eu vou esconder o form dele,se o evento esta no click do form???
Tópico encerrado , respostas não são mais permitidas