Cloud Service-Konfigurationen

Letzte Aktualisierung: 2023-07-14

Konfigurationen dienen dazu, die Logik und Struktur zum Speichern von Dienstkonfigurationen bereitzustellen.

Sie können die vorhandenen Instanzen erweitern, um Ihre eigenen Konfigurationen zu erstellen.

Konzepte

Die bei der Entwicklung der Konfigurationen verwendeten Prinzipien basieren auf folgenden Konzepten:

  • Dienste/Adapter werden zum Abrufen der Konfigurationen verwendet.
  • Konfigurationen (z. B. Eigenschaften/Absätze) werden von den übergeordneten Elementen übernommen.
  • Referenziert von Analyseknoten nach Pfad.
  • Einfach erweiterbar.
  • Sie können auch komplexere Konfigurationen unterstützen, z. B. Adobe Analytics .
  • Unterstützung für Abhängigkeiten (z. B. Adobe Analytics Plug-ins benötigen eine Adobe Analytics Konfiguration).

Struktur

Der Basispfad der Konfigurationen lautet:

/etc/cloudservices.

Für jeden Konfigurationstyp werden eine Vorlage und eine Komponente bereitgestellt. Dies ermöglicht Konfigurationsvorlagen, die nach der Anpassung die meisten Anforderungen erfüllen können.

Gehen Sie wie folgt vor, um eine Konfiguration für neue Dienste bereitzustellen:

  • Erstellen Sie eine Service-Seite in

    /etc/cloudservices

  • Darunter:

    • eine Konfigurationsvorlage
    • eine Konfigurationskomponente

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

cq/cloudserviceconfigs/templates/configpage

Oder 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

Definieren Sie eine resourceType , der auf die benutzerdefinierte 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

Nachdem Sie Ihre Vorlage und Komponente eingerichtet haben, können Sie Ihre Konfiguration hinzufügen, indem Sie Unterseiten hinzufügen unter:

/etc/cloudservices/<service-name>

Inhaltsmodell

Das Inhaltsmodell wird als cq:Page in folgendem Verzeichnis gespeichert:

/etc/cloudservices/<service-name>(/*)

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

Die Konfigurationen werden unter dem untergeordneten Knoten 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

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

AEM-Integration

Verfügbare Dienste sind auf der Registerkarte Cloud-Services des Dialogfelds Seiteneigenschaften aufgeführt (bei jeder Seite, die von foundation/components/page oder wcm/mobile/components/page erbt).

Die Registerkarte bietet außerdem Folgendes:

  • einen Link zum Speicherort, an dem Sie den Dienst aktivieren können
  • eine Konfiguration (Unterknoten des Dienstes) aus einem Pfadfeld auswählen

Kennwortverschlüsselung

Beim Speichern von Benutzeranmeldeinformationen für den Dienst sollten alle Kennwörter verschlüsselt werden.

Sie können dies erreichen, indem Sie ein ausgeblendetes Formularfeld hinzufügen. Dieses Feld sollte eine Anmerkung enthalten. @Encrypted im Eigenschaftsnamen; das heißt für die password -Feld 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 der EcryptionPostProcessor nur POST-Anfragen an /etc/cloudservices.

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

Eigenschaft Beschreibung
componentReference Referenzpfad zu einer Komponente, die automatisch in die Seite aufgenommen werden soll.
Dies wird für zusätzliche Funktionen und JS-Einschlüsse genutzt.
Dazu gehört die Komponente auf der Seite, auf der
cq/cloudserviceconfigs/components/servicecomponents
enthalten ist (normalerweise vor dem body-Tag).
Im Falle von Adobe Analytics und Adobe Target verwenden wir dies, um zusätzliche Funktionen wie JavaScript-Aufrufe zur Verfolgung des Besucherverhaltens einzuschließen.
description Kurze Beschreibung des Dienstes.
descriptionExtended Erweiterte Beschreibung des Dienstes.
ranking Position des Dienstes in der Rangfolge zur Verwendung in Listen.
selectableChildren Filter zum Anzeigen von Konfigurationen im Dialogfeld „Seiteneigenschaften“
serviceUrl URL zur Website des Dienstes.
serviceUrlLabel Titel für Dienst-URL.
thumbnailPath Pfad zur Miniaturansicht für den Dienst.
visible Sichtbarkeit im Dialogfeld „Seiteneigenschaften“, standardmäßig sichtbar (optional)

Anwendungsfälle

Diese Dienste werden standardmäßig bereitgestellt:

Auf dieser Seite