Pregunta

Estoy trabajando en un sitio que tiene un esquema de base de datos como un árbol.De arriba a abajo tengo:

  • una empresa puede tener muchos
  • ubicaciones que pueden tener muchos
  • flotas que pueden tener muchos
  • vehículos

    El sistema de permisos de usuario debe ser flexible en que alguien puede ganar o tener acceso restringido en cualquier nivel del árbol.Por ejemplo, una persona que administra la ubicación X será de forma predeterminada, tendrá acceso completo a todas las flotas por debajo de la ubicación x y todos los vehículos debajo de la ubicación x.Pero también debería poder restringir el acceso del usuario a cualquier nodo a continuación Ubicación x.

    ¿Cuál sería la forma correcta de desarrollar un esquema para un sistema de permisos como este?¿Sería realista almacenar a cada nodo un usuario que un usuario tiene acceso aunque sea un poco redundante?El objetivo es que pueda ejecutar fácilmente las consultas, por ejemplo, para obtener todas las ubicaciones que un usuario tiene acceso a.

¿Fue útil?

Solución

You might find a number of threads on SO interesting. Among them:

Implementing permissions based on reputation

Database schema for ACL

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top