PHP - como dar privilegios en una aplicacion

 
Vista:

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 24/01/2020 14:31:06
Hola ya he creado una aplicacion con php con su respectiva BBDD en postgresql. Pero me falta algo muy importante; como dar privilegios a los usuarios.

Como haria para que al momento de que el usuario se registre en la aplicacion solo pueda entrar a ciertas paginas?

Otra pregunta es: el privilegio se haria por BBDD o a nivel de codigo?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 24/01/2020 14:41:07
Por lo general eso se hace al inicio y conforme el sistema crece se van detallando los permisos.

En mi caso yo tengo una tabla de acciones que numera cada cosa que el sistema hace, una tabla de privilegios donde meto el idUser y el idAccion con un campo llamado privilegio, luego consulto mi tabla de privilegios, si privilegio es 1 el usuario tiene permiso, si es 0 no.

Es algo super fácil pero si tus archivos están bien diseñados, no es posible saltarse el bloqueo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 24/01/2020 15:12:16
Pero te pregunto: a nivel de BBDD? Dame una idea por favor. Ya tengo la BBDD.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 24/01/2020 17:43:49
Eso es a nivel de DB, las tablas que le mencioné.

Deme la pregunta exacta y le daré la respuesta exacta...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 24/01/2020 18:41:16
Si yo pregunto es porque desconozco la situacion , no es por capricho mio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 24/01/2020 19:12:21
Nooooo, no es eso. Lo que pasa es que no entiendo su pregunta.

Tal como le dije, eso es a nivel de DB. que fue exactamente lo que me preguntó.

Vuelvo y repito, haga una pregunta exacta o mas clara y le seguiré ayudando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por karolina (10 intervenciones) el 24/01/2020 19:39:05
Hola chica, buen día, me interesa este tema, acerca del modo que abordas los permisos para aplicarlo a mi base de datos. Yo cree un sistema en PHP con conexión MySQL,
y para los usuarios hice una tabla con sus datos, cedula, nombre, clave y perfil. Y a modo de sesión, pero no quiero que visite todas las paginas solo algunas según el tipo de perfil de usuario.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 24/01/2020 20:22:46
Le pregunto nuevamente:

Como haria para que al momento de que el usuario se registre en la aplicacion solo pueda entrar a paginas especificas?

Otra pregunta es: el privilegio se haria por BBDD o a nivel de codigo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 24/01/2020 21:44:21
Yo asigno privilegios a cada usuario, que ligar va a visitar, que opcion de menu puede ver, que lugar del sistema se le va a mostrar. Todo eso esta en la tabla de privilegios, que es alimentada de la tabla acciones, cada accion es un acceso, por desirlo asi.

Pueden hacerlo de una sola vez, consultar todos los privilegios del usuario y guardar ese array en sesiones, pero en lo personal no me gusta eso por lo vulnerable de las sesiones (si no se saben proteger), yo lo hago con cada lugar del sistema.

Lo intentare explicar
1
2
3
4
5
- Este archivo se llama ingresarCompras.php
--- El ID de la acción es el 2356
------ Hago un query a mi tabla privilegios donde el usuario sea el de sesión y la acción la 2356
--------- Si ese privilegio tiene como valor 1 el usuario accesa
--------- Si el valor es 0, lo saco

Yo no soy de crear perfiles, porque cada perfil lleva un arreglo de privilegios, y que pasa si al usuario de contabilidad no quieren que vea X lugar del perfil contable? entonces se comienza a crear desorden, yo genero acciones concretas las cuales se puede poner y quitar cuando se requiera.
Funciona tan bien que si alguien ya esta adentro de un área y yo le quito el privilegio, cuando este alguien hace alguna acción (enviar un formulario por ejemplo) no sucede nada, porque con cada interacción del usuario se evalúan los privilegios, lo que hace es que le muestra un error y lo redirige hasta el área anterior donde si tenia acceso.

Un mal funcionamiento con perfiles (desorden de jefaturas) me enseño a trabajar así.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 24/01/2020 22:40:00
Gracias, por supuesto yo tengo mi tabla de usuarios. Ahora bien otra pregunta: debo crear otra tabla de roles que se conecte a la de usuarios? Y disculpe mi desconocimiento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 24/01/2020 23:04:30
Claro, es que todo va conectado.

Cito lo que escribí antes.
1
2
3
4
5
6
7
Por lo general eso se hace al inicio y conforme el sistema crece se van detallando los permisos.
 
En mi caso yo tengo una tabla de acciones que numera cada cosa que el sistema hace.
Una tabla de privilegios donde meto el idUser y el idAccion en un campo llamado privilegio.
Luego consulto mi tabla de privilegios, si privilegio es 1 el usuario tiene permiso, si es 0 no.
 
Es algo super fácil pero si tus archivos están bien diseñados, no es posible saltarse el bloqueo.


PD: nos vemos el lunes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como dar privilegios en una aplicacion

Publicado por cosmito (117 intervenciones) el 27/01/2020 16:00:01
Buenos dias Kathyu, por aqui nuevamente, Ya voy captando tu explicacion, A grosso modo te explico lo de mi aplicacion:
Esta aplicacion se alimenta con usuarios o clientes que deben registrarse y una vez que entran crean registros y pueden consultar.

Mi pregunta: cuando entra por primera vez como haria para mantener la restriccion a un determinado usuario?

Es una aplicacion para mantenimiento donde él solicita un servicio. Despues te envio una imagen de la BBDD.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

como dar privilegios en una aplicacion

Publicado por Kathyu (905 intervenciones) el 27/01/2020 17:46:12
1
2
3
4
5
6
7
8
9
session_start();
    $accion = '3';
    $idUserSession = $_SESSION['iduser'];
 
    include_once('root/loader.php');
 
    $access = $querys->getPrivUser($idUserSession, $accion)[0]['privilegio'];
        if ($access == 1){
           // Toda su aplicacion

Esta es una forma fácil de restringir cualquier archivo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar