Buenas prácticas de LDAP para filtrar usuarios y roles
Normalmente solo desea recuperar un subconjunto de los usuarios y roles presentes en su LDAP, para mostrarlos en las listas de la interfaz de usuario o para poder iniciar sesión.
Ejemplo basado en un único grupo LDAP
Sección titulada «Ejemplo basado en un único grupo LDAP»- Cree un grupo llamado OpenKM (CN=OpenKM,CN=users,DC=company,DC=com). Se usará para filtrar usuarios y roles.
- Asigne roles y usuarios como miembros del grupo OpenKM.
- Objetivo: solo los usuarios y roles que sean miembros del grupo OpenKM se mostrarán en las listas de la interfaz de usuario.
Para filtrar la interfaz de usuario:
| Campo / Propiedad | Tipo | Descripción |
|---|---|---|
| principal.ldap.user.search.filter | String | (&(objectclass=person)(memberOf=CN=OpenKM,CN=users,dc=company,dc=com)) |
| principal.ldap.role.search.filter | String | (&(objectclass=group)(memberOf=CN=OpenKM,CN=users,dc=company,dc=com)) |
| principal.ldap.users.by.role.search.filter | String | (&(objectclass=group)(cn={0})(memberOf=CN=OpenKM,CN=users,dc=company,dc=com)) |
| principal.ldap.roles.by.user.search.filter | String | (&(objectClass=person)(sAMAccountName={0})(memberOf=CN=OpenKM,CN=users,dc=company,dc=com)) |
Para restricciones de inicio de sesión:
Modifique openkm.properties con:
ldap.user.search.filter=(&(sAMAccountName={0})(memberOf=CN=OpenKM,CN=users,DC=company,DC=com))>Si usa openkm.xml, entonces use:
<module-option name="baseFilter">(&(sAMAccountName={0})(memberOf=CN=OpenKM,CN=users,DC=company,DC=com))>Ejemplo basado en los grupos ROLE_USER y ROLE_ADMIN
Sección titulada «Ejemplo basado en los grupos ROLE_USER y ROLE_ADMIN»- Cree un grupo llamado OpenKM (CN=OpenKM,CN=users,DC=company,DC=com). Se usará para filtrar roles.
- Asigne roles como miembros del grupo OpenKM.
- Objetivo: solo los roles que sean miembros del grupo OpenKM se mostrarán en las listas de la interfaz de usuario.
- Objetivo: solo los usuarios que sean miembros de los grupos ROLE_USER o ROLE_ADMIN se mostrarán en las listas de la interfaz de usuario.
Para filtrar la interfaz de usuario:
| Campo / Propiedad | Tipo | Descripción |
|---|---|---|
| principal.ldap.user.search.filter | String | (&(objectclass=person) (|(memberOf=cn=ROLE_USER,cn=users,dc=company,dc=com)(memberOf=cn=ROLE_ADMIN,cn=users,dc=company,dc=com))) |
| principal.ldap.role.search.filter | String | (&(objectclass=group)(memberOf=cn=OpenKM,dc=company,dc=com)) |
| principal.ldap.users.by.role.search.filter | String | (&(objectClass=group)(cn={0})(memberOf=cn=OpenKM,cn=users,DC=company,DC=com)) |
| principal.ldap.roles.by.user.search.filter | String | (&(objectClass=person)(sAMAccountName={0})(memberOf=cn=OpenKM,cn=users,DC=company,DC=com)) |
Para restricciones de inicio de sesión:
Modifique openkm.properties con:
ldap.user.search.filter=(&(sAMAccountName={0})(objectClass=person)(|(memberOf=CN=ROLE_USER,CN=users,dc=weyler,dc=local)(memberOf=CN=ROLE_ADMIN,CN=users,dc=weyler,dc=local)))Si usa openkm.xml, entonces use:
<module-option name="baseFilter">(&(sAMAccountName={0})(objectClass=person)(|(memberOf=CN=ROLE_USER,CN=users,dc=weyler,dc=local)(memberOf=CN=ROLE_ADMIN,CN=users,dc=weyler,dc=local)))