Configuración básica de Active Directory
Esta es la configuración sugerida para cuando los roles y los usuarios están definidos en el mismo nodo; en caso contrario, consulte otro ejemplo.
Estructura LDAP
Sección titulada «Estructura LDAP»dc=com dc=company cn=users cn=ROLE_ADMIN member=okmAdmin member=user1 cn=ROLE_USER member=user3 cn=ROLE_XXXX member=user2 cn=ROLE_YYYY member=user4 ... sAMAccountName=okmAdmin memberOf=cn=ROLE_ADMIN,cn=users,dc=company,dc=com userPrincipalName=okmAdmin@mail.com cn=OpenKM Administrator sAMAccountName=user1 memberOf=cn=ROLE_ADMIN,cn=users,dc=company,dc=com userPrincipalName=user1@mail.com cn=User Name 1 sAMAccountName=user2 memberOf=cn=ROLE_USER,cn=users,dc=company,dc=com userPrincipalName=user2@mail.com cn=User Name 3Paso 1 - parámetros de configuración
Sección titulada «Paso 1 - parámetros de configuración»- Los usuarios que sean miembros de ROLE_ADMIN o ROLE_USER se crean en el nodo de usuarios (deberían ser los nombres distinguidos CN=ROLE_ADMIN,cn=users,DC=company,DC=com y CN=ROLE_USER,cn=users,DC=company,DC=com).
- Los grupos pueden crearse en cualquier nodo de Active Directory, porque DC=company,DC=com está establecido como filtro base, principal.ldap.role.search.base=DC=company,DC=com.
- Se listarán todos los grupos de Active Directory porque no se ha aplicado ninguna restricción de filtro principal.ldap.role.search.filter=(objectclass=group).
Vaya a Administration > Configuration parameters:
| Field / Property | Type | Description |
|---|---|---|
| principal.adapter | String | El parámetro está obsoleto desde la versión 8.1.12 com.openkm.plugin.principal.LdapPrincipalAdapter |
| system.login.lowercase | String | true |
| principal.ldap.server | String | ldap://192.168.0.6:389 |
| principal.ldap.security.principal | String | CN=Administrator,cn=users,dc=company,dc=local |
| principal.ldap.security.credentials | String | password |
| principal.ldap.referral | String | |
| principal.ldap.users.from.roles | Boolean | false |
| principal.ldap.user.attribute | String | sAMAccountName |
| principal.ldap.user.search.base | List | cn=users,dc=company,dc=local |
| principal.ldap.user.search.filter | String | (objectclass=person) |
| principal.ldap.username.attribute | String | cn |
| principal.ldap.username.search.base | String | cn=users,dc=company,dc=local |
| principal.ldap.username.search.filter | String | (&(objectClass=person)(sAMAccountName={0})) |
| principal.ldap.mail.attribute | String | |
| principal.ldap.mail.search.base | String | cn=users,dc=company,dc=local |
| principal.ldap.mail.search.filter | String | (&(objectClass=person)(sAMAccountName={0})) |
| principal.ldap.role.attribute | String | cn |
| principal.ldap.role.search.base | List | cn=users,dc=company,dc=local |
| principal.ldap.role.search.filter | String | (objectclass=group) |
| principal.ldap.roles.by.user.attribute | String | memberOf |
| principal.ldap.roles.by.user.search.base | String | DC=company,DC=com |
| principal.ldap.roles.by.user.search.filter | String | (&(objectClass=person)(sAMAccountName={0})) |
| principal.ldap.users.by.role.attribute | String | member |
| principal.ldap.users.by.role.search.base | String | cn={0},cn=users,dc=company,dc=local |
| principal.ldap.users.by.role.search.filter | String | (objectclass=group) |
Paso 2 - configurar el login
Sección titulada «Paso 2 - configurar el login»Aplique los cambios en el fichero openkm.properties.
El parámetro “okm.authentication.database” se usa para deshabilitar el login por base de datos.
El parámetro “okm.authentication.ldap” se usa para habilitar el login por LDAP.
#Authenticationokm.authentication.database=falseokm.authentication.ldap=true
#LDAPldap.server=ldap://192.168.0.13ldap.manager.distinguished.name=CN=Administrator,CN=Users,DC=openkm,DC=localldap.manager.password=*secret*ldap.base=DC=openkm,DC=localldap.role.attribute=cnldap.user.search.filter=sAMAccountName={0}ldap.role.search.filter=member={0}Otra opción para configurar el login
Sección titulada «Otra opción para configurar el login»En algunos casos, puede interesarle establecer la configuración en el fichero openkm.xml; consulte la sección de documentación Configuring openkm.xml para más información.
<security:ldap-server id="ldapServer" url="ldap://192.168.0.6:389/DC=ldap,dc=company,dc=local" manager-dn="CN=Administrator,cn=users,dc=company,dc=local" manager-password="password"/>
<security:authentication-manager alias="authenticationManager"> <security:ldap-authentication-provider server-ref="ldapServer" user-search-base="cn=Users" user-search-filter="(sAMAccountName={0})" group-search-base="cn=Users" group-search-filter="(member={0})" group-role-attribute="cn" role-prefix="none"> </security:ldap-authentication-provider></security:authentication-manager>
<beans:bean id="userDetailService" class="com.openkm.spring.UserTenantDetailsService"/>