Última actualización el
Problema
En AEM 6.2, cuando los usuarios de LDAP inician sesión y se dirigen a /welcome.html, la pantalla de bienvenida de la interfaz de usuario clásica muestra su DN LDAP completo junto al enlace Cerrar sesión en la parte superior derecha de la pantalla.
Causa
Este es un problema con la interfaz de usuario clásica en AEM 6.2.
Resolución
Para solucionar este problema, puede modificar el código de producto añadiendo una sobreimpresión de welcome.jsp.
- Vaya a http://host:port/crx/de/index.jsp e inicie sesión como administrador.
- Vaya a /apps y cree la estructura de carpetas /apps/cq/core/components.
- Haga clic en Guardar todo.
- Vaya a /libs/cq/core/components.
- Haga clic con el botón derecho del ratón en el subnodo de bienvenida y seleccione Copiar.
- Vuelva a buscar /apps/cq/core/components.
- Haga clic con el botón derecho del ratón en el nodo de componentes y seleccione Pegar.
- Abra el archivo /apps/cq/core/components/welcome/welcome.jsp para editarlo.
- Añada este código [1] después de estas líneas [2].
- Haga clic en Guardar todo.
Cuando los usuarios inician sesión, ven sus nombres completos mostrados.
[1]
org.apache.jackrabbit.api.security.user.UserManager userManager = resourceResolver.adaptTo(org.apache.jackrabbit.api.security.user.UserManager.class); org.apache.jackrabbit.api.security.user.Authorizable authorizable = userManager.getAuthorizable(auth.getPrincipal()); if (authorizable.hasProperty("profile/familyName")) { name = authorizable.getProperty("profile/familyName")[0].getString(); } if (authorizable.hasProperty("profile/givenName")) { name = authorizable.getProperty("profile/givenName")[0].getString() + ((name.length() > 0)?" " + name:""); }
[2]
String name = auth == null ? null : auth.getPrincipal().getName(); if (name == null) { // workaround if user manager service is not ready yet. name = session.getUserID(); }
Descargar
Inicia sesión en tu cuenta