Perfiles de usuario y gestión de derechos

Acceda como superadministrador al panel de administración, cree perfiles y otórgueles los permisos que desee en cada tabla y acción.


Cómo añadir nuevos usuarios Admin y asignarles permisos específicos

  1. Acceda al panel de administración como administrador principal
    Utilice las credenciales creadas durante la instalación del módulo de autenticación

  2. Abra los Perfiles de usuario y pulse el botón Añadir nuevo

    Add New User Admin Profile
  3. Cada una de las tablas utilizadas en el panel de control del administrador se muestra como un conjunto de 4 campos:

    Users profile Admin Form
    Leer
    ¿Los usuarios con este perfil pueden leer los registros de esta tabla?
    Actualización
    ¿Los usuarios con este perfil están autorizados a Actualizar los registros de esta tabla?
    Crear Eliminar
    ¿Los usuarios con este perfil están autorizados a Crear / Borrar los registros de esta tabla?
  4. Dé un nombre a su perfil, haga sus elecciones para cada tabla como se describe en la sección anterior y, a continuación, envíe para guardar.
  5. Abra los Usuarios y pulse el botón Añadir nuevo

    Add New Admin User
  6. Elija el perfil del nuevo usuario en la lista desplegable, complete la información del usuario y envíe para añadir su nuevo usuario.

    Add New Admin User
  7. Cierre la sesión e inicie sesión con las credenciales del nuevo usuario si desea probar su nuevo perfil.

Si un usuario no tiene derecho a leer en una tabla, ésta no se mostrará en el menú lateral.
Por supuesto, la URL tampoco estará disponible.

Si un usuario no tiene derechos de creación/edición/eliminación sobre una tabla, los botones correspondientes no aparecerán en la tabla de datos.
Por supuesto, las URL tampoco estarán disponibles.

¿Cómo restringir los permisos del usuario a sus propios registros?

El módulo de autenticación PHPCG le permite crear perfiles de usuario para los que los usuarios conectados sólo tienen acceso a sus propios registros.

Esto permite, por ejemplo, dar acceso a un cliente que sólo verá su propio perfil y sus pedidos.

Para ello, cada tabla a restringir debe unirse a la tabla de usuario, directa o indirectamente.

Admin table with a Direct Relation to the Users table
Tabla Admin con una relación directa con la tabla Usuarios
Admin table with a Direct Relation to the Users table
Tabla Admin con una relación indirecta con la tabla Usuarios
  1. Abra el formulario Añadir nuevo perfil o Editar perfil

  2. Establezca los derechos de Lectura, Actualización, Creación/Borrado de la tabla que desea restringir en Restringido en la lista desplegable

  3. En el campo Consulta de restricción, introduzca la consulta WHERE que se utilizará para limitar los derechos del usuario

    CURRENT_USER_ID será sustituido automáticamente por PHPCG por el ID del usuario conectado en ese momento.

    Ejemplo de utilización de la relación directa según el esquema de base de datos anterior:

    WHERE projects.phpcg_users_ID = CURRENT_USER_ID

    Ejemplo de utilización de la relación indirecta según el esquema de base de datos anterior:

    WHERE projects_details.projects_id = projects.id AND projects.phpcg_users_ID = CURRENT_USER_ID
  4. Asigne su perfil restringido a cualquier usuario, desconéctese e inicie sesión con las credenciales del usuario si desea realizar una prueba

Requisitos previos

Para crear perfiles de usuario y añadir nuevos usuarios debe hacerlo previamente:

Página principal del tutorial PHP CRUD