Dernière mise à jour le
Problème
Dans AEM 6.2, lorsque les utilisateurs LDAP se connectent et accèdent à /welcome.html, l'écran d'accueil de l'interface utilisateur classique affiche leur DN LDAP complet à côté du lien "Déconnexion" dans le coin supérieur droit de l'écran.
Cause
Ceci est un problème avec l'interface utilisateur classique dans AEM 6.2.
Résolution
Pour résoudre ce problème, vous pouvez modifier le code du produit en ajoutant une superposition de welcome.jsp.
- Accédez à http://host:port/crx/de/index.jsp et connectez-vous en tant qu'administrateur.
- Accédez à /apps et créez la structure de dossiers /apps/cq/core/components.
- Cliquez sur Tout enregistrer.
- Accédez à /libs/cq/core/components.
- Cliquez avec le bouton droit de la souris sur le sous-nœud welcome et sélectionnez Copy.
- Accédez à /apps/cq/core/components.
- Cliquez avec le bouton droit sur le nœud composants et sélectionnez Coller.
- Ouvrez le fichier /apps/cq/core/components/welcome/welcome.jsp pour le modifier.
- Ajoutez ce code [1] après ces lignes [2].
- Cliquez sur Tout enregistrer.
Lorsque les utilisateurs se connectent, ils voient leurs noms complets affichés.
[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(); }
Telechargement
Accéder à votre compte