Así que estoy en el proceso de trabajar en parte de nuestro nuevo sistema de seguridad de sitio basado en roles y he llegado a la condición de "misil nuclear".
El sistema se basa en la idea de agrupación, con la posibilidad de que los usuarios estén implicados en grupos basados en grupos actuales, como por ejemplo:
-
Tom es un maestro pastelero
-
al ponerlo en el grupo de Cake Maker, también implica que él está en el grupo de panaderos, por lo que no necesita estar físicamente en ese grupo.
-
Por implicación de estar en el grupo de panaderos, podría ser puesto en cualquier otro subgrupo de horneado.
-
Si tom se convirtió en el CEO de su panadería, se lo sacaría del grupo de horneado y se lo asignaría al grupo de CEO, lo que implica que tiene acceso a todos los grupos (horneado, pastelería, etc.). / p>
La condición del "misil nuclear" es la siguiente: soy un desarrollador web, por lo que necesito tener acceso a todos los grupos para poder probar varias condiciones y errores que pueden ocurrir durante el ciclo de vida. Pero también podría haber datos confidenciales que no debería estar viendo, esto podría pertenecer al grupo de Recursos Humanos o al grupo de Finanzas. Al implementar el sistema de misiles nucleares, significaría para mí tener acceso a las páginas en vivo, alguien del grupo de Recursos Humanos o del grupo de Finanzas tendría que proporcionar su contraseña al mismo tiempo que la mía. 2 campos de contraseña en una página.
Esta es una solución bastante divertida, pero no estoy del todo convencido de que sea práctico. ¿Cómo protege generalmente a los desarrolladores de sistemas falsos contra datos confidenciales? hash algo sensible y solo revela si la persona es en realidad un miembro del grupo que pertenece a los datos.
¿te importa?