Autres réglages avancés

Last modified by Aurelie Bertrand on 2024/06/06 09:41

Changement du chemin des fichiers de données

DigDash Enterprise stocke les informations de configuration, les modèles de données, les portefeuilles d'information, les cubes, l'historique des flux et d'autres fichiers de travail dans le dossier de l'utilisateur du système d'exploitation, dans un sous dossier Application Data/Enterprise Server/<domaine>.

Par exemple sous Windows, ce dossier est :
C:\Users\<utilisateur>\AppData\Roaming\Enterprise Server\ddenterpriseapi

Il est important de modifier ce dossier pour en garantir l'accessibilité (droits en lecture/écriture/exécution) et pour maitriser l'espace de stockage (ce dossier peut être volumineux).
Cette modification est aussi intéressante pour des raisons d'organisation, de scripting, etc.

Pour plus de détails rendez-vous dans les Guide d'installation Windows ou Guide d'installation Linux.

Règlages LDAP (adswrapper) : Port et dossier des données

Fichier modifié : digdash.properties
Voir le chapitre "Externalisation des paramètres dans un fichier properties" pour effectuer cette manipulation.

Le paramètre <nom du fichier war>.ads.ldap.port (valeur par défaut : 11389) défini le port réseau utilisé par le serveur LDAP intégré à DigDash Enterprise.
Il faut changer cette valeur si elle est déjà utilisée par un autre processus sur la machine, ou une autre instance LDAP (d'un autre domaine DigDash sur la même machine par exemple).

Exemple : si l'application s'appelle adswrapper (adswrapper.war) :

  • adswrapper.ads.ldap.port=11590

Pour changer l'emplacement d'écriture des données de l'annuaire LDAP, voir Guide d'installation Windows ou Guide d'installation Linux.

Paramètres avancés de l'éditeur/viewer de tableaux de bord

Fichier modifié : digdash.properties

Voir le chapitre "Externalisation des paramètres dans un fichier properties" pour effectuer cette manipulation.

Paramètres disponibles :

  • Nom : SERVERURL
    Valeur : URL du serveur DigDash Enteprise
    Description : URL du serveur sur lequel le tableau de bord doit se connecter en priorité.
  • Nom : DOMAIN
    Valeur : Nom du domaine DigDash Enterprise
    Description : Nom du domaine sur lequel le tableau de bord doit se connecter en priorité.
  • Nom : FORCESERVERURL
    Valeur : Booléen (défaut : false)
    Description : Utilisé avec le paramètre SERVERURL. Force le serveur sur lequel le tableau de bord se connecte. L'utilisateur ne peut pas choisir un autre serveur.
  • Nom : FORCEDOMAIN
    Valeur : Booléen (défaut : false)
    Description : Utilisé avec le paramètre DOMAIN. Force le domaine sur lequel le tableau de bord se connecte. L'utilisateur ne peut pas choisir un autre domaine.
  • Nom : GRIDSIZEEDITOR
    Valeur : Entier (défaut: 10)
    Description : Taille en pixel de la grille magnétique d'édition du tableau de bord.
  • Nom : THEME
    Valeur : Nom du thème (défaut: vide)
    Description : Nom du thème par défaut utilisé pour les utilisateur n'ayant pas de thème spécifique spécifié.
  • Nom : urlLogout
    Valeur : URL
    Description : Spécifie une URL de sortie vers laquelle est redirigé l’utilisateur après une déconnexion du tableau de bord. Voir le paragraphe « Redirection lors de la déconnexion du tableau de bord ».
  • Nom : CANCHANGEPASSWORD
    Valeur : Booléen (défault : false)
    Description : Permet l’activation d’un hyperlien « Mot de passe perdu » dans la page de login du tableau de bord. Cet hyperlien envoie un code de réinitialisation par émail à l’utilisateur. Voir paragraphe « Activation de la fonctionnalité de réinitialisation du mot de passe »

Exemple de contenu partiel du fichier digdash.properties :

digdash_dashboard.SERVERURL=http://localhost:8080
digdash_dashboard.FORCESERVERURL=true
digdash_dashboard.DOMAIN=ddenterpriseapi
digdash_dashboard.FORCEDOMAIN=true
digdash_dashboard.GRIDSIZEEDITOR=15
digdash_dashboard.THEME=Flat
digdash_dashboard.urlLogout=disconnected.html
digdash_dashboard.CANCHANGEPASSWORD=true

Redirection lors de la déconnexion du tableau de bord

Fichier modifié : digdash.properties (voir le chapitre précédent)

Vous pouvez spécifier une URL qui sera affichée dans le navigateur quand l'utilisateur se déconnecte du tableau de bord (bouton Déconnexion).

Modifier la valeur du paramètre urlLogout comme dans l'exemple suivant. Par défaut la valeur est vide, signifiant un retour à la page d'authentification du tableau de bord.
Les URLs relatives sont autorisées, par rapport à l'url de index.html de l'application digdash_dashboard :

digdash_dashboard.urlLogout=disconnected.html

Activation de la fonctionnalité de réinitialisation de mot de passe

Fichier modifié : digdash.properties, et page de Configuration des serveur DigDash

Vous pouvez activer la fonctionnalité de réinitialisation de mot de passe perdu.
Cette fonctionnalité affiche un hyperlien « Mot de passe oublié » dans la page de login du tableau de bord qui envoie à l’utilisateur un email contenant un code de réinitialisation de son mot de passe.
Ensuite l’utilisateur est redirigé vers une interface de réinitialisation pour saisir ce code et un nouveau mot de passe.

Prérequis sur le serveur DigDash :

  • La fonctionnalité doit être aussi activée via la page de Configuration des serveurs / Avancé / Divers / Autoriser la réinitialisation de mot de passe
  • Un serveur email valide doit être configuré dans la page Configuration des serveurs / Avancé / Serveur émail système
  • Les utilisateurs doivent avoir une adresse email valide dans le champ LDAP digdashMail

L’activation de la fonction coté tableau de bord se fait en passant la variable CANCHANGEPASSWORD à la valeur true (voir le chapitre Paramètres avancés de l'éditeur/viewer de tableaux de bord).

digdash_dashboard.CANCHANGEPASSWORD=true

Optionnel : Personnalisastion de l’email du code de réinitialisation

Le sujet et le corps de l’émail du code de réinitialisation peuvent être customisés de la manière suivante :

  1. Démarrer le Studio DigDash
  2. Menu Outils / Gestionnaire de traductions...
  3. Clic-droit sur la section GLOBAL puis Ajouter…

Nom de la clé : LostPasswordMailSubject

Saisir le sujet de l’émail dans les langues qui vous intéressent.

  1. Clic-droit sur la section GLOBAL puis Ajouter…

Nom de la clé : LostPasswordMailText

Saisir le corps de l’émail dans les langues qui vous intéressent. Attention le corps de l’émail doit contenir au moins le mot-clé ${code} qui sera substitué par le code de réinitialisation. Un autre mot-clé disponible est ${user}.
Nous déconseillons d’indiquer trop d’informations dans cet émail, c’est pourquoi dans le message par défaut nous n’indiquons que le code de réinitialisation.

Paramètres avancés spécifiques à la fonctionnalité de réinitialisation de mot de passe

Fichier modifié : system.xml

Exemple de syntaxe XML :

<Property key="PROP_RESET_PASS_HASH" value="dfrj65433lkloss!00"></Property>

Paramètres disponibles :

  • Nom : PROP_RESET_PASS_HASH
    Valeur : Chaîne non vide (défaut : aléatoire)
    Description : Spécifie le code sel à utiliser pour la génération du code de réinitialisation de mot de passe. Par défaut cette chaîne est aléatoire, générée au lancement du serveur. Vous pouvez spécifier une chaîne de caractère qui sera utilisée par l’algorithme de génération du code de réinitialisation. Ceci peut-être utile si vous avez plusieurs serveurs (load-balancing HTTP) et pour qu’un code généré sur un serveur soit utilisable sur un autre.
  • Nom : PROP_RESET_PASS_VALIDITY
    Valeur : entier positif (défaut : 1)
    Description : Spécifie la durée de validité minimale du code par tranche de 10 minutes. Une valeur de 1 donne une validité du code entre 10 et 20 minutes, une valeur de 2 entre 20 et 30 minutes, etc. La validité est importante pour minimiser les risques de vol de code à postériori.
  • Nom : PROP_RESET_PASS_LENGTH
    Valeur : entier positif (défaut : 10)
    Description : Spécifie la longueur du code de réinitialisation. Une valeur trop faible est sujette aux tentatives d’attaques dites de force brute. Une valeur trop importante est sujette à des erreurs de saisie de la part des utilisateurs.

Réglages de sécurité interne

Des réglages sur les mécanismes de protection intégrés à DigDash sont possibles. Vous pouvez vous référer au document Réglages de sécurité avancés.

Externalisation des paramètres dans le fichier digdash.properties

Tous les paramètres des applications (fichiers .war) de DigDash Enterprise sont personnalisables dans un seul fichier texte au format properties.

Cela permet de pré-configurer les paramètres des applications web avant même le premier démarrage.
Encore plus important, cela permet de simplifier la mise à jour des applications web de DigDash Enterprise (sans perdre la configuration).

Le fichier digdash.properties complet est livré à la racine du dossier d'installation.
Tous les paramètres sont présents mais désactivés.
Pour les activer, supprimez le caractère # en début de ligne.
Les paramètres sont toujours préfixés du nom de l'application concernée (ex : ddenterpriseapi pour les paramètres de l'application ddenterpriseapi.war).

Exemple : si vous cherchez le paramètre authMethod du serveur (ddenterpriseapi.war) vous le trouverez sous la forme ddenterpriseapi.authMethod.

Important :

  • Pour les chemins de fichiers, utilisez le caractère slash « / » ou doublez le caractère anti-slash « \ » dans le fichier digdash.properties.
    Exemple : ddenterpriseapi.AppDataPath=C:/path/to/digdash_data ou ddenterpriseapi.AppDataPath=C:\\path\\to\\digdash_data
  • Les caractères « = » et « \ » (anti-slash) utilisés dans les valeurs doivent êtres échappés en les préfixant d'un « \ » (anti-slash)
    Exemple : password=Abcdef=123\; doit être écrit dans le fichier digdash.properties de la façon suivante : password=Abcdef\=123\\; (à noter que le premier « = » n'est pas échappé puisqu'il délimite la clé de la valeur).

Pour que le fichier digdash.properties soit pris en compte de manière certaine, il faut spécifier son emplacement au lancement du serveur (Tomcat).

  • Sous windows avec le serveur Tomcat fourni, aucune intervention nécessaire : le fichier setenv.bat est déjà configuré pour pointer vers le fichier à la racine de l'installation
  • Sous linux avec le serveur Tomcat fourni, copiez le fichier digdash.properties dans le dossier /etc/digdash
  • Avec votre propre serveur Tomcat, vous devrez éditer le fichier setenv.bat ou setenv.sh pour spécifier l'emplacement de votre fichier digdash.properties.

Voir les chapitres Guide d'installation Windows et Guide d'installation Linux.
 

Priorité entre les niveaux de paramétrage

Les paramètres sont lus dans l'ordre suivant (dès qu'une valeur est trouvée, les niveaux suivants sont ignorés) :

  1. Paramètre dans la commande de lancement du serveur Tomcat (-D<context>.<Parameter>=<value>)
  2. Fichier .properties spécifié dans la commande en ligne du serveur Tomcat (-D<context>.properties.path=/the/path/to/<context>.properties)
  3. Fichier .properties trouvé dans le dossier de travail du serveur Tomcat (<tomcat workdir>/<context>.properties)
  4. Paramètre global dans la commande en ligne du serveur Tomcat (-D<Parameter>=<value>)
  5. Fichier web.xml de chaque application (<context>/WEB-INF/web.xml)

