Préconfiguration de Devolutions Password Manager

Sur cette page

Qu’est-ce que la préconfiguration ?

La préconfiguration permet aux administrateurs des TI de déployer l'appli Devolutions Password Manager Windows avec des paramètres et Workspace (Devolutions Server et Devolutions Cloud) préconfigurés sur les terminaux Windows. Ceci élimine la nécessité pour l'utilisateur final de configurer manuellement l'application après l'installation.

Principaux avantages

  • Déploiement sans intervention : démarrer avec des applications entièrement configurées

  • Assurer : garantir que tous les utilisateurs aient les mêmes Workspace et paramètres

  • Gagner du temps : éliminer les étapes de configuration manuelles

  • Flexibilité : plusieurs méthodes de déploiement adaptées à différentes infrastructures TI

  • Scalabilité : déployer sur des centaines ou des milliers de terminaux efficacement

Fonctionnement

  1. Un administrateur informatique configure les workspaces et les paramètres via des paramètres MSI ou des fichiers de configuration.

  2. L'outil de déploiement pousse l'installation sur les appareils gérés (Intune, SCCM, PDQ Deploy, etc.).

  3. Utilisateurs démarrent l’appli pour la première fois.

  4. L'appli lit la configuration et crée automatiquement les workspaces.

  5. Les utilisateurs se connectent pour compléter la connexion.

Notes importantes

  • Authentification requise : les workspaces préconfigurés sont créés en état « en attente ». Les utilisateurs doivent s’authentifier pour finaliser la connexion.

  • Premier lancement uniquement : la configuration s’applique une seule fois au premier lancement. Les modifications ultérieures nécessitent une réinstallation de l’appli ou une configuration manuelle.

  • Identifiants NON stockés : La préconfiguration n'inclut PAS les identifiants utilisateur. Les utilisateurs doivent se connecter avec leurs propres identifiants.

Méthodes de déploiement

Méthode 1 : Paramètres de l'installateur MSI

Transmettre directement les paramètres de configuration à l’installateur Windows lors du déploiement. Combiner les paramètres de Workspace avec les paramètres d’application.

cas d'utilisation : effectuer des déploiements rapides, avoir des configurations simples, effectuer des tests

  • Exemple de base (workspaces uniquement) :

