Comment réinitialiser le mot de passe administrateur dans AEM 6.3
Découvrez comment réinitialiser le mot de passe administrateur dans AEM 6.3. Tu dois d'abord arrêter AEM.
Description description
Environnement
Adobe Experience Manager 6.4, 6.5
Problème/Symptômes
Le mot de passe administrateur est oublié et doit être réinitialisé.
Résolution resolution
Pour réinitialiser le mot de passe, procédez comme suit :
- Entrez la commande suivante dans l’invite de commande du serveur (remplacez le chemin par le chemin d’accès à votre banque de segments AEM). AEM doit être arrêté avant d'exécuter ces étapes :
java -jar oak-run-*.jar console path/to/crx-quickstart/repository/segmentstore --read-write ":load admin-reset.groovy"
- Saisissez les informations suivantes :
:load admin-reset63.groovy
- Appuyez sur Entrée. Le script recherche et remplace automatiquement le mot de passe administrateur par admin.
- Vérifiez la sortie, il est écrit :
Found admin node : SegmentNodeBuilder{path=/home/users/some/path}
- Démarrez AEM.
Informations supplémentaires
Éléments nécessaires :
- oak-run jar
- Script
admin-reset.groovy
(télécharger/supprimer .txt ou créer à partir du contenu)
TÉLÉCHARGER
admin-reset.groovy
import
org.apache.jackrabbit.oak.spi.security.user.util.PasswordUtil
import
org.apache.jackrabbit.oak.spi.commit.CommitInfo
import
org.apache.jackrabbit.oak.spi.commit.EmptyHook
class
Global {
static
adminNode =
null
;
}
void
findAdminNode(ub) {
if
(ub.hasProperty(
"rep:principalName"
)) {
if
(
"rep:principalName = admin"
.equals(ub.getProperty(
"rep:principalName"
).toString())) {
Global.adminNode = ub;
}
}
ub.childNodeNames.each { it ->
if
(Global.adminNode ==
null
) {
findAdminNode(ub.getChildNode(it));
}
}
}
ub = session.store.root.builder();
findAdminNode(ub.getChildNode(
"home"
).getChildNode(
"users"
));
if
(Global.adminNode) {
println(
"Found admin node: "
+ Global.adminNode.toString());
Global.adminNode.setProperty(
"rep:password"
, PasswordUtil.buildPasswordHash(
"admin"
));
session.store.merge(ub, EmptyHook.INSTANCE, CommitInfo.EMPTY);
}
else
{
println(
"Could not find admin node."
);
}