Cloisonnement des paramètres

On appelle "Cloisonnement" la possibilité de cacher les paramètres d'un domaine pour tous les autres domaines d'un déploiement multi-domaines.

Le fichier digdash.properties contient les paramètres de tous les domaines, même ceux qui n'ont aucun lien entre eux.
Pour remédier à ça il est possible, depuis la version 2021R1 patch 20210817, de grouper les paramètres par domain.
Ainsi lors de la visualisation des paramètres via la page "Etat du serveur", seuls les paramètres du même groupe, ou sans groupe, seront visibles.

Prenons l'exemple d'un déploiement avec les domaines suivants :

  • ddenterpriseapi_client1dashboard_client1studio_client1
  • ddenterpriseapi_client2dashboard_client2studio_client2

La syntaxe pour grouper les paramètres est la suivante :

[groupe_client1].ddenterpriseapi_client1.AppDataPath=[...]
[groupe_client1].dashboard_client1.DOMAIN=[...]
[groupe_client1].studio_client1.SERVERURL=[...]

[groupe_client2].ddenterpriseapi_client2.AppDataPath=[...]
[groupe_client2].dashboard_client2.DOMAIN=[...]
[groupe_client2].studio_client2.SERVERURL=[...]

Spécifier les paramètres de journalisation (logging) log4j.properties

