Configurations et l'explorateur de configuration

Les configurations AEM permettent de gérer les paramètres dans AEM et servent d'espaces de travail.

Qu’est-ce qu’une configuration ?

Une configuration peut être considérée sous deux angles différents.

  • Un administrateur utilise des configurations en tant qu’espaces de travail dans AEM pour définir et gérer des groupes de paramètres.
  • Un développeur utilise le mécanisme de configuration sous-jacent qui implémente les configurations pour conserver et rechercher les paramètres dans AEM.

En résumé : du point de vue d'un administrateur, les configurations sont la façon dont vous créez des espaces de travail pour gérer les paramètres dans AEM, tandis que le développeur doit comprendre comment AEM utilise et gère ces configurations dans le référentiel.

Quelle que soit votre perspective, les configurations répondent à deux objectifs principaux en AEM :

  • Les configurations activent certaines fonctionnalités pour certains groupes d’utilisateurs.
  • Les configurations définissent les droits d’accès pour ces fonctionnalités.

Configurations en tant qu'administrateur

L’administrateur AEM ainsi que les auteurs peuvent considérer les configurations comme des espaces de travail. Ces espaces de travail peuvent être utilisés pour rassembler des groupes de paramètres ainsi que leur contenu associé à des fins d’organisation en implémentant des droits d’accès pour ces fonctionnalités.

Des configurations peuvent être créées pour de nombreuses fonctionnalités différentes dans AEM.

Exemple

Par exemple, un administrateur peut créer deux configurations pour les modèles modifiables.

  • WKND-General
  • WKND-Magazine

L’administrateur peut alors créer des modèles de page généraux à l’aide de la configuration WKND-General, puis des modèles spécifiques au magazine sous WKND-Magazine.

L'administrateur peut alors associer le WKND-General à tout le contenu du site WKND. Cependant, la configuration WKND-Magazine ne serait associée qu'au site du magazine.

En procédant comme suit :

  • Lorsqu’un auteur de contenu crée une nouvelle page pour le magazine, il peut choisir entre des modèles généraux (WKND-General) ou des modèles de magazine (WKND-Magazine).
  • Lorsqu’un auteur de contenu crée une nouvelle page pour une autre partie du site qui n’est pas le magazine, il peut uniquement choisir parmi les modèles généraux (WKND-General).

Des configurations similaires sont possibles non seulement pour les modèles modifiables, mais également pour les configurations de cloud, les segments ContextHub et les modèles de fragments de contenu.

Utilisation de l’explorateur de configurations

Le navigateur de configuration permet à un administrateur de créer, gérer et configurer facilement des droits d’accès aux configurations dans AEM.

REMARQUE

Il n'est possible de créer des configurations à l'aide de l'explorateur de configuration que si votre utilisateur dispose des droits admin. admin des droits sont également requis pour attribuer des droits d'accès à la configuration ou pour modifier une configuration.

Création d'une configuration

Il est très simple de créer une nouvelle configuration dans AEM en utilisant le navigateur de configuration.

  1. Connectez-vous à AEM en tant que Cloud Service et dans le menu principal, sélectionnez Outils -> Général -> Navigateur de configuration.

  2. Appuyez ou cliquez sur Créer.

  3. Indiquez un Titre et un Nom pour votre configuration.

    Création d’une configuration

    • Le titre doit être descriptif.
    • Name deviendra le nom du noeud dans le référentiel.
      • Elle sera générée automatiquement en fonction du titre et ajustée selon les conventions d'appellation AEM.
      • Il peut être ajusté si nécessaire.
  4. Vérifiez le type de configuration que vous souhaitez autoriser.

  5. Appuyez ou cliquez sur Créer.

CONSEIL

Les configurations peuvent être imbriquées.

Modification des configurations et de leurs droits d'accès

