Zurücksetzen des Administratorkennworts in AEM 6.3

Beschreibung

Das Administratorkennwort wurde vergessen und muss zurückgesetzt werden.


Umgebung


AEM 6.4,6.5

Auflösung

Schritte

  1. Geben Sie in der Eingabeaufforderung für den Server-Befehl den folgenden Befehl ein (ersetzen Sie den Pfad durch den Pfad zu Ihrem AEM Segmentspeicher)..AEM sollte beendet werden, bevor die folgenden Schritte ausgeführt werden:

java -jar oak-run-*.jar console path/to/crx-quickstart/repository/segmentstore --read-write ":load admin-reset.groovy"

  1. Geben Sie Folgendes ein:
:load admin-reset63.groovy
  1. Drücken Sie die Eingabetaste, und das Skript findet automatisch das Administratorkennwort und ändert es in "admin".
    Überprüfen Sie die Ausgabe:

    Found admin node : SegmentNodeBuilder{path=/home/users/some/path}
  2. AEM starten



Zusätzliche Informationen


Erforderliche Elemente:

  • oak-run jar
  • Skript "admin-reset.groovy"(herunterladen/entfernen .txt oder aus Inhalt erstellen)

HERUNTERLADEN

Datei abrufen

admin-reset.groovy

  1. importieren org.apache.jackrabbit.oak.spi.security.user.util.PasswordUtil
  2. importieren org.apache.jackrabbit.oak.spi.commit.CommitInfo
  3. importieren org.apache.jackrabbit.oak.spi.commit.EmptyHook
  4.  
  5. class Global {
  6.     statisch adminNode = null;
  7. }
  8.  
  9. void findAdminNode(ub) {
  10.     if (ub.hasProperty("rep:principalName") {)
  11.         if ("rep:principalName = admin".equals(ub.getProperty("rep:principalName").toString()) {
  12.             Global.adminNode = ub;
  13.         }
  14.     }
  15.     ub.childNodeNames.each { it -
  16.         if (Global.adminNode == null) {
  17.             findAdminNode(ub.getChildNode(it));
  18.         }
  19.     }
  20. }
  21.  
  22. ub = session.store.root.builder();
  23. findAdminNode(ub.getChildNode("home").getChildNode("users");
  24.  
  25. if (Global.adminNode) {
  26.     println("Administratorknoten gefunden: " + Global.adminNode.toString());
  27.     Global.adminNode.setProperty("rep:password", PasswordUtil.buildPasswordHash("admin");
  28.     session.store.merge(ub, EmptyHook.INSTANCE, CommitInfo.EMPTY);
  29. } else {
  30.     println("Administratorknoten konnte nicht gefunden werden.");
  31. }

Auf dieser Seite