Estoy trabajando en la implementación de seguridad basada en roles en LDAP y Java. En concreto, tengo los siguientes objetos que tengo que representar en LDAP:Implementación de seguridad basada en roles en LDAP
- Usuarios
- Los grupos de sociedades de usuarios - Recursos Humanos, Finanzas, etc.
- Permisos - DOCUMENT_READ, etc. DOCUMENT_MODIFY
- Roles - ADMIN, GUEST, etc.
Las funciones son básicamente grupos de permisos y se pueden asignar a un usuario o grupo de usuarios.
Estaba pensando en representarlos en LDAP como folows:
- Usuarios - clases de persona y uidObject con el atributo userPassword.
- Grupos de usuarios: clase organizationalUnit, en la que los usuarios están ubicados .
- Roles - groupOfNames object class.
- Permisos: no estoy seguro acerca de esta, tal vez también groupOfNames clase.
La idea es tener un acceso rápido de un usuario o un grupo a una lista de funciones que este usuario o grupo tenga. Sé que puedo poner a los usuarios y grupos en los atributos de "miembro" de un rol, pero luego tendré que analizar todos los roles para encontrar cuáles tienen este usuario en la lista. ¿Hay alguna manera de tener algo como el atributo "miembro" en un objeto Persona?
En general, ¿alguien sabe de una buena implementación de seguridad basada en roles en LDAP? No pude encontrar buena documentación o tutoriales sobre este tema. Estoy usando ApacheDS como un servidor LDAP actualmente, pero estoy abierto a sugerencias.
Gracias, lo intentaré. ou atributo es una buena idea. En mi caso, una persona puede pertenecer a más de una unidad organizativa, por lo que no estoy seguro de cuál es mejor: tener múltiples atributos ou o quizás también hacer grupos groupOfNames. – user1031054
@ user1031054 ver las ediciones. – EJP
buen artículo de ldap: http://www.zytrax.com/books/ldap/ – cleverpig