AEM 6.4 hat das Ende der erweiterten Unterstützung erreicht und diese Dokumentation wird nicht mehr aktualisiert. Weitere Informationen finden Sie in unserer technische Unterstützung. Unterstützte Versionen suchen here.
Administratoren müssen häufig auftretende Aufgaben in jedem System automatisieren oder vereinfachen. In AEM sind beispielsweise die Verwaltung von Benutzern, die Installation von Paketen und die Verwaltung von OSGi-Bundles Aufgaben, die häufig durchgeführt werden müssen.
Da das Sling-Framework, auf dem AEM aufsetzt, auf dem RESTful-Prinzip basiert, lässt sich fast jede Aufgabe mit einem URL-Aufruf erledigen. cURL kann verwendet werden, um solche URL-Aufrufe auszuführen, und kann ein nützliches Tool für AEM Administratoren sein.
Bei cURL handelt es sich um ein Open-Source-Befehlszeilen-Tool für die URL-Manipulation. Es unterstützt zahlreiche Internetprotokolle, darunter HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, DAP, DICT, TELNET, FILE, IMAP, POP3, SMTP und RTSP.
cURL ist ein bewährtes und weit verbreitetes Tool zum Abrufen oder Senden von Daten mithilfe der URL-Syntax und wurde ursprünglich 1997 veröffentlicht. Der Name "cURL"bedeutete ursprünglich "see URL".
Aufgrund der RESTful-Eigenschaft des Sling-Frameworks, auf dem AEM erstellt wird, können die meisten Aufgaben auf einen URL-Aufruf reduziert werden, der mit cURL ausgeführt werden kann. Aufgaben zur Inhaltsbearbeitung wie das Aktivieren von Seiten und das Starten von Workflows sowie operative Aufgaben z. B. Paketverwaltung und Benutzerverwaltung können mithilfe von cURL automatisiert werden. Darüber hinaus können Sie Erstellen einer eigenen cURL -Befehle für die meisten Aufgaben in AEM.
Jeder AEM Befehl, der über cURL ausgeführt wird, muss genau wie jeder Benutzer zu AEM autorisiert werden. Alle ACLs und Zugriffsberechtigungen werden beachtet, wenn cURL zum Ausführen eines AEM Befehls verwendet wird.
cURL ist ein Standardteil von macOS und einigen Linux-Distributionen. Es ist jedoch für die meisten Betriebssysteme verfügbar. Die aktuellen Downloads finden Sie unter https://curl.haxx.se/download.html.
Das Quell-Repository von cURL finden Sie auch auf GitHub.
cURL-Befehle können für die meisten Vorgänge in AEM erstellt werden, z. B. das Auslösen von Workflows, das Überprüfen von OSGi-Konfigurationen, das Auslösen von JMX-Befehlen, das Erstellen von Replikationsagenten und vieles mehr.
Um den exakten Befehl zu finden, den Sie für Ihre jeweilige Operation benötigen, müssen Sie die Entwicklertools in Ihrem Browser verwenden, um den Serveraufruf beim Ausführen des AEM zu erfassen.
In den folgenden Schritten wird beschrieben, wie Sie dies mit der Erstellung einer neuen Seite im Chrome-Browser durchführen.
Bereiten Sie die Aktion vor, die Sie in AEM aufrufen möchten. In diesem Beispiel sind wir am Ende des Assistenten Seite erstellen angekommen, haben jedoch noch nicht auf Erstellen geklickt.
Starten Sie die Entwicklertools und wählen Sie die Netzwerk Registerkarte. Klicken Sie auf Protokoll beibehalten vor dem Löschen der Konsole.
Klicken Erstellen im Seite erstellen -Assistenten, um den Workflow zu erstellen.
Klicken Sie mit der rechten Maustaste auf die resultierende POST und wählen Sie Kopieren -> Als cURL kopieren.
Kopieren Sie den cURL-Befehl in einen Texteditor. Entfernen Sie alle Header aus dem Befehl, die mit -H
beginnen (im folgenden Screenshot in blauer Farbe hervorgehoben), und fügen Sie die korrekten Authentifizierungsparameter hinzu, z. B. -u <user>:<password>
.
Führen Sie den cURL-Befehl über die Befehlszeile aus und zeigen Sie die Antwort an.
Im Folgenden finden Sie eine Liste AEM cURL-Befehle für allgemeine administrative und betriebliche Aufgaben.
Bei den folgenden Beispielen wird vorausgesetzt, dass AEM auf dem localhost
an Port 4502
ausgeführt wird und den Benutzer admin
mit dem Kennwort admin
nutzt. Zusätzliche Befehlsplatzhalter werden in spitzen Klammern festgelegt.
curl -u <user>:<password> http://<host>:<port>/crx/packmgr/service.jsp?cmd=ls
curl -u <user>:<password> -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/mycontent.zip?cmd=create -d packageName=<name> -d groupName=<name>
curl -u <user>:<password> -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/mycontent.zip?cmd=preview
curl -u <user>:<password> -X POST http://localhost:4502/crx/packmgr/service/console.html/etc/packages/mycontent.zip?cmd=contents
curl -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/mycontent.zip?cmd=build
curl -u <user>:<password> -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/mycontent.zip?cmd=rewrap
curl -u <user>:<password> -X POST -Fname=<New Name> http://localhost:4502/etc/packages/<Group Name>/<Package Name>.zip/jcr:content/vlt:definition
curl -u <user>:<password> -F cmd=upload -F force=true -F package=@test.zip http://localhost:4502/crx/packmgr/service/.json
curl -u <user>:<password> -F cmd=install http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/test.zip
curl -u <user>:<password> -F cmd=uninstall http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/test.zip
curl -u <user>:<password> -F cmd=delete http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/test.zip
curl -u <user>:<password> http://localhost:4502/etc/packages/my_packages/test.zip
curl -u <user>:<password> -FcreateUser= -FauthorizableId=hashim -Frep:password=hashim http://localhost:4502/libs/granite/security/post/authorizables
curl -u <user>:<password> -FcreateGroup=group1 -FauthorizableId=testGroup1 http://localhost:4502/libs/granite/security/post/authorizables
curl -u <user>:<password> -Fprofile/age=25 http://localhost:4502/home/users/h/hashim.rw.html
curl -u <user>:<password> -FcreateUser=testuser -FauthorizableId=hashimkhan -Frep:password=hashimkhan -Fprofile/gender=male http://localhost:4502/libs/granite/security/post/authorizables
curl -u <user>:<password> -FcreateUser=testuser -FauthorizableId=testuser -Frep:password=abc123 -Fmembership=contributor http://localhost:4502/libs/granite/security/post/authorizables
curl -u <user>:<password> -FaddMembers=testuser1 http://localhost:4502/home/groups/t/testGroup.rw.html
curl -u <user>:<password> -FremoveMembers=testuser1 http://localhost:4502/home/groups/t/testGroup.rw.html
curl -u <user>:<password> -Fmembership=contributor -Fmembership=testgroup http://localhost:4502/home/users/t/testuser.rw.html
curl -u <user>:<password> -FdeleteAuthorizable= http://localhost:4502/home/users/t/testuser
curl -u <user>:<password> -FdeleteAuthorizable= http://localhost:4502/home/groups/t/testGroup
Detaillierte Informationen finden Sie unter Sichern und Wiederherstellen.
curl -u <user>:<password> -Faction=start http://localhost:4502/system/console/bundles/<bundle-name>
curl -u <user>:<password> -Faction=stop http://localhost:4502/system/console/bundles/<bundle-name>
curl -H "CQ-Action: Activate" -H "CQ-Handle: /content/test-site/" -H "CQ-Path: /content/test-site/" -H "Content-Length: 0" -H "Content-Type: application/octet-stream" http://localhost:4502/dispatcher/invalidate.cache
curl -H "CQ-Action: Deactivate" -H "CQ-Handle: /content/test-site/" -H "CQ-Path: /content/test-site/" -H "Content-Length: 0" -H "Content-Type: application/octet-stream" http://localhost:4502/dispatcher/invalidate.cache
curl -u <user>:<password> "http://localhost:4502/etc/replication/agents.author/publish/jcr:content.queue.json?agent=publish"
http://localhost:4502/etc/replication/agents.author/publish/jcr:content.queue.json?agent=publish
curl -X DELETE http://localhost:4502/etc/replication/agents.author/replication99 -u <user>:<password>
curl -u <user>:<password> -F "jcr:primaryType=cq:Page" -F "jcr:content/jcr:title=new-replication" -F "jcr:content/sling:resourceType=/libs/cq/replication/components/agent" -F "jcr:content/template=/libs/cq/replication/templates/agent" -F "jcr:content/transportUri=http://localhost:4503/bin/receive?sling:authRequestLogin=1" -F "jcr:content/transportUser=admin" -F "jcr:content/transportPassword={DES}8aadb625ced91ac483390ebc10640cdf"http://localhost:4502/etc/replication/agents.author/replication99
curl -u <user>:<password> -F "cmd=pause" -F "name=publish" http://localhost:4502/etc/replication/agents.author/publish/jcr:content.queue.json
curl -u <user>:<password> -F "cmd=clear" -F "name=publish" http://localhost:4502/etc/replication/agents.author/publish/jcr:content.queue.json
Detaillierte Informationen finden Sie unter Vergabe von Bewertungen und Abzeichen in Communities.
Detaillierte Informationen finden Sie unter Grundlagen zu Bewertungen und Abzeichen.
Detaillierte Informationen finden Sie unter MSRP – MongoDB Storage Resource Provider.
Detaillierte Informationen finden Sie unter Aktivieren von CRXDE Lite in AEM.
Detaillierte Informationen finden Sie unter Datenspeicherbereinigung.
Detaillierte Informationen finden Sie unter Opt-in für Adobe Analytics und Adobe Target.
Detaillierte Informationen finden Sie unter Single Sign-On.
Im Folgenden finden Sie eine Liste AEM cURL-Befehle zur Inhaltsbearbeitung.
Bei den folgenden Beispielen wird vorausgesetzt, dass AEM auf dem localhost
an Port 4502
ausgeführt wird und den Benutzer admin
mit dem Kennwort admin
nutzt. Zusätzliche Befehlsplatzhalter werden in spitzen Klammern festgelegt.
curl -u <user>:<password> -X POST -F path="/content/path/to/page" -F cmd="activate" http://localhost:4502/bin/replicate.json
curl -u <user>:<password> -X POST -F path="/content/path/to/page" -F cmd="deactivate" http://localhost:4502/bin/replicate.json
curl -u <user>:<password> -F cmd=activate -F ignoredeactivated=true -F onlymodified=true -F path=/content/geometrixx http://localhost:4502/etc/replication/treeactivation.html
curl -u <user>:<password> -X POST -F cmd="lockPage" -F path="/content/path/to/page" -F "_charset_"="utf-8" http://localhost:4502/bin/wcmcommand
curl -u <user>:<password> -X POST -F cmd="unlockPage" -F path="/content/path/to/page" -F "_charset_"="utf-8" http://localhost:4502/bin/wcmcommand
curl -u <user>:<password> -F cmd=copyPage -F destParentPath=/path/to/destination/parent -F srcPath=/path/to/source/location http://localhost:4502/bin/wcmcommand
Detaillierte Informationen finden Sie unter Programmgesteuerte Interaktion mit Workflows.
curl -u <user>:<password> -F jcr:primaryType=sling:Folder http://localhost:4502/etc/test
curl -u <user>:<password> -F :operation=delete http://localhost:4502/etc/test/test.properties
curl -u <user>:<password> -F":operation=move" -F":applyTo=/sourceurl" -F":dest=/target/parenturl/" https://localhost:4502/content
curl -u <user>:<password> -F":operation=copy" -F":applyTo=/sourceurl" -F":dest=/target/parenturl/" https://localhost:4502/content
curl -u <user>:<password> -F"*=@test.properties" http://localhost:4502/etc/test
curl -u <user>:<password> -F"test2.properties=@test.properties" http://localhost:4502/etc/test
curl -u <user>:<password> -F "*=@test.properties;type=text/plain" http://localhost:4502/etc/test
Detaillierte Informationen finden Sie unter Assets-HTTP-API.