Configuration de Cloud Services cloud-service-configurations

Les configurations sont conçues pour fournir la logique et la structure de stockage des configurations de service.

Vous pouvez étendre les instances existantes pour créer vos propres configurations.

Concepts concepts

Les principes utilisés dans le développement des configurations ont été basés sur les concepts suivants :

  • Les services/adaptateurs sont utilisés pour récupérer les configurations.
  • Les configurations (par exemple, les propriétés/paragraphes) sont héritées des parents.
  • Référencé à partir des noeuds d’analyse par chemin d’accès.
  • Facilement extensible.
  • Permet de répondre à des configurations plus complexes, telles Adobe Analytics.
  • Prise en charge des dépendances (par exemple, Adobe Analytics les modules externes nécessitent un Adobe Analytics ).

Structure structure

Le chemin de base des configurations est :

/etc/cloudservices.

Pour chaque type de configuration, un modèle et un composant sont fournis. Cela permet de disposer de modèles de configuration qui peuvent répondre à la plupart des besoins après avoir été personnalisés.

Pour fournir une configuration pour les nouveaux services, procédez comme suit :

  • Création d’une page de service dans

    /etc/cloudservices

  • Sous :

    • un modèle de configuration ;
    • un composant de configuration ;

Le modèle et le composant doivent hériter du sling:resourceSuperType du modèle de base :

cq/cloudserviceconfigs/templates/configpage

Ou composant de base, respectivement

cq/cloudserviceconfigs/components/configpage

Le fournisseur de services doit également fournir la page de service :

/etc/cloudservices/<service-name>

Modèle template

Votre modèle étend le modèle de base :

cq/cloudserviceconfigs/templates/configpage

Et définissez une resourceType qui pointe vers le composant personnalisé.

/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

Composants components

Votre composant doit étendre le composant de base :

cq/cloudserviceconfigs/templates/configpage

/libs/cq/analytics/components/sitecatalystpage

/libs/cq/analytics/components/generictrackerpage

Après avoir configuré votre modèle et votre composant, vous pouvez ajouter votre configuration en ajoutant des sous-pages sous :

/etc/cloudservices/<service-name>

Modèle de contenu content-model

Le modèle de contenu est stocké sous la forme cq:Page sous :

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

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

Les configurations sont stockées sous le sous-nœud jcr:content.

  • Les propriétés fixes, définies dans une boîte de dialogue, doivent être stockées directement sur le jcr:node.
  • Les éléments dynamiques (utilisant parsys ou iparsys) se servent d’un sous-nœud pour stocker les données du composant.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*

API api

Pour consulter la documentation de référence sur l’API, voir com.day.cq.wcm.webservicesupport.

Intégration d’AEM aem-integration

Les services disponibles sont répertoriés dans l’onglet Services cloud de la boîte de dialogue Propriétés de la page (de toute page héritant de foundation/components/page ou wcm/mobile/components/page).

L’onglet fournit également :

  • lien vers l’emplacement où vous pouvez activer le service.
  • choisir une configuration (sous-noeud du service) à partir d’un champ de chemin d’accès ;

Chiffrement de mot de passe password-encryption

Lors du stockage des informations d’identification d’utilisateur pour le service, tous les mots de passe doivent être chiffrés.

Pour cela, il faut ajouter un champ de formulaire masqué. Ce champ doit avoir l’annotation @Encrypted dans le nom de la propriété ; c’est-à-dire, pour la fonction password champ le nom serait écrit comme suit :

password@Encrypted

La propriété est alors automatiquement chiffrée (en utilisant le service CryptoSupport) par EncryptionPostProcessor.

NOTE
Ceci est similaire aux annotations [SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html) standard.
NOTE
Par défaut, EcryptionPostProcessor chiffre uniquement les requêtes POST effectuées sur /etc/cloudservices.

Propriétés supplémentaires pour les nœuds jcr:content de page de service additional-properties-for-service-page-jcr-content-nodes

Propriété
Description
componentReference
Chemin d’accès de référence à un composant à inclure automatiquement dans la page.
Ceci est utilisé pour des fonctionnalités supplémentaires et des inclusions JS.
Cela inclut le composant sur la page où
cq/cloudserviceconfigs/components/servicecomponents
est inclus (normalement avant la variable body).
Dans le cas de l’utilisation d’Adobe Analytics et d’Adobe Target, nous l’utilisons pour inclure des fonctionnalités supplémentaires, telles que les appels JavaScript pour effectuer le suivi du comportement des visiteurs.
description
Brève description du service.
descriptionExtended
Description étendue du service.
ranking
Classement des services à utiliser dans les listes.
selectableChildren
Filtre permettant d’afficher les configurations dans la boîte de dialogue des propriétés de la page.
serviceUrl
URL du site Web du service.
serviceUrlLabel
Libellé de l’URL du service.
thumbnailPath
Chemin d’accès à la miniature du service.
visible
Visibilité dans la boîte de dialogue des propriétés de page ; visible par défaut (facultatif)

Cas d’utilisation use-cases

Ces services sont fournis par défaut :

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2