Hola, estoy haciendo el backoffice de mi sitio, cada negocio puede suscribir tres personas habilitadas para acceder a su backoffice, con distintos tipos de permisos. Mi pregunta es sencilla, cual sería la manera más óptima y la que comunmente se trabaja para hacerlo?.
Yo hasta ahora lo vengo haciendo de esta forma: en el momento que el representante del negocio se loguea, guardo en una variable de sesion el nivel de acceso (1, 2, 3) y luego en algunas páginas hago tres procedimientos distintos para que muestre la información según corresponda. La estructura de esas páginas serían algo así:
LevelAccess = session("access")
SELECT CASE LevelAccess
CASE 1
' ejecuto el procedimiento que muestra la información de los usuarios administradores
CASE 2
' ejecuto el procedimiento que muestra la información de los usuarios con acceso moderado
CASE 3
' ejecuto el procedimiento que muestra la información de los usuarios con acceso precario
END SELECT
Como dije antes, eso lo muestro en algunas páginas, en donde es necesario mostrar cierta información dependiendo del nivel de acceso que tiene el usuario. En otras páginas en las que no se ve ninguna información, sino que se realiza algún tipo de tarea, como por ejemplo borrar un producto del catálogo de ventas o despachar un pedido, lo que hago directamente es poner al principio de cada página lo siguiente:
if session("access") <> 1 then
Response.Redirect("Default.asp")
end if
Ese es mi sistema en estos momentos, uso dos variables de sesion (session("access") y session("ShopId") ) y la estructura del select que mencioné antes.
Alguien que haya trabajado con distintos niveles para cada usuario, me podría comentar como podría mejorar esto o como se trabaja comunmente en los backoffice de un sitio. Estaría muy agradecido si así lo hicieran.
Saludos!.
Suerte!.