Foros del Web » Programando para Internet » PHP »

Referencia buena sobre permisos

Estas en el tema de Referencia buena sobre permisos en el foro de PHP en Foros del Web. Lo que deseo es algún link o enlace donde se trate este tema; Tengo un sistema de publicación donde un administrador publica contenidos y se ...
  #1 (permalink)  
Antiguo 29/04/2009, 07:24
 
Fecha de Ingreso: marzo-2009
Mensajes: 171
Antigüedad: 15 años, 1 mes
Puntos: 4
Referencia buena sobre permisos

Lo que deseo es algún link o enlace donde se trate este tema;
Tengo un sistema de publicación donde un administrador publica contenidos y se ve luego en la zona publica.
Después tengo una zona privada donde se ven los contenidos privados y dependiendo de que usuario y sus roles puede ver un contenido u otro, puede verlo pero no modificarlo etc...
Para elle se crea una serie de roles y según que roles tenga un usuario alcanza a ver mas contenidos o a poder editarlos.
Pero cuando el número de roles aumenta llega un momento en que se hace tedioso la administración de estos roles puesto que se crean privilegios a diestro y siniestro y si a un usuario quiero darle permisos tengo que investigar o adivinar que puede verse o hacerse con un permiso.
Por eso deseo un poco de información para ver qué opciones o posibilidades existen además lo tedioso que utilizo yo.
  #2 (permalink)  
Antiguo 29/04/2009, 13:00
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Referencia buena sobre permisos

Como estas manejando los permisos?

Lo que hago yo es asignar permisos por grupo (rol) de usuarios, tengo una tabla para la informacion general de los grupos (nombre, titulo, etc.) y otra aparte para los permisos con la siguiente estructura:

id - varchar (30)
descripcion - text
grupos - text

En id almaceno una cadena que identifica el permiso, por modulo y requerimiento de acceso al centro de administracion, ejemplo:

Cita:
adm_xmod_galeria_catmas
adm = requiere acceso a centro de administracion
xmod = agrupar permisos en el modulo correspondiente
galeria = nombre del modulo
catmas = agregar categorias (o galerias)

xmod_galeria_fotomas
xmod = agrupar permisos por modulo
galeria = identifica el modulo
En descripcion solo creo un texto para saber la funcion de cada permiso.

Guardo cada grupo que tiene acceso al permiso entre corchetes [# de grupo], ejemplo:
[1][2][3][25], de manera que si tengo que verificar permisos directamente con MySQL puedo hacer un filtro facilmente:

SELECT id, grupos FROM permisos WHERE grupos LIKE '%[$grupo]%'

El resultado de la consulta lo cargo en $permisos, usando como indice el id de permiso.

La parte administrativa:

Para asignar permisos a cada grupo leo todos los permisos, los ordeno alfabeticamente y clasifico de acuerdo al modulo al que pertenecen, marcando la casilla como checked si el grupo tiene ya asignado ese permiso.

Para ingresar en areas que requieren permiso especifico solo se necesita verificar:
if(!isset($permisos['id_del_permiso'))
die('No tienes permiso para ingresar en esta seccion.');
__________________
- León, Guanajuato
- GV-Foto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:16.