Si vous considérez les configurations comme des espaces de travail, les droits d'accès peuvent être définis sur ces configurations afin de forcer qui peut accéder à ces espaces de travail ou qui ne peut pas y accéder.

  1. Connectez-vous à AEM en tant que Cloud Service et dans le menu principal, sélectionnez Outils -> Général -> Navigateur de configuration.

  2. Sélectionnez la configuration à modifier, puis appuyez ou cliquez sur Propriétés dans la barre d'outils.

  3. Sélectionnez les fonctionnalités supplémentaires que vous souhaitez ajouter à la configuration.

    REMARQUE

    Il n'est pas possible de désélectionner une fonction une fois la configuration créée.

  4. Utilisez le bouton Autorisations effectives pour vue une matrice de rôles et les autorisations actuellement accordées aux configurations.
    Fenêtre d'autorisations efficaces

  5. Pour attribuer de nouvelles autorisations, saisissez le nom de l’utilisateur ou du groupe dans le champ Sélectionner un utilisateur ou un groupe de la section Ajouter de nouvelles autorisations.

    • Les offres de champ Sélectionner un utilisateur ou un groupe se complètent automatiquement en fonction des utilisateurs et rôles existants.
  6. Sélectionnez l’utilisateur ou le rôle approprié dans les résultats de saisie semi-automatique.

    • Vous pouvez sélectionner plusieurs utilisateurs ou rôles.
  7. Vérifiez les options d’accès que les utilisateurs ou rôles sélectionnés doivent avoir et cliquez sur Ajouter.
    Ajouter les droits d’accès à une configuration

  8. Répétez les étapes pour sélectionner des utilisateurs ou des rôles et attribuer des droits d’accès supplémentaires si nécessaire.

  9. Appuyez ou cliquez sur Enregistrer et fermer une fois terminé.

Configurations en tant que développeur

En tant que développeur, il est important de savoir comment AEM en tant que Cloud Service fonctionne avec les configurations et comment il traite la résolution de configuration.

Séparation de la configuration et du contenu

Bien que l'administrateur et les utilisateurs puissent considérer les configurations comme des lieux de travail pour gérer différents paramètres et contenus, il est important de comprendre que les configurations et le contenu sont stockés et gérés séparément par AEM dans le référentiel.

  • /content est l’accueil de tout le contenu.
  • /conf est la base de toutes les configurations.

Le contenu référence sa configuration associée par le biais d’une propriété cq:conf. aem effectue une recherche basée sur le contenu et sa propriété contextuelle cq:conf permet de trouver la configuration appropriée.

Exemple

Dans cet exemple, supposons que vous ayez un code d'application qui s'intéresse aux paramètres DAM.

Conf conf = resource.adaptTo(Conf.class);
ValueMap imageServerSettings = conf.getItem("dam/imageserver");
String bgkcolor = imageServerSettings.get("bgkcolor", "FFFFFF");

Le point de départ de toute recherche de configuration est une ressource de contenu, généralement située sous /content. Il peut s’agir d’une page, d’un composant au sein d’une page, d’un fichier ou d’un dossier DAM. Il s'agit du contenu réel pour lequel nous recherchons la configuration appropriée qui s'applique dans ce contexte.

