Hola Delphius
Por lo que he entendido (si lo he entendido bien), estableces los permisos de usuarios a partir de los perfiles, algo así (perdón si no se entiende bien el gráfico):
Usuarios <- Roles -> Perfiles <- Permisos -> Funcionalidad
El problema es el que tu dices, al no haber una relación directa entre Usuarios y Funcionalidad, no puedes aplicar permisos particulares a un usuario. Esto puede ser un usuario que tenga permisos de que no entran dentro de sus perfiles o un usuario no tenga permisos para algo que está en un perfil que tiene asignado.
Yo haría una de estas dos cosas:
- No romperme la cabeza
, y pasar de los perfiles
Usuarios <- Permisos -> Funcionalidad
o
- Machacarme la cabeza, añadir una tabla de excepciones que relacione directamente usuarios y Funcionalidad, donde activarías o desactivarías funcionalidades según el usuario
Usuarios <- Roles -> Perfiles <- Permisos -> Funcionalidad
| |
\<--------- Excepciones------------------->/
(Perdón por el cutre ASCIIArt que me he mandado, espero que se entienda).
Supongo que habrá más opciones, pero estas son las que se me ocurren.