Les paramètres de logging sont définis dans un fichier log4j2.properties (ou log4j.properties pour adswrapper) disponible dans chaque application web déployée.

Important : depuis la version 2022R1, Digdash Enterprise utilise log4j2 pour les applications digdash_dashboard, studio, ddenterpriseapi. Cependant l'application adswrapper utilise encore log4j(v1).

Important DigDash Enterprise ne supporte le format XML pour les fichier de configuration log4j2. Il est impératif d'utiliser le format properties. Attention, le format des fichiers log4j2.properties est différent de celui des versions précédentes de log4j.

Nous avons ajouté des options sur la ligne de commande de Tomcat pour permettre de spécifier des fichiers de paramétrage de logging externalisés :

-Dddenterpriseapi.ddlog4j.properties.file="/path/to/log4j2.properties"
-Ddigdash_dashboard.ddlog4j.properties.file="/path/to/log4j2.properties"
-Dstudio.ddlog4j.properties.file="/path/to/log4j2.properties"
-Dadswrapper.ddlog4j.properties.file="/path/to/log4j.properties"

Ces paramètres peuvent aussi être spécifiés dans le fichier digdash.properties :

ddenterpriseapi.ddlog4j.properties.file=/path/to/log4j2.properties
digdash_dashboard.ddlog4j.properties.file=/path/to/log4j2.properties
studio.ddlog4j.properties.file=/path/to/log4j2.properties
adswrapper.ddlog4j.properties.file=/path/to/log4j.properties

