Cloud Service-Konfigurationen

Konfigurationen sollen die Logik und Struktur für die Speicherung von Dienstkonfigurationen bereitstellen.

Sie können die vorhandenen Instanzen erweitern und Ihre eigenen Konfigurationen erstellen.

Konzepte

Die Prinzipien, die bei der Entwicklung von Konfigurationen zum Einsatz kommen, basieren auf den folgenden Konzepten:

  • Mit Diensten/Adaptern werden die Konfigurationen abgerufen.
  • Konfigurationen (z. B. Eigenschaften/Absätze) werden von den übergeordneten Elementen geerbt.
  • Die Verweise erfolgen von Analyseknoten nach Pfad.
  • Sie sind einfach erweiterbar.
  • Hat die Flexibilität, komplexere Konfigurationen zu berücksichtigen, wie z. B. Adobe Analytics.
  • Unterstützung für Abhängigkeiten (z. Adobe Analytics-Plugins benötigen eine Adobe Analytics-Konfiguration).

Struktur

Der Basispfad von Konfigurationen ist:

/etc/cloudservices.

Für jeden Konfigurationstyp werden eine Vorlage und eine Komponente bereitgestellt. Auf diese Weise können Konfigurationsvorlagen nach der Anpassung die meisten Anforderungen erfüllen.

So stellen Sie eine Konfiguration für neue Dienste bereit:

  • Erstellen Sie eine Service-Seite in

    /etc/cloudservices

  • und darunter:

    • eine Konfigurationsvorlage und
    • eine Konfigurationskomponente erstellen.

Die Vorlage und die Komponente müssen sling:resourceSuperType von der Basisvorlage erben:

cq/cloudserviceconfigs/templates/configpage

bzw. von der Basiskomponente:

cq/cloudserviceconfigs/components/configpage

Der Dienstanbieter sollte auch die Dienstseite bereitstellen:

/etc/cloudservices/<service-name>

Vorlage

Ihre Vorlage erweitert die Basisvorlage:

cq/cloudserviceconfigs/templates/configpage

und definiert einen resourceType, der auf die angepasste Komponente verweist.

/libs/cq/analytics/templates/sitecatalyst
sling:resourceSuperType = cq/cloudserviceconfigs/templates/configpage
allowedChildren = /libs/cq/analytics/templates/sitecatalyst
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
componentReference = cq/analytics/components/sitecatalyst
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/sitecatalystpage

/libs/cq/analytics/templates/generictracker
sling:resourceSuperType = cq/cloudservices/templates/configpage
allowedChildren = /libs/cq/analytics/templates/generictracker
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/generictrackerpage

Komponenten

Ihre Komponente sollte die Basiskomponente erweitern:

cq/cloudserviceconfigs/templates/configpage

/libs/cq/analytics/components/sitecatalystpage

/libs/cq/analytics/components/generictrackerpage

Nach dem Einrichten der Vorlage und der Komponente können Sie Ihre Konfiguration hinzufügen, indem Sie unter folgendem Pfad untergeordnete Seiten hinzufügen:

/etc/cloudservices/<service-name>

Inhaltsmodell

Das Inhaltsmodell wird als cq:Page unter:

/etc/cloudservices/<service-name>(/*?lang=de)

/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config

Die Konfigurationen werden unter dem Unterknoten jcr:content gespeichert.

  • Feste Eigenschaften, die in einem Dialogfeld definiert wurden, sollten direkt auf dem Knoten jcr:node gespeichert werden.
  • Dynamische Elemente (die parsys oder iparsys nutzen) speichern die Komponentendaten auf einem untergeordneten Knoten.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*

API

Die Referenzdokumentation zur API finden Sie unter com.day.cq.wcm.webservicesupport.

AEM-Integration

Die verfügbaren Dienste werden auf der Registerkarte Cloud Services des Dialogfelds Seiteneigenschaften aufgeführt (auf allen Seiten, die von foundation/components/page oder wcm/mobile/components/page erben).

Die Registerkarte bietet zusätzlich:

  • einen Link zu dem Verzeichnis, in dem Sie den Dienst aktivieren können
  • die Auswahl einer Konfiguration (untergeordneter Knoten des Dienstes) aus einem Pfad-Feld

Kennwortverschlüsselung

Beim Speichern der Anmeldedaten der Benutzer für den Dienst sollten alle Kennwörter verschlüsselt werden.

Zu diesem Zweck können Sie ein ausgeblendetes Formularfeld hinzufügen. Dieses Feld sollte die Anmerkung @Encrypted im Eigenschaftsnamen enthalten. d. h. für das Feld password würde der Name wie folgt geschrieben:

password@Encrypted

Diese Eigenschaft wird dann automatisch (mit dem CryptoSupport-Dienst) durch den EncryptionPostProcessor verschlüsselt.

HINWEIS

Dies ist mit den standardmäßigen [SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)-Anmerkungen vergleichbar.

HINWEIS

Standardmäßig verschlüsselt EcryptionPostProcessor nur POST-Anforderungen, die an /etc/cloudservices gesendet wurden.

Zusätzliche Eigenschaften für die jcr:content-Knoten der Dienstseite

Eigenschaft Beschreibung
componentReference Referenzpfad zu einer Komponente, die automatisch in die Seite eingefügt werden soll.
Dies wird für zusätzliche Funktionen und JS-Einschlüsse genutzt.
Dazu gehört die Komponente auf der Seite,
cq/cloudserviceconfigs/components/servicecomponents
auf der sie enthalten ist (normalerweise vor dem body Tag).
Bei Analytics und Target schließen wir damit zusätzliche Funktionen ein, z. B. JavaScript-Aufrufe, um das Verhalten der Besucher nachzuverfolgen.
description Kurze Beschreibung des Dienstes.
descriptionExtended Erweiterte Beschreibung des Dienstes.
Ranking Service-Ranking zur Verwendung in Listen.
selzableChildren Filter für die Anzeige von Konfigurationen im Dialogfeld "Seiteneigenschaften".
serviceUrl URL zur Dienst-Website.
serviceUrlLabel Bezeichnung für Dienst-URL.
thumbnailPath Pfad zur Miniaturansicht für den Dienst.
visible Sichtbarkeit im Dialogfeld "Seiteneigenschaften" visible standardmäßig (optional)

Anwendungsfälle

Diese Dienste werden standardmäßig bereitgestellt:

Auf dieser Seite

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now