2011-02-12 38 views
23

Estoy intentando crear un sistema de autenticación en mi aplicación, pero estoy teniendo algunos problemas para decidir cuál es la mejor forma de lograr lo que quiero en CodeIgniter.Autenticación de CodeIgniter + privilegios de usuario

El sitio web permite a las empresas administrar sus edificios. Una empresa puede tener muchos edificios y muchos usuarios (cuando digo usuarios me refiero a empleados de esa compañía).

En este sitio web me gustaría que dos tengan (básicamente) cuatro tipos generales de usuarios.

  • Super administrador: Esto podría agregar nuevos administradores y nuevas compañías a la base de datos, y otorgar privilegios al resto de los administradores.
  • Administrador: Esto podría hacer diferentes cosas dependiendo de los privilegios asignados.
  • Superusuario de la empresa: este usuario se creará directamente cuando un administrador cree una nueva empresa. Este usuario podría crear nuevos usuarios para esa compañía, y como tendría permisos totales, podría hacer todo lo que los demás usuarios pueden hacer.
  • Empresa Usuario: Dependiendo de los privilegios asignados por su superusuario, este usuario podría hacer y ver datos diferentes (por ejemplo, un usuario simple simplemente podría ver información de uno de los muchos edificios de la empresa).

Así, a pesar de que he visto muchas bibliotecas de autenticación que hay para CodeIgniter, sería bueno escuchar las recomendaciones sobre cómo podría diseñar este "papel autenticación basada en" el sistema, y ​​si recomendamos especialmente una biblioteca eso podría ayudar a lograr esto.

¡Apreciar!

+0

Respondiendo a mi propio puesto, creo que las personas que están buscando soluciones para este tipo de situaciones podrían encontrar útil este: http://geekhut.org/2009/10/codeigniter-authentication-design- principios/ – Nobita

+0

posible duplicado de [Autenticación de usuario con CodeIgniter] (http://stackoverflow.com/questions/457497/user-authentication-with-codeigniter) – Johan

Respuesta

14

Hay muchas bibliotecas que ya manejan Autenticación dentro de Codeigniter, pero la que yo recomendaría es Ion_Auth. Maneja muy bien los permisos de usuario (grupos) y de hecho he hecho un detailed writeup delineando una buena forma de manejar esta situación con Ion_Auth.

3

He estado desarrollando un sistema de autenticación basado en roles para Codeigniter llamado WolfAuth, here's the repository. Todavía es temprano, pero funciona de alguna manera. Puede agregar roles, etc. y luego restringir funciones y clases a roles de usuario y nombres de usuario particulares.

+0

¡Dulce! Voy a usar el tuyo Dwayne, parece que se ajusta a lo que necesito. Te avisaré si encuentro algún error :) – Nobita

9

Sugiero FlexiAuth biblioteca que es una versión modificada de ion Auth, y tiene muchas características ya integradas, simplemente de fábrica.

Cuestiones relacionadas