Acceder Registrarme

Super usuario Seguridad PHP


Por: Gabriel Serrano Publicado el: 2017-04-24 12:02:48 Pregunta abierta

hola que tal espero estén bien, tengo una consulta, tengo un sistema multiempresa y en los grip tengo la clausula where = codempresa para que cada usuario solo vea lo suyo según a la empresa que este asociado, como debo hacer la consulta para que un superusuario pueda ver los registros de todas las empresas?



PHP

Usuario de (Perú)

Hola Gabriel.

Deberías manejar tipos de usuario y añadir el tipo a la cláusula where verificando que cuando sea administrador se liste todo mediante el operador "or".

select * from ttabla where codUsuario='123' or tipoUsuario='admin';
  • 2017-04-24 13:11:27
  • Me gusta(2)
Usuario de (Panamá)

hola Kevin, Muchas gracias por la repuesta, quiere decir que tengo agregar tipo de usuario en la tabla? voy a intentarlo, Gracias.

  • 2017-04-26 13:59:57
  • Me gusta(1)
Usuario de (No especificado)

Hola Gabriel,

Aunque algo tarde, me sumo a aportar con comentarios, ya que no pasate la informacion de referencia del modelo de datos que manejas, te sugiero un modelo de referencia que te podria ayudar.

 TablaEmpresa (1....*) TablaUsuarios (1...*) TablaNegocio, con columnas y datos de referencia.

TablaEmpresa

codigo  descripcion

e001       empresa 1

e002       empresa 2

TablaUsuarios

codigo  nombre    empresa

u001     pepito      e001

u002     carlitos    e002

TablaNegocio

empresa    dato1     

u001          info A de la empresa 1

u001          info B de la empresa 1

u002          info C de la empresa 2

u002          info D de la empresa 2

Con un select y un par de inner join obtienes los registros de la tabla TablaNegocio del usuario autenticado y si a la tabla TablaUsuarios le agregas un par de registros que asocien al usuario administrador del sistema con las N empresas que se manejen, este podra ver la info de las empresas que se manejen, la tabla quedaria asi:

TablaUsuarios

Codigo  nombre    empresa

u001     pepito      e001

u002     carlitos    e002

u003     admin      e001

u004     admin      e002

Espero esto te ayude y comentes como te fue. 

Saludos.

  • 2017-05-04 22:58:40
  • Me gusta(2)
Usuario de (Panamá)

muchas gracias por tu aporte. excelente

  • 2017-05-16 08:54:16
  • Me gusta(1)

  • Debes estar logueado para realizar comentarios