msiexec /i Workspace.msi /qn DVLS_SERVER_URL="https://server.com" HUB_NAME="mycompany"
  • Avec paramètres (workspaces + paramètres d'application):

msiexec /i Workspace.msi /qn ^
  DVLS_SERVER_URL="https://server.com" ^
  HUB_NAME="mycompany" ^
  ORGANIZATION_ID="guid-here" ^
  LANGUAGE="fr" ^
  LOCKING_OPTION="windowsCredentials"

Limitations : Un seul Devolutions Server peut être configuré via les paramètres MSI. Pour plusieurs serveurs, utiliser la méthode 2.

Déployer un fichier .cfg pré-créé sur les systèmes cibles.

  • Cas d'utilisation : Intune, SCCM, configurations complexes, multiples Workspace

msiexec /i Workspace.msi /qn DEPLOY_CONFIG="C:\path\to\Config.cfg"
  • Cible : %ProgramData%\net.devolutions\Workspace\DefaultConfig.cfg

  • Comment cela fonctionne :

  1. MSI écrire la configuration dans ProgramData pendant l'installation

  2. Lorsque tout utilisateur lance Devolutions Password Manager, l’appli détecte la configuration à l’échelle du système

  3. La configuration copie automatiquement vers le profil itinérant de l'utilisateur

  4. L'utilisateur a configuré l'application

Pourquoi DEPLOY_CONFIG pour l'entreprise :

  1. Fiable : Fonctionne indépendamment du contexte utilisateur (pas de problème de « utilisateur par défaut »)

  2. Cohérence : tous les utilisateurs de la machine reçoivent la même configuration

  3. Compatible avec l'automatisation : Parfait pour Intune, SCCM, installations silencieuses

  4. Prise en charge multi-utilisateur : s'applique à tous les utilisateurs existants et futurs

  • Idéal pour : Intune, SCCM, installations silencieuses, machines multi-utilisateurs, postes partagés

Option B : déploiement par utilisateur (USER_CONFIG)

msiexec /i Workspace.msi /qn USER_CONFIG="C:\path\to\Config.cfg"
  • Cible : %LOCALAPPDATA%\net.devolutions\Workspace\Config.cfg

  • Comment cela fonctionne :

  1. Le MSI écrit la configuration dans le Local AppData de l'utilisateur qui installe

  2. L'utilisateur lance Devolutions Password Manager

  3. Copier la configuration vers le profil itinérant de l'utilisateur

  4. Seul cet utilisateur a configuré l'application

  • Limitations :

  1. Configurer uniquement l’utilisateur ayant exécuté l’installateur

  2. Peut échouer lors des déploiements automatisés (problèmes de contexte utilisateur)

  3. Non adapté aux machines multi-utilisateurs

  • Idéal pour : installations interactives par les utilisateurs finaux, appareils mono-utilisateur

Méthode 3 : Créateur d'une configuration via l'interface utilisateur

Utiliser l'application de bureau pour créer les fichiers de configuration et les commandes MSI.

  • Cas d’utilisation : administrateurs informatiques préparant des paquets de déploiement

  • Accéder : OutilsInstallation personnalisée (dans l’application de bureau)

Voir la section Créateur de fichiers de configuration pour plus de détails.

Structure du fichier de configuration

Les fichiers de configuration utilisent l'extension .cfg et contiennent des données au format JSON.

Format du fichier

{
  "hubs": [
    {
      "url": "https://mycompany.devolutions.app",
      "organizationId": "00000000-0000-0000-0000-000000000000",
      "type": "Business",
      "version": ""
    }
  ],
  "dvls": [
    {
      "name": "Production DVLS",
      "serverUrl": "https://devolutions-server.company.com",
      "serverVersion": ""
    },
    {
      "name": "Development DVLS",
      "serverUrl": "https://devolutions-server-dev.company.com",
      "serverVersion": ""
    }
  ],
  "configs": {
    "language": "en-US",
    "reduceToTrayOnClose": true,
    "clearClipboardSensitiveData": true,
    "clipboardTimer": 30,
    "useFavicon": true,
    "useEntriesSyncOnDatasourceAccess": false,
    "useHubEmbeddedBrowser": true,
    "shareUsageData": false,
    "lockingOption": "windowsCredentials",
    "useBackgroundLock": true,
    "useLockWhenInactive": true,
    "lockInactivityDelay": 300
  }
}

Composants du schéma

Array Devolutions Cloud (optionnel)

Tableau des instances Devolutions Cloud à configurer.

Champ Type Exigé Description
url string Oui URL Devolutions Cloud (ex. : https://mycompany.devolutions.app)
organizationId string Oui GUID de l'organisation
type string Non Toujours « Business » (rempli automatiquement)
version string Non Version Devolutions Cloud (renseignée automatiquement lors de la première connexion)

Tableau Devolutions Server (optionnel)

Tableau d'instances Devolutions Server à configurer.

Champ Type Exigé Description
name string Oui Nom d'affichage pour le serveur
serverUrl string Oui URL Devolutions Server (ex. https://devolutions-server.company.com)
serverVersion string Non Version du serveur (renseignée automatiquement lors de la première connexion)

Objet Configs (optionnel)

Paramètres d'application à préconfigurer.

Voir la référence des paramètres de configuration pour la liste complète.

Emplacements des fichiers de configuration

Charger les fichiers de configuration dans l'ordre de priorité selon l'emplacement.

Configuration au niveau de l'utilisateur

  • AppData itinérant : %APPDATA%\net.devolutions\Workspace\Config.cfg

  • Par défaut : C:\Users\[Username]\AppData\Roaming\net.devolutions\Workspace\Config.cfg

  • Synchronise sur les ordinateurs joints au domaine

  • Priorité la plus élevée (spécifique à l'utilisateur)

    • Local AppData : %LOCALAPPDATA%\net.devolutions\Workspace\Config.cfg

    • Par défaut : C:\Users\[Username]\AppData\Local\net.devolutions\Workspace\Config.cfg

    • Spécifique à la machine, non synchronisé

    • Utilisé lors de l'installation MSI, ensuite copié vers Roaming

Configuration à l'échelle du système

    • ProgramData : %ProgramData%\net.devolutions\Workspace\DefaultConfig.cfg

    • Par défaut : C:\ProgramData\net.devolutions\Workspace\DefaultConfig.cfg

    • S'applique à tous les utilisateurs du système

    • Nécessite le fichier indicateur config.ready dans le même répertoire

    • Copier vers l'emplacement itinérant de l'utilisateur au premier lancement (si la configuration utilisateur n'existe pas)

Fichier indicateur

  • Fichier : config.ready

  • Emplacement : même répertoire que DefaultConfig.cfg

  • But : signaler que la configuration à l'échelle du système est prête pour le déploiement

  • Contenu : Fichier vide, seule la présence est vérifiée

Ordre de priorité

Vérifier les sources de la configuration dans l'ordre suivant (la première trouvée prévaut) :

  1. Fichier de configuration utilisateur – Config spécifique à l'utilisateur

  2. Fichier de configuration système – valeur par défaut globale (copié à l'emplacement utilisateur)

Paramètres de l'installeur MSI

L'installateur Windows MSI accepte les paramètres suivants pour la pré-configuration.

Paramètres Workspace

Configuration de Devolutions Server

Paramètre Type Description Exemple
DVLS_SERVER_URL Chaîne de caractères URL du Devolutions Server https://devolutions-server.company.com
  • Remarque : Seul un (Devolutions Server peut être configuré via des paramètres MSI. Pour plusieurs serveurs, utiliser un fichier de configuration.)

Configuration Devolutions Cloud

Paramètre Type Description Exemple
HUB_NAME Chaîne de caractères Nom du sous-domaine Devolutions Cloud (obligatoire) mycompany
ORGANIZATION_ID Chaîne de caractères GUID de l'organisation (optionnel - laisser vide si non applicable) 00000000-0000-0000-0000-000000000000
  • Remarque : L’URL complète de Devolutions Cloud est construite ainsi : https://{HUB_NAME}.devolutions.app

  • Remarque : ORGANIZATION_ID est optionnel. Certaines instances de Devolutions Cloud ne requièrent pas d’ID d’organisation. Si non applicable, omettre ce paramètre ou transmettre une chaîne vide.

Paramètres de déploiement du fichier de configuration

Paramètre Type Description Emplacement cible
DEPLOY_CONFIG Chaîne de caractères Configuration à l'échelle du système (recommandée) %ProgramData%\net.devolutions\Workspace\DefaultConfig.cfg
USER_CONFIG Chaîne de caractères Configuration par utilisateur (installations interactives) %LOCALAPPDATA%\net.devolutions\Workspace\Config.cfg

Paramètres de configuration de l'application

paramètres généraux

Paramètre Type Valeurs Par défaut Description
TARGET_LOCATION Chaîne de caractères roaming, local, system roaming Où enregistrer la configuration.
LANGUE Chaîne de caractères Code de langue en-US Langue de l'application.

Paramètres de l'interface utilisateur

Paramètre Type Valeurs Par défaut Description
REDUCE_TO_TRAY_ON_CLOSE Chaîne de caractères true, false false Réduire dans la barre d'état système au lieu de fermer.
USE_FAVICON Chaîne de caractères true, false false Télécharger et afficher les favicônes des sites Web.
USE_HUB_EMBEDDED_BROWSER Chaîne de caractères true, false true Utiliser le navigateur intégré pour l'authentification Devolutions Cloud.

Paramètres de sécurité

Paramètre Type Valeurs Par défaut Description
CLEAR_CLIPBOARD_SENSITIVE_DATA Chaîne de caractères true, false false Effacer automatiquement le presse-papiers après avoir copié des mots de passe.
CLIPBOARD_TIMER Nombre Secondes (1-999) 30 Secondes avant d'effacer le presse-papiers.
LOCKING_OPTION Chaîne de caractères password, biometric, windowsCredentials (aucun) Méthode pour verrouiller l'application.
USE_BACKGROUND_LOCK Chaîne de caractères true, false false Verrouiller lors de la réduction dans la barre d'état système.
USE_LOCK_WHEN_INACTIVE Chaîne de caractères true, false false Verrouiller après une période d'inactivité.
LOCK_INACTIVITY_DELAY Nombre Secondes (30-3600) 30 Secondes avant verrouillage automatique.

Paramètres de synchronisation

Paramètre Type Valeurs Par défaut Description
USE_ENTRIES_SYNC_ON_DATASOURCE_ACCESS Chaîne de caractères true, false false Synchroniser automatiquement les entrées lors de l’accès au workspace.

Paramètres de confidentialité

Paramètre Type Valeurs Par défaut Description
SHARE_USAGE_DATA Chaîne de caractères true, false true Partager des statistiques d'utilisation anonymes.

Créateur de fichier de configuration

L'application de bureau inclut un outil visuel pour créer des fichiers de configuration.

Accéder à l'outil

  1. Lancer Devolutions Password Manager.

  2. Aller à : Outils – Installation personnalisée.

Fonctionnalités

Onglet Exporter (Créer la configuration)

  1. Sélection du Workspace.

  • Afficher toutes les configurations (instances Devolutions Server et Devolutions Cloud)

  • Sélectionner les Workspace à inclure via les cases à cocher

  • Prendre en charge plusieurs workspaces

  1. Configuration des paramètres

  • Activer/désactiver les paramètres individuels de l'application regroupés par catégorie :

  • Général (Langue, comportement dans la barre d'état système)

  • Sécurité (presse-papiers, verrouillage)

  • Synchronisation

  • Confidentialité (statistiques d'usage)

  1. Live Preview

  • Afficher un aperçu JSON en temps réel de la configuration

  • Copier le JSON dans le presse-papiers

  • Prévisualiser les mises à jour lors du changement de sélection

  1. Options d’exportation

  • Générer un fichier .cfg : Enregistrer la configuration dans un fichier .cfg

  • Copier la commande MSI : Générer la commande MSI complète avec tous les paramètres

Onglet d'importation (charger la configuration)

  1. Sélection de fichier

  • Parcourir les fichiers .cfg

  • Validation et analyse du fichier

  1. Prévisualiser avant d'importer

  • Afficher workspaces et paramètres avant l'application

  • Détection de doublons (avertit si le Workspace existe déjà)

  1. Actions d'importation

  • Appliquer la configuration à l'application actuelle

  • Créer de nouveaux workspaces s'ils n'existent pas

  • Actualiser les paramètres immédiatement

Référence des paramètres de configuration

Référence complète de tous les paramètres configurables.

Mappage des clés de paramètres

Exporter la clé (config/MSI) Clé interne Type Par défaut Description
language languageCode Chaîne de caractères en-US Langue de l'interface utilisateur de l'application
reduceToTrayOnClose minimiserÀLaFermeture Booléen false Réduire dans la barre d'état système au lieu de quitter
clearClipboardSensitiveData removeSensitiveFromKeyboard Booléen false Minuterie d'effacement automatique du presse-papiers
clipboardTimer clipboardTimer Entier 30 Secondes avant de vider le presse-papiers (1-999)
useFavicon useRichIcons Booléen false Télécharger les favicônes des sites Web pour les entrées
useEntriesSyncOnDatasourceAccess useEntriesSyncSpaceAccess Booléen false Synchroniser automatiquement les entrées lors de l'accès au Workspace
useHubEmbeddedBrowser hubEmbeddedBrowser Booléen true Utiliser le navigateur intégré pour l'authentification Devolutions Cloud
shareUsageData shareAnonymousData Booléen true Partager des statistiques d'usage anonymes
lockingOption lockingOption Chaîne de caractères (none) Méthodes de verrouillage : password, biometric, windowsCredentials
useBackgroundLock useBackgroundLock Booléen false Verrouiller lors de la réduction dans la barre d'état système
useLockWhenInactive useLockWhenInactive Booléen false Verrouiller après une période d’inactivité
lockInactivityDelay lockInactivityDelay Entier 30 Secondes avant verrouillage automatique (30-3600)

Langues prises en charge

Code Langue
en-US Anglais (États-Unis)
fr Français
de Allemand
es Espagnol
cs Tchèque
hu Hongrois
it Italien
nl Néerlandais
pl Polonais
ru Russe
sv Suédois
tr Turc
uk Ukrainien
zh-CHS Chinois (simplifié)
zh-TW Chinois (traditionnel)

Options de verrouillage

Valeur Description Exigences
mot de passe Mot de passe maître L'utilisateur définir le mot de passe lors du premier verrouillage
biométrique Empreinte digitale/identification faciale Matériel biométrique requis
windowsCredentials Windows Hello Windows 10/11 avec Windows Hello
  • Note : Si Windows Hello n'est pas disponible, l'application utilise le mot de passe par défaut.

Exemples de déploiement

Exemple 1 : Un seul Devolutions Server avec paramètres de sécurité

msiexec /i Workspace.msi /qn ^
  DVLS_SERVER_URL="https://devolutions-server.company.com" ^
  LOCKING_OPTION="windowsCredentials" ^
  USE_LOCK_WHEN_INACTIVE="true" ^
  LOCK_INACTIVITY_DELAY="300" ^
  CLEAR_CLIPBOARD_SENSITIVE_DATA="true" ^
  CLIPBOARD_TIMER="60"

Exemple 2 : Devolutions Cloud avec langue française

# With Organization ID
msiexec /i Workspace.msi /qn ^
  HUB_NAME="mycompany" ^
  ORGANIZATION_ID="12345678-1234-1234-1234-123456789abc" ^
  LANGUAGE="fr" ^
  REDUCE_TO_TRAY_ON_CLOSE="true"

# Without Organization ID (for Devolutions Cloud instances that don't require it)
msiexec /i Workspace.msi /qn ^
  HUB_NAME="mycompany" ^
  LANGUAGE="fr" ^
  REDUCE_TO_TRAY_ON_CLOSE="true"

Exemple 3 : Déploiement Microsoft Intune

Étape 1 : Préparer les fichiers

Créer un dossier de travail (ex. : C:\IntuneApps\Workspace\) et placer ces fichiers :

  • Workspace.msi

  • config.cfg (créé via OutilsInstallation personnalisée ou manuellement)

  • Install-Workspace.ps1 (script PowerShell ci-dessous)

Étape 2 : Script d'installation PowerShell

Créer Install-Workspace.ps1 :

# Install-Workspace.ps1
# Source files in the Intune package
$ConfigSource = "$PSScriptRoot\config.cfg"
$ConfigTarget = "C:\Program Files\config.cfg"
$MsiPath = "$PSScriptRoot\Workspace.msi"

# Copy config.cfg to Program Files
try {
    Copy-Item -Path $ConfigSource -Destination $ConfigTarget -Force
} catch {
    Write-Host "Error copying config file: $($_.Exception.Message)"
    exit 1
}

# Install MSI silently with DEPLOY_CONFIG parameter
$Arguments = "/i `"$MsiPath`" /qn /norestart DEPLOY_CONFIG=`"C:\Program Files\config.cfg`""
$Process = Start-Process "msiexec.exe" -ArgumentList $Arguments -Wait -PassThru

# Return exit code to Intune
exit $Process.ExitCode

Étape 3 : Créer un paquet .intunewin

Utiliser l'outil de préparation de contenu Microsoft Win32 (IntuneWinAppUtil.exe) :

IntuneWinAppUtil.exe -c C:\IntuneApps\Workspace -s Install-Workspace.ps1 -o C:\IntuneApps\Output

Étape 4 : configurer l'application Intune

Dans le portail Microsoft Intune :

  1. Aller à : AppsWindowsAjouterApplication Windows (Win32)

  2. Fichier du paquet d'application : téléverser Workspace.intunewin

  3. Informations sur l'appli : Renseigner le nom, la description, l'éditeur

  4. Configuration du programme :

  • Commande d'installation : powershell.exe -ExecutionPolicy Bypass -File .\Install-Workspace.ps1

  • Commande de désinstallation : msiexec.exe /x {PRODUCT-CODE-GUID} /qn /norestart

  • Comportement d'installation : Système

  1. Exigences : Windows 10 1607+ (64 bits)

  2. Règles de détection : code produit MSI (détection automatique)

  3. Affecter : Affecter à des groupes cibles

Flux d'installation sur le terminal

Quand l’appli est déployée sur un appareil, effectuer automatiquement les opérations suivantes :

  1. Intune télécharge et exécute Install-Workspace.ps1

  2. Le script copie config.cfg vers C:\Program Files\config.cfg

  3. Le script installe le MSI avec DEPLOY_CONFIG="C:\Program Files\config.cfg"

  4. Le MSI lit le fichier de configuration et l'écrit dans %ProgramData%\net.devolutions\Workspace\DefaultConfig.cfg

  5. Lorsqu’un utilisateur lance Devolutions Password Manager, l’appli détecte la configuration globale du système et l’applique

Le résultat : le fichier de configuration est distribué avec l'application, placé automatiquement au bon endroit, et l'installation est entièrement silencieuse et compatible Intune.

Exemple 4 : Déploiement SCCM

  • Commande d’installation :

msiexec /i Workspace.msi /qn /norestart DEPLOY_CONFIG="%~dp0Config.cfg"
  • Commande de désinstallation :

msiexec /x {PRODUCT-CODE} /qn /norestart
  • Méthode de détection : clé de registre HKLM\SOFTWARE\Devolutions\Workspace\Version

Exemple 5 : Plusieurs Devolutions Server via un fichier de configuration

Créer config.cfg :

{
  "dvls": [
    {
      "name": "Production Devolutions Server",
      "serverUrl": "https://devolutions-server-prod.company.com"
    },
    {
      "name": "Development Devolutions Server",
      "serverUrl": "https://devolutions-server-dev.company.com"
    },
    {
      "name": "Test Devolutions Server",
      "serverUrl": "https://devolutions-server-test.company.com"
    }
  ],
  "configs": {
    "language": "en-US",
    "shareUsageData": false
  }
}

Déployer via :

msiexec /i Workspace.msi /qn DEPLOY_CONFIG="\\fileserver\IT\Workspace\config.cfg"

Résolution de problèmes

Configuration non appliquée

Fichier de configuration présent mais paramètres non appliqués.

  1. Vérifier l’emplacement du fichier : vérifier le chemin correct (%ProgramData%\net.devolutions\Workspace\DefaultConfig.cfg)

  2. Vérifier la validité du JSON : Valider la syntaxe JSON (pas de virgules finales, guillemets appropriés)

  3. Vérifier les permissions : l'utilisateur doit avoir une autorisation de lecture sur le fichier de configuration

  4. Vérifier le fichier indicateur : vérifier si le fichier config.ready existe dans le même répertoire

  5. Vérifier les journaux : Examiner les journaux de l’application pour détecter les erreurs d’analyse

Fichier indicateur manquant

  • Problème : configuration globale du système ignorée.

  • Solution : Créer le fichier config.ready :

type nul > "%ProgramData%\net.devolutions\Workspace\config.ready"

USER_CONFIG déployer sur le profil utilisateur "par défaut"

  • Problème : USER_CONFIG échoue lors des installations silencieuses/automatisées, la configuration se retrouve dans C:\Users\Default\AppData\Local.

  • Cause : USER_CONFIG nécessite un contexte de session utilisateur active, qui n'est pas disponible lors de l'installation automatisée par MSI.

  • Solution : Utiliser DEPLOY_CONFIG pour les déploiements en entreprise :

# CORRECT for Intune/SCCM
msiexec /i Workspace.msi /qn /norestart DEPLOY_CONFIG="%~dp0Config.cfg"

# WRONG for automated deployment
msiexec /i Workspace.msi /qn /norestart USER_CONFIG="%~dp0Config.cfg"

L'installation silencieuse MSI n'applique pas la configuration

Les paramètres MSI ne créer pas la configuration.

  1. Vérifier la syntaxe des paramètres : s'assurer de l'utilisation correcte des guillemets (utiliser "value", pas 'value')

  2. Journaliser l’installation MSI : Ajouter /l*v install.log pour voir les erreurs détaillées

  3. Vérifier l'exécution de PowerShell : vérifier si la stratégie d'exécution bloque les scripts

  4. Droits administratifs : S'assurer que l'installateur s'exécute avec élévation

  • Exemple avec journalisation :

msiexec /i Workspace.msi /qn /l*v C:\Temp\install.log DVLS_SERVER_URL="https://server.com"

Paramètres non persistants

Les paramètres reviennent aux valeurs par défaut après le redémarrage.

  1. Config utilisateur vs système : La configuration système ne s’applique que si l’utilisateur n’a pas de configuration existante. Une fois les paramètres modifiés par l’utilisateur, ils sont enregistrés dans la config utilisateur et remplacent les paramètres système par défaut.

  2. Remplacer la stratégie de groupe : Vérifier si le GPO applique les paramètres

  3. Permissions des fichiers : Vérifier les autorisations d'accès en écriture à l'emplacement de configuration utilisateur

Le workspace existe déjà

Problème : L'importation échoue avec le message « l'espace de travail existe déjà ».

Explication : le parseur de configuration détecte les doublons par URI d'accès normalisée (sans distinction entre minuscules/majuscules, barre oblique à la fin supprimée).

  1. Supprimer manuellement l'espace de travail existant avant d'importer

  2. Éditer le fichier de configuration pour supprimer les entrées en double

  3. Utiliser l’outil d’installation personnalisée pour fusionner les configurations

Option de verrouillage ne fonctionne pas

Windows Hello non activé.

  1. Configuration de Windows Hello : s’assurer que Windows Hello soit configuré dans les paramètres Windows

  2. Repli : Le système bascule automatiquement sur le mot de passe si le matériel est indisponible

  3. Vérifier les journaux : examiner les journaux de l'application pour les erreurs d'initialisation biométrique

Meilleures pratiques

1. Tester d'abord la configuration

Avant de déployer à tous les utilisateurs :

  1. Créer un groupe de test utilisateur/appareil

  2. Appliquer la configuration au groupe de test

  3. Vérifier que les espaces de travail et les paramètres fonctionnent comme prévu

  4. Déployer en production

2.Utiliser DEPLOY_CONFIG pour l’entreprise

  • Toujours utiliser DEPLOY_CONFIG pour :

  • Déploiements Intune

  • Déploiements SCCM

  • Installations silencieuses/sans assistance

  • Machines multi-utilisateurs

  • Postes de travail partagés

  • Utiliser uniquement USER_CONFIG pour :

  • Installations interactives par les utilisateurs finaux

  • Appareils mono-utilisateur

  • Scénarios de test

3. Documenter la configuration

Maintenir la documentation de votre configuration incluant :

  • Quels workspaces sont préconfigurés

  • Quels paramètres sont appliqués

  • Expérience utilisateur attendue

  • Contact d'assistance pour les problèmes

4. communiquer avec les utilisateurs

Informer les utilisateurs :

  • Espaces de travail préconfigurés

  • Ils doivent toujours se connecter avec leurs identifiants

  • La configuration est effectuée au premier lancement de l'application

  • Contacter les TI si les workspaces n'apparaissent pas

5. Considérations de sécurité

Paramètres de sécurité recommandés :

{
  "lockingOption": "windowsCredentials",
  "useBackgroundLock": true,
  "useLockWhenInactive": true,
  "lockInactivityDelay": 300,
  "clearClipboardSensitiveData": true,
  "clipboardTimer": 60,
  "shareUsageData": false
}

Pourquoi :

  • Appliquer l'authentification Windows Hello

  • Verrouiller l'appli immédiatement lorsqu'elle passe en arrière-plan

  • Se verrouille automatiquement après 5 minutes d’inactivité

  • Vider le presse-papiers après 60 secondes

  • Désactiver la collecte de données d’usage (optionnel)

6. Préciser les exigences de format de l'URL

Toutes les URL doivent :

  • Inclure le protocole (https://)

  • Être des URL valides et accessibles

  • Ne pas terminer par une barre oblique finale (l’appli normalisera)

Exemples :

  • https://devolutions-server.company.com

  • https://password-manager.devolutions.app

  • devolutions-server.company.com (https:// manquant)

  • http://devolutions-server.company.com (HTTP non recommandé)

7. Considérations Domaine vs autonome

  • Appartenance au domaine : Utiliser Roaming AppData (TARGET_LOCATION="roaming") pour la synchronisation du profil

  • Autonome : utiliser Local AppData (TARGET_LOCATION="local") ou Système (TARGET_LOCATION="system")

Référence rapide

Modèle de configuration minimale

{
  "dvls": [
    {
      "name": "Devolutions Server",
      "serverUrl": "https://devolutions-server.example.com"
    }
  ]
}
msiexec /i Workspace.msi /qn /norestart DEPLOY_CONFIG="\\server\share\Config.cfg"

Qu’est-ce que la préconfiguration

La préconfiguration permet aux administrateurs TI de déployer Devolutions Password Manager avec des paramètres et des workspaces préconfigurés (instances Devolutions Server et Devolutions Cloud) sur des terminaux macOS gérés. Cela élimine la nécessité, pour les utilisateurs finaux, de configurer manuellement l'application après installation.

Principaux avantages

  • Déploiement sans intervention : démarrer avec des applications entièrement configurées

  • Assurer : garantir que tous les utilisateurs aient les mêmes Workspace et paramètres

  • Gagner du temps : éliminer les étapes de configuration manuelles

  • Gestion centralisée : Configurer depuis la console MDM

  • Application de la stratégie : permettre d'empêcher les utilisateurs de modifier les paramètres

  • Standard d'entreprise : approche recommandée pour les flottes macOS gérées

Fonctionnement

  1. L'administrateur informatique configurer workspaces et paramètres via MDM ou fichiers de configuration

  2. MDM pousse la configuration vers les appareils gérés

  3. L'utilisateur lance l'appli pour la première fois

  4. L'appli lit la configuration et crée des Workspace automatiquement

  5. L'utilisateur s'authentifier pour compléter la connexion (saisir les identifiants)

Notes importantes

  • Authentification requise : les workspaces préconfigurés sont créés dans un état « en attente ». Les utilisateurs doivent encore s'authentifier (se connecter) pour finaliser la connexion.

  • Premier lancement uniquement : la configuration s’applique une seule fois au premier lancement. Les modifications ultérieures nécessitent une réinstallation de l’appli ou une configuration manuelle.

  • Identifiants NON stockés : La préconfiguration n'inclut PAS les identifiants utilisateur. Les utilisateurs doivent se connecter avec leurs propres identifiants.

Méthodes de déploiement

Déployer la configuration via les solutions de gestion des appareils mobiles (MDM) pour les environnements macOS gérés.

  • Cas d'utilisation : Jamf Pro, Microsoft Intune pour Mac, autres solutions MDM

  • Priorité : la plus haute (ignore toutes les configurations basées sur des fichiers)

  • Domaine de préférence : net.devolutions.authenticator

Avantages :

  • Gestion centralisée : Configurer depuis la console MDM

  • Application de la stratégie : permettre d'empêcher les utilisateurs de modifier les paramètres

  • Priorité la plus élevée : ignorer les fichiers de configuration locaux

  • Standard d'entreprise : approche recommandée pour les flottes macOS gérées

Voir la section MDM/Préférences gérées pour des instructions détaillées.

Méthode 2 : Déploiement du fichier de configuration

Déployer un fichier .cfg pré-créé sur les systèmes cibles.

  • Cas d'utilisation : effectuer des déploiements par script, utiliser dans des environnements non MDM, effectuer des tests

  • Emplacement global du système : /Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg

  • Emplacement par utilisateur : ~/Library/Application Support/Workspace/Config.cfg

Voir la section Structure du fichier de configuration pour plus de détails.

Méthode 3 : configuration manuelle (commande defaults)

Pour la configuration manuelle ou les scripts :

# Set language
defaults write net.devolutions.authenticator language -string "en-US"

# Enable tray minimize
defaults write net.devolutions.authenticator reduceToTrayOnClose -bool true

# Set locking option
defaults write net.devolutions.authenticator lockingOption -string "biometric"

Cas d'utilisation : Configurer manuellement, tester, scripts shell

Préférences MDM/gestionnées

Déploiement Jamf Pro

  1. Télécharger ou copier le schéma JSON Jamf Pro pour Devolutions Password Manager :

Click to expand: Devolutions Password Manager Jamf Pro JSON Schema
{
  "title": "Devolutions Password Manager Configuration (net.devolutions.authenticator)",
  "description": "Configuration settings for Devolutions Password Manager deployed via Jamf Pro. These settings are deployed as managed preferences to managed devices.",
  "__version": "1.0",
  "__preferencedomain": "net.devolutions.authenticator",
  "options": {
    "remove_empty_properties": true
  },
  "properties": {
    "dvls": {
      "title": "DVLS Configuration",
      "description": "Devolutions Server connection settings",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "title": "Server Name",
            "description": "Display name for the Devolutions Server",
            "type": "string",
            "default": "Devolutions Server"
          },
          "serverUrl": {
            "title": "Server URL",
            "description": "Full URL to the Devolutions Server (e.g., https://server.company.com)",
            "type": "string",
            "pattern": "^https?://.*"
          },
          "serverVersion": {
            "title": "Server Version",
            "description": "Devolutions Server version (optional)",
            "type": "string",
            "default": ""
          }
        },
        "required": ["serverUrl"]
      },
      "default": []
    },
    "hubs": {
      "title": "Devolutions Cloud Configuration",
      "description": "Devolutions Cloud connection settings",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "title": "Devolutions Cloud URL",
            "description": "Full Devolutions Cloud URL (e.g., https://yourcompany.devolutions.app)",
            "type": "string",
            "pattern": "^https://.*\\.devolutions\\.app$"
          },
          "organizationId": {
            "title": "Organization ID",
            "description": "Organization identifier for Devolutions Cloud",
            "type": "string"
          },
          "type": {
            "title": "Devolutions Cloud Type",
            "description": "Devolutions Cloud connection type (optional)",
            "type": "string"
          },
          "version": {
            "title": "Devolutions Cloud Version",
            "description": "Devolutions Cloud version compatibility",
            "type": "string",
            "default": "2020"
          }
        },
        "required": ["url"]
      },
      "default": []
    },
    "configs": {
      "title": "Application Settings",
      "description": "User preferences and application behavior settings",
      "type": "object",
      "properties": {
        "language": {
          "title": "Language",
          "description": "Default language for Devolutions Password Manager interface",
          "type": "string",
          "enum": [
            "en-US", "fr", "de", "es", "cs", "hu", "it", "nl", "pl", "ru", "sv", "tr", "uk", "zh-CHS", "zh-TW"
          ],
          "default": "en-US",
          "options": {
            "enum_titles": [
              "English", "Français", "Deutsch", "Español", "Čeština", "Magyar", "Italiano",
              "Nederlands", "Polski", "Русский", "Svenska", "Türkçe", "Українська", "简体中文", "繁體中文"
            ]
          }
        },
        "reduceToTrayOnClose": {
          "title": "Minimize to Tray on Close",
          "description": "When enabled, closing the window minimizes to system tray instead of quitting",
          "type": "boolean",
          "default": false
        },
        "clearClipboardSensitiveData": {
          "title": "Clear Clipboard Sensitive Data",
          "description": "Automatically clear sensitive data from clipboard after a specified timeout",
          "type": "boolean",
          "default": false
        },
        "clipboardTimer": {
          "title": "Clipboard Timeout (seconds)",
          "description": "Duration in seconds before clearing clipboard when sensitive data clearing is enabled",
          "type": "integer",
          "enum": [30, 60, 120, 180, 240, 300, 0],
          "default": 30,
          "options": {
            "enum_titles": ["30 seconds", "1 minute", "2 minutes", "3 minutes", "4 minutes", "5 minutes", "Never"]
          }
        },
        "useFavicon": {
          "title": "Use Favicons",
          "description": "Download and display website favicons for entries",
          "type": "boolean",
          "default": false
        },
        "useEntriesSyncOnDatasourceAccess": {
          "title": "Sync Entries on Workspace Access",
          "description": "Automatically synchronize entries when accessing a workspace",
          "type": "boolean",
          "default": false
        },
        "useHubEmbeddedBrowser": {
          "title": "Use Devolutions Cloud Embedded Browser",
          "description": "Open Devolutions Cloud connections in embedded browser (disable if using credential providers)",
          "type": "boolean",
          "default": true
        },
        "lockingOption": {
          "title": "Locking Method",
          "description": "Authentication method used when locking/unlocking Devolutions Password Manager. Leave empty for no locking method.",
          "type": "string",
          "enum": ["", "password", "biometric"],
          "default": "",
          "options": {
            "enum_titles": ["None", "Password/PIN", "Biometric (Touch ID)"]
          }
        },
        "useBackgroundLock": {
          "title": "Lock When Backgrounded",
          "description": "Automatically lock the application when minimized or sent to system tray",
          "type": "boolean",
          "default": false
        },
        "useLockWhenInactive": {
          "title": "Auto-Lock When Inactive",
          "description": "Automatically lock the application after a period of inactivity",
          "type": "boolean",
          "default": false
        },
        "lockInactivityDelay": {
          "title": "Inactivity Lock Delay (seconds)",
          "description": "Time in seconds before locking due to inactivity (requires Auto-Lock to be enabled)",
          "type": "integer",
          "enum": [30, 60, 120, 180, 240, 300],
          "default": 30,
          "options": {
            "enum_titles": ["30 seconds", "1 minute", "2 minutes", "3 minutes", "4 minutes", "5 minutes"]
          }
        }
      }
    },
    "preventStartup": {
      "title": "Prevent Startup",
      "description": "When true, prevents Devolutions Password Manager from starting automatically after configuration deployment",
      "type": "boolean",
      "default": true
    }
  }
}
  1. Dans Jamf Pro, naviguer vers : Computers – Configuration Profiles – Application & Custom Settings

  2. Cliquer sur Configurer et téléverser le fichier de schéma JSON

  3. Configurer les paramètres voulus à l'aide de l'interface graphique fournie par Jamf

  4. Définir la portée du profil pour vos ordinateurs cibles

  5. Déployer le profil de configuration

Option B : profil de configuration manuelle

Si Jamf Pro n’est pas utilisé, il est possible de créer un profil standard de configuration macOS :

Exemple de profil (com.devolutions.workspace.mobileconfig) :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>PayloadContent</key>
    <array>
        <dict>
            <key>PayloadType</key>
            <string>net.devolutions.authenticator</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
            <key>PayloadIdentifier</key>
            <string>net.devolutions.authenticator.config</string>
            <key>PayloadUUID</key>
            <string>GENERATE-UUID-HERE</string>
            <key>PayloadDisplayName</key>
            <string>Devolutions Password Manager Configuration</string>
            <key>language</key>
            <string>en-US</string>
            <key>reduceToTrayOnClose</key>
            <true/>
            <key>lockingOption</key>
            <string>biometric</string>
            <key>dvls</key>
            <array>
                <dict>
                    <key>name</key>
                    <string>Corporate DVLS</string>
                    <key>serverUrl</key>
                    <string>https://devolutions-server.company.com</string>
                </dict>
            </array>
        </dict>
    </array>
</dict>
</plist>

Déployer via :

  • Jamf Pro : Profils de configuration – téléverser le profil

  • Microsoft Intune : configuration de l'appareil – profil personnalisé

  • Autres MDM : téléverser un profil de configuration personnalisé

Microsoft Intune pour Mac

  1. Accéder à : AppareilsProfils de configurationCréer un profil.

  2. Plateforme : macOS.

  3. Type de profil : Personnalisé.

  4. Téléverser le profil de configuration (fichier .mobileconfig).

  5. Affecter aux groupes cibles.

  6. Déployer.

Vérification de la configuration MDM

Sur un Mac géré :

# Check if preferences are set
defaults read net.devolutions.authenticator

# Check for specific setting
defaults read net.devolutions.authenticator language

Structure du fichier de configuration

Les fichiers de configuration utilisent l'extension .cfg et contiennent des données au format JSON.

Format du fichier

{
  "hubs": [
    {
      "url": "https://mycompany.devolutions.app",
      "organizationId": "00000000-0000-0000-0000-000000000000",
      "type": "Business",
      "version": ""
    }
  ],
  "dvls": [
    {
      "name": "Production DVLS",
      "serverUrl": "https://devolutions-server.company.com",
      "serverVersion": ""
    },
    {
      "name": "Development DVLS",
      "serverUrl": "https://devolutions-server-dev.company.com",
      "serverVersion": ""
    }
  ],
  "configs": {
    "language": "en-US",
    "reduceToTrayOnClose": true,
    "clearClipboardSensitiveData": true,
    "clipboardTimer": 30,
    "useFavicon": true,
    "useEntriesSyncOnDatasourceAccess": false,
    "useHubEmbeddedBrowser": true,
    "shareUsageData": false,
    "lockingOption": "biometric",
    "useBackgroundLock": true,
    "useLockWhenInactive": true,
    "lockInactivityDelay": 300
  }
}

Composants du schéma

Tableau Devolutions Cloud (optionnel)

Tableau des instances Devolutions Cloud à configurer.

Champ Type Exigé Description
url string Oui URL Devolutions Cloud (ex. : https://mycompany.devolutions.app)
organizationId string Oui GUID de l'organisation
type string Non Toujours « Business » (rempli automatiquement)
version string Non Version Devolutions Cloud (renseignée automatiquement lors de la première connexion)

Array Devolutions Server (optionnel)

Tableau d'instances Devolutions Server à configurer.

Champ Type Exigé Description
name string Oui Nom d'affichage pour le serveur
serverUrl string Oui (URL Devolutions Server (par exemple : https://devolutions-server.company.com)
serverVersion string Non Version du serveur (renseignée automatiquement lors de la première connexion)

configs Objet (optionnel)

Paramètres d'application à préconfigurer.

Voir Référence des paramètres de configuration pour la liste complète.

Emplacements des fichiers de configuration

Configuration au niveau de l'utilisateur

  • Chemin : ~/Library/Application Support/Workspace/Config.cfg

  • Priorité : Plus élevée pour les configurations spécifiques à l’utilisateur

Configuration à l'échelle du système

  • Chemin : /Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg

  • Priorité : appliquer si la config utilisateur n'existe pas

Préférences gérées (MDM/Jamf)

  • Priorité : la plus élevée (remplace toutes les configurations basées sur des fichiers)

  • Domaine de préférence : net.devolutions.authenticator

  • Clés : Identique à l'objet configs au format JSON

  • Configuration : via le profil MDM ou la commande defaults

Ordre de priorité

Vérifier les sources de la configuration dans l'ordre suivant (la première trouvée prévaut) :

  1. Préférences gérées macOS – politiques MDM/Jamf (priorité maximale)

  2. Fichier de configuration utilisateur – configuration spécifique à l’utilisateur

  3. Fichier de configuration du système – Défaut pour l'ensemble du système (copié à l'emplacement de l'utilisateur)

Référence des paramètres de configuration

Référence complète de tous les paramètres configurables.

Mappage des clés de paramètres

Exporter la clé (config/MDM) Type Par défaut Description
language Chaîne de caractères en-US Langue de l'interface utilisateur de l'application
reduceToTrayOnClose Booléen false Réduire dans la barre d'état système au lieu de quitter
clearClipboardSensitiveData Booléen false Minuterie d'effacement automatique du presse-papiers
clipboardTimer Entier 30 Secondes avant de vider le presse-papiers (1-999)
useFavicon Booléen false Télécharger les favicônes des sites Web pour les entrées
useEntriesSyncOnDatasourceAccess Booléen false Synchroniser automatiquement les entrées lors de l'accès au Workspace
useHubEmbeddedBrowser Booléen true Utiliser le navigateur intégré pour l'authentification Devolutions Cloud
shareUsageData Booléen true Partager des statistiques d'usage anonymes
lockingOption Chaîne de caractères (aucun) Méthode de verrouillage : password, biometric
useBackgroundLock Booléen false Verrouiller lors de la réduction dans la barre d'état système
useLockWhenInactive Booléen false Verrouiller après une période d’inactivité
lockInactivityDelay Entier 30 Secondes avant verrouillage automatique (30-3600)

Langues prises en charge

Code Langue
en-US Anglais (États-Unis)
fr Français
de Allemand
es Espagnol
cs Tchèque
hu Hongrois
it Italien
nl Néerlandais
pl Polonais
ru Russe
sv Suédois
tr Turc
uk Ukrainien
zh-CHS Chinois (simplifié)
zh-TW Chinois (traditionnel)

Options de verrouillage

Valeur Description Exigences
mot de passe Mot de passe maître L'utilisateur définir le mot de passe lors du premier verrouillage
biométrique Touch ID Matériel Touch ID requis
If Touch ID is not available, falls back to password.

Exemples de déploiement

Exemple 1 : Jamf Pro avec Devolutions Server et paramètres de sécurité

Utiliser le schéma JSON Jamf :

  1. Téléverser le schéma JSON vers Jamf Pro

  2. Configurer via l’interface graphique :\n

    • Configuration Devolutions Server : ajouter un serveur avec l'URL https://devolutions-server.company.com

    • Méthode de verrouillage : Biométrique (Touch ID)

    • Verrouiller lors de la mise en arrière-plan : activé

    • Activer le verrouillage automatique en cas d'inactivité

    • Délai de verrouillage en cas d’inactivité : 5 minutes (300 secondes)

  3. Définir la portée sur les ordinateurs cibles

  4. Déployer

Exemple 2 : Configurer manuellement un profil pour Devolutions Cloud

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>PayloadContent</key>
    <array>
        <dict>
            <key>PayloadType</key>
            <string>net.devolutions.authenticator</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
            <key>PayloadIdentifier</key>
            <string>net.devolutions.authenticator.config</string>
            <key>PayloadUUID</key>
            <string>REPLACE-WITH-UNIQUE-UUID</string>
            <key>PayloadDisplayName</key>
            <string>Devolutions Password Manager Cloud Configuration</string>
            <key>hubs</key>
            <array>
                <dict>
                    <key>url</key>
                    <string>https://mycompany.devolutions.app</string>
                    <key>organizationId</key>
                    <string>12345678-1234-1234-1234-123456789abc</string>
                    <key>type</key>
                    <string>Business</string>
                    <key>version</key>
                    <string>2020</string>
                </dict>
            </array>
            <key>configs</key>
            <dict>
                <key>language</key>
                <string>en-US</string>
                <key>lockingOption</key>
                <string>biometric</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

Exemple 3 : commande defaults pour les tests

#!/bin/bash

# Configure Devolutions Server (complex structure requires plist file)
defaults write net.devolutions.authenticator dvls -array-add \
  '{name = "Production DVLS"; serverUrl = "https://devolutions-server.company.com"; }'

# Configure application settings
defaults write net.devolutions.authenticator language -string "en-US"
defaults write net.devolutions.authenticator lockingOption -string "biometric"
defaults write net.devolutions.authenticator useBackgroundLock -bool true
defaults write net.devolutions.authenticator useLockWhenInactive -bool true
defaults write net.devolutions.authenticator lockInactivityDelay -int 300
defaults write net.devolutions.authenticator clearClipboardSensitiveData -bool true
defaults write net.devolutions.authenticator clipboardTimer -int 60

Exemple 4 : Déploiement du fichier de configuration via script

#!/bin/bash

# Create system-wide configuration directory
sudo mkdir -p "/Library/Application Support/Devolutions/Workspace"

# Deploy configuration file
sudo cp "/path/to/config.cfg" "/Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg"

# Set proper permissions
sudo chmod 644 "/Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg"

Exemple 5 : Plusieurs Devolutions Server via un fichier de configuration

Créer config.cfg :

{
  "dvls": [
    {
      "name": "Production DVLS",
      "serverUrl": "https://devolutions-server-prod.company.com"
    },
    {
      "name": "Development DVLS",
      "serverUrl": "https://devolutions-server-dev.company.com"
    },
    {
      "name": "Test DVLS",
      "serverUrl": "https://devolutions-server-test.company.com"
    }
  ],
  "configs": {
    "language": "en-US",
    "shareUsageData": false
  }
}

Déployer via script ou placer manuellement à l'emplacement global du système.

Résolution de problèmes

Configuration MDM non appliquée

Profil de configuration installé mais paramètres non appliqués.

  1. Vérifier le domaine de préférence : S'assurer d'utiliser net.devolutions.authenticator (et non net.devolutions.workspace).

  2. Vérifier le statut du profil : Préférences Système – Profils – Vérifier que le profil est installé.

  3. Forcer l'actualisation du profil : sudo profiles renew -type enrollment.

  4. Vérifier les conflits : Retirer tout fichier de configuration utilisateur déjà existant.

  5. Consulter les journaux : Vérifier Console.app pour les erreurs liées à Devolutions Password Manager.

Fichier de configuration non chargé

Fichier de configuration présent mais non appliqué.

  1. Vérifier l'emplacement du fichier : Vérifier le chemin correct (/Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg).

  2. Vérifier la validité du JSON : Valider la syntaxe du JSON (pas de virgules finales, guillemets appropriés).

  3. Vérifier les permissions : S’assurer que le fichier est lisible par tous les utilisateurs (chmod 644).

  4. Vérifier la propriété : doit appartenir à root ou admin.

  5. Supprimer la configuration de l’utilisateur : Retirer ~/Library/Application Support/Workspace/Config.cfg pour permettre l’application de la configuration système.

Option de verrouillage ne fonctionne pas

Touch ID ne s'active pas.

  1. Vérification du matériel : vérifier que le Mac dispose du matériel Touch ID

  2. Configurer Touch ID : S’assurer que Touch ID est configuré dans Préférences Système – Touch ID

  3. Repli : Le système bascule automatiquement sur le mot de passe si le matériel est indisponible

  4. Vérifier les journaux : examiner les journaux de l'application pour les erreurs d'initialisation biométrique

Confusion du domaine de préférences

Ne pas savoir quel domaine de préférences utiliser.

Solution : Toujours utiliser net.devolutions.authenticator pour toutes les configurations Devolutions Password Manager (mobiles et pour ordinateur de bureau).

Paramètres non conservés

Les paramètres reviennent aux valeurs par défaut après le redémarrage.

  1. MDM vs configuration utilisateur : les paramètres MDM ont la priorité la plus élevée et remplacent les changements de l'utilisateur

  2. Configuration utilisateur vs système : la configuration système ne s’applique que si la configuration utilisateur n’existe pas

  3. Permissions de fichier : vérifier l'autorisation d'accès en écriture à l'emplacement de la configuration utilisateur

Le workspace existe déjà

L'importation échoue avec le message « l'espace de travail existe déjà ».

Explication : le parseur de configuration détecte les doublons par URI d'accès normalisée (sans distinction entre minuscules/majuscules, barre oblique à la fin supprimée).

  1. supprimer manuellement l'espace de travail existant avant d'appliquer la configuration.

  2. Modifier la configuration pour supprimer les entrées dupliquées.

  3. Supprimer le fichier de configuration utilisateur pour forcer la réimportation de la configuration système.

Meilleures pratiques

1. Tester d'abord la configuration

Avant de déployer à tous les utilisateurs :

  1. Créer un groupe test d’ordinateurs dans Jamf/Intune.

  2. Appliquer la configuration au groupe de test.

  3. Vérifier que les Workspace et paramètres fonctionnent comme prévu.

  4. Déployer en production.

2. Utiliser MDM pour gérer des flottes

Toujours utiliser les préférences gérées/MDM pour :

  • Macs gérés par Jamf Pro

  • Macs gérés par Intune

  • Tout environnement géré par MDM

Avantages :

  • Gestion centralisée

  • Application des stratégies

  • Priorité la plus élevée (outrepasse les configurations locales)

  • Approche standard entreprise

3. Documenter la configuration

Maintenir la documentation de votre configuration MDM incluant :

  • Quels workspaces sont préconfigurés

  • Quels paramètres sont appliqués

  • Expérience utilisateur attendue

  • Contact d'assistance pour les problèmes

4. communiquer avec les utilisateurs

Informer les utilisateurs :

  • Espaces de travail préconfigurés

  • Ils doivent toujours se connecter avec leurs identifiants

  • La configuration est effectuée au premier lancement de l'application

  • Contacter les TI si les workspaces n'apparaissent pas

5. Considérations de sécurité

Paramètres de sécurité recommandés :

{
  "lockingOption": "biometric",
  "useBackgroundLock": true,
  "useLockWhenInactive": true,
  "lockInactivityDelay": 300,
  "clearClipboardSensitiveData": true,
  "clipboardTimer": 60,
  "shareUsageData": false
}

Pourquoi :

  • Imposer l'authentification Touch ID

  • Verrouiller l'appli immédiatement lorsqu'elle passe en arrière-plan

  • Se verrouille automatiquement après 5 minutes d’inactivité

  • Vider le presse-papiers après 60 secondes

  • Désactiver la collecte de données d’usage (optionnel)

6. Préciser les exigences de format de l'URL

Toutes les URL doivent :

  • Inclure le protocole (https://)

  • Être des URL valides et accessibles

  • Ne pas terminer par une barre oblique finale (l’appli normalisera)

Exemples :

  • https://devolutions-server.company.com

  • https://password-manager.devolutions.app

  • devolutions-server.company.com (https:// manquant)

  • http://devolutions-server.company.com (HTTP non recommandé)

7. Utiliser le schéma JSON de Jamf

Pour les déploiements Jamf Pro, toujours utiliser le schéma JSON :

  • Fournir une interface utilisateur conviviale GUI

  • Valider la configuration avant le déploiement

  • Éviter les erreurs de syntaxe

  • Afficher toutes les options disponibles avec les descriptions

Référence rapide

Fichier de configuration minimal

{
  "dvls": [
    {
      "name": "Devolutions Server",
      "serverUrl": "https://devolutions-server.example.com"
    }
  ]
}

Domaine de préférence

net.devolutions.authenticator

Emplacement de la configuration à l’échelle du système

/Library/Application Support/Devolutions/Workspace/DefaultConfig.cfg

Vérifier les paramètres MDM

defaults read net.devolutions.authenticator

Qu’est-ce que la préconfiguration MDM

La pré-configuration MDM (Mobile Device Management) permet aux administrateurs informatiques de provisionner automatiquement les workspaces Devolutions Password Manager (Devolutions Server et Devolutions Cloud) et les paramètres d’application sur les appareils iOS gérés avant que les utilisateurs ne lancent l’appli pour la première fois.

Bénéfices

  • Déploiement sans intervention : les utilisateurs reçoivent des espaces de travail préconfigurés.

  • Configuration cohérente : Veiller à ce que tous les utilisateurs aient les mêmes paramètres.

  • Réduire la charge d'assistance : pas besoin d'accompagner manuellement les utilisateurs pendant la configuration.

  • Appliquer des politiques de sécurité : Préconfigurer le verrouillage biométrique, les minuteries du presse-papiers, etc.

Fonctionnement

  1. l'administrateur TI configurer les espaces de travail et les paramètres dans la console MDM (Jamf ou Apple MDM).

  2. MDM pousse la configuration vers les appareils gérés.

  3. L'utilisateur lance l'appli pour la première fois.

  4. L’appli lit la configuration MDM et crée automatiquement les workspaces.

  5. L’utilisateur s’authentifie pour terminer la connexion (saisit des identifiants).

Notes importantes

  • Authentification requise : les workspaces préconfigurés sont créés dans un état « en attente ». Les utilisateurs doivent toujours s'authentifier (se connecter) pour terminer la connexion.

  • Premier lancement uniquement : appliquer la configuration une seule fois lors du premier lancement. Les modifications ultérieures nécessitent la réinstallation de l'appli ou une configuration manuelle.

  • Identifiants NON stockés : La préconfiguration MDM n'inclut PAS les identifiants utilisateur. Les utilisateurs doivent se connecter avec leurs propres identifiants.

Prérequis

  • Serveur Jamf Pro ou solution MDM Apple

  • Devolutions Password Manager déployé via MDM (App Store ou interne)

  • iOS 13.0 ou version ultérieure sur des appareils gérés

  • Appareils inscrits dans le MDM

Déploiement avec Jamf Pro

Étape 1 : Créer la configuration de l’appli gérée

  1. Se connecter à Jamf Pro.

  2. Naviguer vers Applications mobiles – Chercher l'appli « Devolutions Password Manager ».

  3. Cliquer sur l'appli – Aller à l'onglet Configuration de l'appli.

  4. Cliquer sur Ajouter pour créer une nouvelle configuration.

Étape 2 : Configurer les paramètres

Dans l'écran de configuration de l'appli :

Méthode de configuration

  • Sélectionner : Télécharger le fichier de spécification dans le générateur Jamf AppConfig pour obtenir un formulaire graphique (recommandé), OU

  • Sélectionner : Entrer la configuration directement comme plist/dictionnaire dans Jamf Pro

Jamf Pro utilise le standard AppConfig community pour la configuration des applications gérées sur iOS. Le fichier de spécification fournit un formulaire graphique dans le générateur Jamf AppConfig permettant aux administrateurs de configurer les paramètres sans écrire de configuration brute.

  1. Télécharger le fichier de spécification AppConfig Devolutions Password Manager.

  2. Ouvrir le Jamf AppConfig Generator.

  3. Téléverser le specfile et configurer les paramètres via le formulaire graphique.

  4. Télécharger le fichier de configuration plist généré à partir du générateur.

  5. Dans Jamf Pro, aller à Mobile Device AppsDevolutions Password ManagerApp Configuration.

  6. Coller le plist généré dans le champ de configuration de l'App, attribuer aux appareils cibles et déployer.

Option B : configuration directe (alternative)

Si ne pas utiliser le specfile, permettre de saisir la configuration directement comme un dictionnaire plist dans Jamf Pro. Utiliser le format de clés à plat ci-dessous — l'appli transforme automatiquement les clés à plat (ex. : dvls_serverUrl, hub_url) en structure imbriquée interne :

<dict>
  <!–– Devolutions Server ––>
  <key>dvls_serverUrl</key>
  <string>https://devolutions-server.company.com</string>

  <!–– Devolutions Cloud ––>
  <key>hub_url</key>
  <string>https://password-manager.devolutions.app</string>
  <key>hub_organizationId</key>
  <string>your–org–id</string>

  <!–– Application Settings ––>
  <key>language</key>
  <string>en–US</string>
  <key>lockingOption</key>
  <string>biometric</string>
  <key>shareUsageData</key>
  <false/>
  <key>useBackgroundLock</key>
  <true/>
  <key>backgroundLockDelay</key>
  <integer>0</integer>
  <key>useLockWhenInactive</key>
  <true/>
  <key>lockInactivityDelay</key>
  <integer>300</integer>
  <key>useFavicon</key>
  <true/>
  <key>autoSearch</key>
  <false/>
  <key>useHubEmbeddedBrowser</key>
  <true/>
</dict>

Note : Le format de clé plat (dvls_serverUrl, hub_url) est utilisé pour la configuration appli gérée par Jamf. L'appli détecte automatiquement ce format et le transforme dans la structure interne imbriquée. Un nom d'affichage est généré automatiquement à partir de l'URL DVLS.

Étape 3 : attribuer aux appareils

  1. Définir Distribution Method à la portée appropriée (utilisateurs, appareils ou groupes).

  2. Cliquer sur Enregistrer.

  3. Pousser la configuration vers les appareils cibles.

Étape 4 : Vérifier le déploiement

Sur un appareil iOS géré :

  1. Installer/lancer Devolutions Password Manager.

  2. L'appli doit automatiquement afficher les Workspace préconfigurés.

  3. L'utilisateur touche le workspace – saisir les identifiants – se connecter.

Schéma de configuration

Configuration de Devolutions Server

{
  "name": string,           // Display name (required)
  "serverUrl": string,      // Full URL with https:// (required)
  "serverVersion": string   // Version like "2024.1" (optional)
}

Configuration Devolutions Cloud

{
  "url": string,            // Full URL with https:// (required)
  "organizationId": string, // Org ID (optional)
  "type": "business",       // Always "business" (required)
  "version": "2020"         // Always "2020" (required)
}

Paramètres de l’application

Paramètre Type Valeurs valides Description
langue Chaîne de caractères "en-US", "fr", "de", "es", etc. Langue d'affichage de l'appli
lockingOption Chaîne de caractères "", "biometric" Méthode de verrouillage de l'application
shareUsageData Booléen true, false Partager des analyses d'utilisation anonymes
useBackgroundLock Booléen true, false Verrouiller lorsque l'appli passe en arrière-plan
backgroundLockDelay Entier 0, 60, 300, 900, 1800, 3600 Délai avant le verrouillage lorsque mis en arrière-plan (secondes)
useLockWhenInactive Booléen true, false Activer le verrouillage automatique après inactivité
lockInactivityDelay Entier 30, 60, 120, 180, 240, 300 Délai d’inactivité (secondes)
useFavicon Booléen true, false Utiliser les favicônes des sites Web
autoSearch Booléen true, false Activer la recherche automatique dans les coffres
useHubEmbeddedBrowser Booléen true, false Utiliser le navigateur intégré pour l'authentification Devolutions Cloud
highlightSpecialCharacters Booléen true, false Mettre en évidence les caractères spéciaux dans les mots de passe

Exemples de configuration

Exemple 1 : Un seul Devolutions Server uniquement

Configuration Jamf (en utilisant l’interface graphique du schéma) :

  • Devolutions Server : Ajouter un serveur

    • Nom : « Corporate DVLS »

    • URL du serveur : "https://devolutions-server.acme.com"

    • Version du serveur : "2024.1"

  • Instances Devolutions Cloud : Laisser vide

  • Paramètres de l'application : Laisser par défaut

JSON direct (si utilisation sans schéma) :

{
  "dvls": [
    {
      "name": "Corporate DVLS",
      "serverUrl": "https://devolutions-server.acme.com",
      "serverVersion": "2024.1"
    }
  ]
}

Exemple 2 : Devolutions Cloud avec paramètres de sécurité

Configuration Jamf (en utilisant l’interface graphique du schéma) :

  • Devolutions Cloud instances : Ajouter une instance Devolutions Cloud\n

    • URL Devolutions Cloud : "https://password-manager.devolutions.app"

    • ID de l'organisation : (laisser vide ou entrer votre ID d'organisation)

  • Paramètres de l’application :\n

    • Méthode de verrouillage : « biométrique (Touch ID/Face ID) »

    • Verrouiller lors de la mise en arrière-plan : activé

    • Délai de verrouillage en arrière-plan : « Immédiatement »

    • Verrouillage automatique en cas d'inactivité : activé

    • Délai de verrouillage d'inactivité : « 3 minutes »

JSON direct (si utilisation sans schéma) :

{
  "hubs": [
    {
      "url": "https://password-manager.devolutions.app",
      "organizationId": "",
      "type": "business",
      "version": "2020"
    }
  ],
  "configs": {
    "lockingOption": "biometric",
    "useBackgroundLock": true,
    "backgroundLockDelay": 0,
    "useLockWhenInactive": true,
    "lockInactivityDelay": 180
  }
}

Exemple 3 : Plusieurs espaces de travail

Configuration Jamf (en utilisant l’interface graphique du schéma) :

  • Devolutions Server : Ajouter plusieurs\n

    • Serveur 1 : Nom « Production DVLS », URL « https://devolutions-server–prod.company.com »

    • Serveur 2 : Nom « Test DVLS », URL « https://devolutions-server–test.company.com »

  • Instances Devolutions Cloud : Ajouter une\n

    • URL Devolutions Cloud : "https://password-manager.devolutions.app"

    • ID d’organisation : "org–abc123"

  • Paramètres de l’application :\n

    • Langue : "English"

    • Partager les données d’usage : Désactivé

JSON direct (si utilisation sans schéma) :

{
  "dvls": [
    {
      "name": "Production devolutions-server",
      "serverUrl": "https://devolutions-server–prod.company.com",
      "serverVersion": "2024.1"
    },
    {
      "name": "Test devolutions-server",
      "serverUrl": "https://devolutions-server–test.company.com",
      "serverVersion": "2024.1"
    }
  ],
  "hubs": [
    {
      "url": "https://password-manager.devolutions.app",
      "organizationId": "org–abc123",
      "type": "business",
      "version": "2020"
    }
  ],
  "configs": {
    "language": "en–US",
    "shareUsageData": false
  }
}

Résolution de problèmes

Configuration non appliquée

Problème : Les utilisateurs signalent qu’aucun Workspace préconfiguré n’apparaît.

Solutions :

  1. Vérifier l’inscription MDM :\n

    • iOS : Paramètres – Général – VPN et gestion des appareils – Vérifier le profil

  2. Vérifier la syntaxe de la configuration :\n

    • Valider la syntaxe JSON (utiliser jsonlint.com)

    • S'assurer que tous les champs obligatoires sont présents

  3. Vérifier que l'appli est gérée par MDM :\n

    • L'appli doit être déployée via MDM (et non installée manuellement depuis l'App Store)

  4. Réappliquer la configuration :\n

    • Supprimer l'appli – Réinstaller via MDM – La configuration s'applique au premier lancement

Les utilisateurs ne peuvent pas supprimer les espaces de travail en attente

Utilisateurs bloqués avec des workspaces en attente qu'ils ne peuvent pas supprimer.

  • Nouveau dans la version 2025.3.2 : Les utilisateurs peuvent désormais supprimer les espaces de travail en attente\n

    • Depuis le menu du tiroir : Appuyer longuement sur le Workspace – Sélectionner « Retirer »

    • Depuis l'écran en attente : Appuyer sur le bouton "Supprimer"

Mauvais paramètres appliqués

Les paramètres ne correspondent pas aux valeurs attendues.

  1. Vérifier les types de données :\n

    • Booléens : Utiliser true/false (pas les chaînes "true"/"false")

    • Entiers : utiliser des nombres sans guillemets (ex. : 60 et non "60")

    • Chaînes : Toujours utiliser des guillemets (ex. : "en–US")

  2. Vérifier les noms des paramètres :\n

    • Vérifier l'orthographe (par exemple, lockInactivityDelay pas lockInactivityTimeout)

    • Respecte la casse (utiliser l'exacte casse indiquée dans le schéma)

Prendre en charge plusieurs instances du même workspace

Des espaces de travail en double apparaissent. La configuration a été appliquée plusieurs fois (réinstallation de l'appli ou changement de configuration).

  • La préconfiguration vérifie l'existence des Workspace à partir de l'URL

  • Si des doublons existent, permettre aux utilisateurs de supprimer les supplémentaires via le menu latéral

Verrouillage biométrique non fonctionnel

Face ID/Touch ID ne s'active pas.

  1. Vérifier la prise en charge de l'appareil : Vérifier que l'appareil dispose du matériel Face ID ou Touch ID

  2. Vérifier les paramètres iOS : S'assurer que Face ID/Touch ID est configuré dans les paramètres

  3. Vérifier les permissions : l’appli peut nécessiter la permission biométrique de l'utilisateur

  4. Repli : le système bascule automatiquement vers le code d'accès si la biométrie n'est pas disponible

Meilleures pratiques

1. Tester d'abord la configuration

Avant de déployer à tous les utilisateurs :

  1. Créer un groupe de test d'utilisateur/appareil dans Jamf.

  2. Appliquer la configuration au groupe de test.

  3. Vérifier que les Workspace et paramètres fonctionnent comme prévu.

  4. Déployer en production.

2. Utiliser le fichier de spécification AppConfig

Pour les déploiements Jamf Pro :

  • Toujours utiliser le fichier de spécification AppConfig (option A).

  • Fournir un formulaire GUI convivial via le Générateur Jamf AppConfig.

  • Valider la configuration avant déploiement.

  • Éviter les erreurs de syntaxe.

  • Afficher toutes les options disponibles avec descriptions.

3. Documenter la configuration

Maintenir la documentation de votre configuration MDM incluant :

  • Quels workspaces sont préconfigurés

  • Quels paramètres sont appliqués

  • Expérience utilisateur attendue

  • Contact d'assistance pour les problèmes

4. communiquer avec les utilisateurs

Informer les utilisateurs :

  • Les workspaces seront préconfigurés

  • Ils doivent toujours se connecter avec leurs identifiants

  • La configuration est effectuée au premier lancement de l'application

  • Contacter les TI si les workspaces n'apparaissent pas

5. Considérations de sécurité

Paramètres de sécurité recommandés :

{
  "lockingOption": "biometric",
  "useBackgroundLock": true,
  "backgroundLockDelay": 0,
  "useLockWhenInactive": true,
  "lockInactivityDelay": 300,
  "shareUsageData": false
}

Pourquoi :

  • Imposer l’authentification par Face ID/Touch ID

  • Verrouiller l'appli immédiatement lorsqu'elle passe en arrière-plan

  • Se verrouiller automatiquement après 5 minutes d’inactivité

  • Désactiver la collecte de données d’usage (optionnel)

6. Compatibilité des versions

  • Version minimale : 2025.3.2 (pour le support complet de l’espace de travail en attente)

  • Devolutions Server versions : Devolutions Server 2023.3+ recommandé

  • iOS : 13.0+ requis

7. Définir les exigences du format d'URL

Toutes les URL doivent :

  • Inclure le protocole (https://)

  • Être des URL valides et accessibles

  • Ne pas terminer par une barre oblique finale (l’appli normalisera)

Exemples :

  • https://devolutions-server.company.com

  • https://password-manager.devolutions.app

  • devolutions-server.company.com (https:// manquant)

  • http://devolutions-server.company.com (HTTP non recommandé)

8. Gérer plusieurs environnements

Pour les organisations ayant plusieurs environnements (prod, dev, test) :

  • Créer des profils de configuration Jamf séparés pour chaque environnement

  • Assigner chaque profil aux groupes d'appareils appropriés

  • Les utilisateurs dans chaque environnement reçoivent automatiquement les bons workspaces

Référence rapide

Configuration minimale

{
  "dvls": [
    {
      "name": "Devolutions Server",
      "serverUrl": "https://devolutions-server.example.com"
    }
  ]
}

Domaine de préférence

net.devolutions.workspace.mobile

Résumé des étapes de déploiement

  1. Télécharger le fichier de spécifications AppConfig.

  2. Téléverser dans le générateur Jamf AppConfig.

  3. Configurer les paramètres via le formulaire graphique.

  4. Télécharger le fichier plist généré.

  5. Dans Jamf Pro : Apps d'appareils mobiles – Devolutions Password Manager – Configuration de l'application.

  6. Coller le plist, cibler les appareils concernés et déployer.

Devolutions Forum logo Partagez vos commentaires