La schermata di benvenuto mostra l'utente DN dell'utente ldap accanto al link "sign out" (esci) | AEM 6.2

Problema

In AEM6.2, quando gli utenti LDAP accedono e vanno su /welcome.html, la schermata di benvenuto dell'interfaccia utente classica mostra il loro LDAP DN completo accanto al link "sign-out" in alto a destra dello schermo.

Causa

Questo è un problema con l'interfaccia utente classica in AEM6.2.

Risoluzione

Per risolvere questo problema, puoi modificare il codice del prodotto aggiungendo una sovrapposizione di welcome.jsp.

  1. Vai su http://host:port/crx/de/index.jsp e accedi come amministratore.
  2. Passa a /apps e crea la struttura di cartelle /apps/cq/core/components.
  3. Fai clic su Salva tutto.
  4. Vai a /libs/cq/core/componenti.
  5. Fai clic con il tasto destro del mouse sul sottonodo di benvenuto e seleziona Copia.
  6. Torna a /apps/cq/core/components.
  7. Fai clic con il tasto destro del mouse sul nodo dei componenti e seleziona Incolla.
  8. Apri il file /apps/cq/core/components/welcome/welcome.jsp per l'editing.
  9. Aggiungi questo codice [1] dopo queste righe [2].
  10. Fai clic su Salva tutto.

Quando gli utenti effettuano il login, vedono visualizzati i loro nomi completi.

[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();
}

Scarica

 Adobe

Ottieni supporto in modo più facile e veloce

Nuovo utente?

Adobe MAX 2024

Adobe MAX

The Creativity Conference

14-16 ottobre Miami Beach e online

Adobe MAX 2024

Adobe MAX

The Creativity Conference

14-16 ottobre Miami Beach e online