Paramètres du Studio

Le Studio de DigDash Enterprise a aussi quelques paramètres optionnels spécifiés dans le fichier digdash.properties.
Voir le chapitre Externalisation des paramètres dans un fichier properties

Liste des paramètres :

  • Nom : adminconsole.ddserver
    Valeur : URL du serveur DigDash Enterprise (défaut : vide)
    Description : Spécifie l’URL du serveur auquel le Studio se connectera. Si non spécifié, le Studio utilisera le serveur de l’URL du fichier JNLP.
  • Nom : domain
    Valeur : Nom du domaine DigDash Enterprise
    Description : Spécifie le nom du domaine DigDash Enterprise auquel le Studio se connectera. Si non spécifié, le Studio utilisera le domaine spécifié dans la page d’accueil de DigDash Enterprise.
  • Nom : forceServerDomain
    Valeur : Booléen (défaut : false)
    Description : Indique au Studio que l’URL du serveur et le domaine sont modifiables (false) ou non (true) via le bouton Avancé dans la fenêtre de login du Studio. Si ce paramètre est activé, il est conseillé de spécifier les paramètres ddserver et domain.
  • Nom : dashboard
    Valeur : Nom de l’application tableau de bord
    Description : Permet de spécifier le nom du de l’application du tableau de bord. Si non spécifié, le Studio utilisera le nom d’application spécifié dans la page d’accueil de DigDash Enterprise, par exemple « digdash_dashboard ».
  • Nom : authMode
    Valeur : Mode d’authentification du Studio (défaut : « default »)
    Description : Mode d’authentification spécifique du Studio. Il faut que le serveur DigDash Enterprise reflète un mode d’authentification compatible (variable authMethod dans la configuration du serveur) : Consulter les documentations des add-ons liés à l’authentification et au SSO. Les valeurs possibles sont : « default », « NTUser », « NTUserOrLDAP » et « NTUserOrLDAP,loginForm ».
  • Nom : sslNoPathCheck
    Valeur : Booléen (défaut : false)
    Description : Utilisé dans le cadre d’une connexion HTTPS. Indique au Studio de ne pas vérifier le chemin de certification du certificat de sécurité. Utilisé pour tester une configuration SSL avec un certificat auto-signé. Ce setting n’est pas conseillé en production.
  • Nom : sslNoHostNameCheck
    Valeur : Booléen (défaut : false)
    Description : Utilisé dans le cadre d’une connexion HTTPS. Indique au Studio de ne pas vérifier le nom de domaine Internet. Utilisé pour tester une configuration SSL avec un certificat auto-signé. Ce setting n’est pas conseillé en production.
  • Nom : maxHeapSize
    Valeur : Quantité mémoire (défaut : en fonction de la JVM du poste client)
    Description : Spécifie la quantité de mémoire du poste client allouée au Studio. La syntaxe est <quantité><unité>, où l’unité est une lettre « m » (mégaoctets) ou « g » (gigaoctets). Exemple : maxHeapSize=2048m