Maintenant que l'objet Conf est en main, nous pouvons récupérer l'élément de configuration spécifique qui nous intéresse. Dans ce cas, il s'agit de dam/imageserver, qui est un ensemble de paramètres liés à imageserver. L'appel getItem renvoie un ValueMap. Nous lisons ensuite une propriété de chaîne bgkcolor et fournissons une valeur par défaut de "FFFFF" au cas où la propriété (ou l'élément de configuration complet) n'existerait pas.

Examinons maintenant le contenu JCR correspondant :

/content/dam/wknd
    + jcr:content
      - cq:conf = "/conf/wknd"
    + image.png [dam:Asset]

/conf/wkns
    + settings
      + dam
        + imageserver [cq:Page]
          + jcr:content
            - bgkcolor = "FF0000"

Dans cet exemple, nous supposons ici un dossier DAM spécifique à WKND et une configuration correspondante. À partir de ce dossier /content/dam/wknd, nous verrons qu'il existe une propriété de chaîne nommée cq:conf qui référence la configuration qui doit s'appliquer à la sous-arborescence. La propriété est généralement définie sur le jcr:content d’un dossier ou d’une page de ressources. Ces liens conf sont explicites, il est donc facile de les suivre en regardant simplement le contenu dans CRXDE.

En entrant /conf, nous suivons la référence et voyons qu'il y a un noeud /conf/wknd. Il s'agit d'une configuration. Veuillez noter que sa recherche est totalement transparente par rapport au code de la demande. L'exemple de code n'a jamais de référence dédiée, il est masqué derrière l'objet Conf. La configuration qui s’applique est entièrement contrôlée par le contenu JCR.

Nous voyons que la configuration contient un noeud settings de nom fixe qui contient les éléments réels, y compris dam/imageserver dont nous avons besoin dans notre cas. Un tel élément peut être considéré comme un "document de paramètres" et est généralement représenté par un cq:Page contenant un jcr:content contenu réel.

Enfin, nous voyons la propriété bgkcolor dont notre exemple de code a besoin. Le ValueMap que nous récupérons de getItem est basé sur le noeud jcr:content de la page.

Résolution de configuration

L'exemple de base ci-dessus montrait une configuration unique. Mais il existe de nombreux cas où vous souhaitez avoir différentes configurations, comme une configuration globale par défaut, une configuration différente pour chaque marque et peut-être une configuration spécifique pour vos sous-projets.

Pour ce faire, la recherche de configuration dans AEM dispose d’un mécanisme d’héritage et de secours dans l’ordre de préférence suivant :

  1. /conf/<siteconfig>/<parentconfig>/<myconfig>
    • Configuration spécifique référencée à partir de cq:conf quelque part dans /content
    • La hiérarchie est arbitraire et peut être conçue tout comme la structure de votre site. Ce n'est pas l'activité du code de l'application de le savoir.
    • Modifiable au moment de l’exécution par les utilisateurs disposant de privilèges de configuration
  2. /conf/<siteconfig>/<parentconfig>
    • Parcourir les parents pour les configurations de secours
    • Modifiable au moment de l’exécution par les utilisateurs disposant de privilèges de configuration
  3. /conf/<siteconfig>
    • Parcourir les parents pour les configurations de secours
    • Modifiable au moment de l’exécution par les utilisateurs disposant de privilèges de configuration
  4. /conf/global
    • Paramètres globaux du système
    • Valeurs par défaut généralement globales pour votre installation
    • Défini par un rôle admin
    • Modifiable au moment de l’exécution par les utilisateurs disposant de privilèges de configuration
  5. /apps
    • Valeurs par défaut de l’application
    • Corrigé par le déploiement des applications
    • Lecture seule au moment de l’exécution
  6. /libs
    • Paramètres par défaut AEM produit
    • Uniquement modifiable par Adobe, accès au projet non autorisé
    • Corrigé par le déploiement des applications
    • Lecture seule au moment de l’exécution

Utilisation des configurations

Les configurations dans AEM sont basées sur les configurations Sling de prise en compte du contexte. Les lots Sling fournissent une API de service qui peut être utilisée pour obtenir des configurations contextuelles. Les configurations sensibles au contexte sont des configurations qui sont liées à une ressource de contenu ou à une arborescence de ressources, comme décrit dans l'exemple précédent.

Pour plus d'informations sur les configurations basées sur le contexte, des exemples et leur utilisation, consultez la documentation Sling.

Console Web ConfMgr

À des fins de débogage et de test, il existe une console Web ConfMgr à https://<host>:<port>/system/console/conf, qui peut afficher des configurations pour un chemin/élément donné.

ConfMgr

Fournissez simplement :

  • Chemin d’accès au contenu
  • Item
  • User

Cliquez sur Résoudre pour voir quelles configurations sont résolues et recevoir un exemple de code qui résoudra ces configurations.

Console Web de configuration tenant compte du contexte

À des fins de débogage et de test, il existe une console Web Configuration adaptée au contexte à l’adresse https://<host>:<port>/system/console/slingcaconfig, qui permet d’interroger des configurations contextuelles dans le référentiel et d’afficher leurs propriétés.

Console Web de configuration prenant en compte le contexte

Fournissez simplement :

  • Chemin d’accès au contenu
  • Nom de configuration

Cliquez sur Résoudre pour récupérer les chemins de contexte et les propriétés associés pour la configuration sélectionnée.

Sur cette page