[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 

Forum Read-Only! Check the new site and forum here!

Lista de Pendências  XML
Forum Index -> Comentários Gerais Go to Page: Previous  1, 2
Author Message
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Groups = Roles = Admins, Managers, Users, etc

Permissions = Permissõe = Deletar usuários, deletar notícias, ler notícias, etc.

Como deveria ser se não assim ?

Sergio Oliveira

andredelorme



Joined: 20/07/2005 11:41:46
Messages: 51
Offline

Entendi, então você acabou colocando todo o esquema que eu utilizo.

Em cada funcionalidade da aplicação eu poderei colocar quais os Grupos e/ou permissões que o usuário precisa ter para acessar, certo?
E eu terei que colocar na session que grupos e permissões o usuário possui.

O porém disso é que, assim como o Tomcat registrarei no próprio framework os usuários, grupos e permissões.

Como você pensa num futuro que um sistema possa ter um BD para controle de permições ou até utilizar sistemas mais complexos como LDAP?

Detalhando minha idéia inicial pensei em algo como, registrar no aplicação uma classe para controle de autorização, por exemplo:
registerAuthorizationManager(new AuthorizationManager());

Esta classe teria um método como:
boolean checkAuthrization(Object user, Object key)

O framework a cada vez que as TAGs <requiresAuthorization> ou <hasAuthorization> fossem utilizados, ou ainda adicionado a uma Action um filtro como:
ac.addFilter(new AuthorizationFilter(key));
O método checkAuthorization da classe AuthorizationManager seria chamado para verificar a autorização da usuário. A complexidade do esquema de autorização ficaria a cargo do desenvolvedor, a implementação padrão do framework seria simples como:
return true;

Num segundo momento outras classes poderiam ser criadas para incorporar no framework.

O que você acha, Sergio? Entendeu?


André Delorme
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Entendi e vc descreveu exatamente o que eu fiz.

A class GroupManager será registrada no ApplicationContext. (Para evitar singleton que o pessoal hoje em dia condena...)

Os groups e permissões serão inicialmente configurados na mão, mas nada te impede de estender GroupManager para que ele pegue isso do DB ou de outro lugar qualquer.

Vc só precisa colocar os Grupos a que aquele usuários pertence na session, e não as permissões. Grupos contem permissões, logo vc não adiciona permissões a um usuário e sim adiciona o usuário a grupos. Certo ??? Entendi ???

Estou anexando as classes para vc ver... Ainda falta fazer as tags e os filtros...

 Filename Group.java [Disk] Download
 Description
 Filesize 2 Kbytes
 Downloaded:  315 time(s)

 Filename GroupManager.java [Disk] Download
 Description
 Filesize 3 Kbytes
 Downloaded:  373 time(s)


Sergio Oliveira

saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

http://mentaforum.lohis.com.br/posts/list/26.page

Sergio Oliveira

 
Forum Index -> Comentários Gerais Go to Page: Previous  1, 2
Go to:   
Powered by JForum 2.1.6 © JForum Team