Dossiers de données DigDash Enterprise

DigDash Enterprise stocke les données dans différents dossiers. Ce chapitre résume ces dossiers.

Données de configuration

Localisation (par défaut) : Dossier « Application Data » de l’utilisateur qui lance Tomcat (Windows), ou dossier de l’utilisateur (linux).

Contenu : Sous-dossiers contenant les modèles de données, tableaux de bords, portefeuilles de flux, formats, formules, scripts, styles, chaînes de connexions, etc :

  • config : données de configuration communes, données de configuration des rôles, sauvegardes, et dossiers web customisés
  • datasources : fichiers du serveur de document par défaut
  • server : données de configuration des utilisateurs : portefeuille, modèle de données et tableaux de bord personnels, et serveur de documents personnalisé

Modification : digdash.properties, voir le chapitre Changement de l'emplacement des données.

Note : La volumétrie des données générées peut-être importante notamment à cause des sous-dossiers cubes et history. Il est conseillé de placer ce dossier sur un disque disposant d’un quota d’espace important.

Données générées

Localisation : Sous dossiers cubes et history du dossier de données de configuration.

Contenu : Cubes, historiques de flux :

  • cubes : sous-dossiers des cubes générés (un par modèle de données).
  • history : historique de tous flux, fichiers javascripts générés (modèle de données, vues de flux).

Modification : Impossible directement. Il faut modifier la localisation du dossier parent (Données de configuration), ou créer des liens.

Important : La volumétrie des données générées peut-être importante. Il est conseillé de placer le dossier parent (Données de configuration) sur un disque disposant d’un quota d’espace important.

Note : Les dossiers cubes et history peuvent être supprimés pour nettoyage (serveur Tomcat stoppé). Ils seront recréés et les données rafraîchies à nouveau par l’ordonnanceur, ou par l’envoi d’un événement de rafraîchissement.

Données LDAP

Localisation (par défaut) : dossier ldapdigdash dans le répertoire de travail de Tomcat (« workdir »).

Contenu : Fichiers de la partition LDAP contenant les définitions des utilisateurs, des rôles et des droits DigDash

Modification : digdash.properties, voir le chapitre Règlages LDAP (adswrapper) : Port et dossier des données.

Base de données DDAudit

Localisation (par défaut) : répertoire de travail de Tomcat (« workdir »).

Contenu : Fichier de base de données (H2) contenant les tables des données DDAudit.

Modification : digdash.properties (Voir également Déploiement du module d'audit)