Architecture de personnalisation des utilisateurs (User Personalization)

La personnalisation des utilisateurs (Environment Manager User Personalization) utilise une architecture à trois niveaux.

Dans cette section :

Introduction

Collectivement, les composants de l'architecture standard sont appelés « site ». Les sites permettent de regrouper les utilisateurs de façon logique, par exemple par zone de l'entreprise ou situation géographique. Pour les entreprises dotées de plusieurs sites, tous les sites utilisent la même architecture et sont liés via leurs serveurs SQL Server par le biais de la réplication.

Il n'est pas obligatoire de définir un serveur SQL Server dédié pour le site de chaque filiale. Cependant, cela améliore les performances, car le trafic est confiné sur le réseau local (LAN) et n'a pas besoin de circuler sur le réseau étendu (WAN).

Dans le diagramme ci-dessous, le système est constitué de deux sites : le site par défaut et un site de filiale facultatif.

Les ordinateurs client d'un site communiquent avec leur serveur de personnalisation chaque fois que l'un des événements suivants se produit :

  • Connexion - Lorsqu'un utilisateur se connecte à un poste client géré, le fichier de paquet Environment Manager (AEMP) est chargé. Si vous avez activé Personnalisation des utilisateurs, l'utilisateur est connecté au serveur de personnalisation indiqué dans la configuration. Les détails de l'utilisateur, du poste client et des versions de logiciel sont transmis du poste client au serveur, afin de déterminer le site et le groupe de personnalisation dont l'utilisateur est membre. Une configuration de personnalisation est retransmise au client sur le poste client géré par le serveur de personnalisation. Ce fichier de configuration décrit les paramètres de personnalisation de l'utilisateur, avec les détails des applications gérées et des certificats de cet utilisateur.

    Les paramètres Windows sont synchronisés et appliqués au poste client pour achever la connexion de personnalisation de l'utilisateur.

  • Démarrage d'application - Lorsqu'un utilisateur lance une application sur le poste client, il marque une courte pause pour permettre à Environment Manager d'effectuer les actions de virtualisation voulues.

    Les détails de l'application sont analysés et Environment Manager vérifie si Personnalisation des utilisateurs est activé et si l'application doit être gérée. Pour les applications non gérées, toutes les actions de configuration de stratégies sont appliquées et l'application continue sans que les paramètres Personnalisation des utilisateurs soient gérés.

    Pour les applications gérées, le fichier de configuration propre à l'application est créé. Il détaille les inclusions et exclusions de fichier et de dossier, ainsi qu'un sous-ensemble des propriétés globales configurées dans la base de données Personnalisation des utilisateurs.

    Le mécanisme de configuration des stratégies (Environment Manager Policy Configuration) est averti du démarrage du processus et toutes les actions de stratégie pertinentes sont répliquées dans le cache virtuel.
    Pendant que l'application s'exécute et que l'utilisateur continue de changer des paramètres de personnalisation des utilisateurs dans cette application, tous les changements sont virtualisés et écrits dans le cache de personnalisation sur le poste client, plutôt que dans le registre physique ou le système de fichiers.

    Pour les groupes d'applications configurés dans Environment Manager, la base de données de personnalisation est synchronisée uniquement lorsque la première application du groupe démarre. La synchronisation n'est pas effectuée au démarrage des autres applications du groupe.

  • Arrêt d'application - Lorsqu'une application se ferme, le serveur de personnalisation est averti et une copie des paramètres de personnalisation modifiés est stockée dans la base de données SQL. Si le processus est le dernier d'un groupe à se fermer, ou s'il s'agit de la dernière instance d'un processus géré pour des applications similaires, la synchronisation du cache a lieu sur le serveur.

    Si une application est fermée alors que les autres applications du même groupe d'applications sont toujours ouvertes, la synchronisation dans la base de données n'est pas effectuée. La base de données est synchronisée uniquement lorsque la dernière application du groupe se ferme.

  • Déconnexion - Lorsqu'un utilisateur se déconnecte, toutes les applications gérées toujours en cours d'exécution sont arrêtées par Windows et la déconnexion s'effectue normalement avant l'affichage de l'écran de déconnexion Environment Manager. Les paramètres d'application, de poste de travail et de certificat sont synchronisés avec la base de données, et le cache virtuel local est effacé. Une fois l'opération terminée, l'écran de déconnexion Environment Manager disparaît et la déconnexion Windows s'effectue normalement.

    Si l'option Cache local est activée, le cache virtuel local n'est pas effacé, ce qui permet à l'utilisateur de conserver ses paramètres après s'être déconnecté du réseau d'entreprise.

  • Interrogation de configuration - Les administrateurs peuvent apporter des changements aux configurations de personnalisation des utilisateurs pendant que les utilisateurs sont connectés. Le système interroge la configuration à la fréquence prédéfinie, afin de repérer tous les changements de configuration et de les appliquer aux postes client gérés. L'intervalle d'interrogation est défini sur la console, dans Paramètres avancés.

Le cache virtuel des postes client est le dossier racine de toutes les données de personnalisation des utilisateurs. Le système y stocke les fichiers virtualisés et les paramètres de registre avant la synchronisation avec la base de données de personnalisation. Les données de chaque paramètre et de chaque application gérée sont stockées à cet endroit, et tenues à jour via la synchronisation avec la base de données de personnalisation.

Le cache virtuel est un dossier masqué dont le chemin est C:\AppSenseVirtual sur chacun des postes client gérés.

Chacun des événements ci-dessus crée une demande synchrone, où le client vérifie que le cache virtuel local est à jour par rapport à la base de données SQL. Chaque fois qu'une application démarre ou s'arrête, le logiciel s'assure que la base de données SQL et le cache virtuel local sont synchronisés.

Niveau 1 - Ordinateur client

L'ordinateur client héberge la session de connexion de l'utilisateur. Cette session inclut le logiciel Environment Manager contenant les modules Personnalisation des utilisateurs qui surveillent les changements apportés aux applications gérées par l'utilisateur, et les retransmettent au serveur de personnalisation.

Les ordinateurs client peuvent combiner toutes sortes de matériel et de logiciels capables d'exécuter une session Windows :

  • Postes de travail autonomes, ordinateurs portables et tablettes
  • Serveurs de terminal
  • Microsoft Hyper-V

Niveau 2 - Serveur de personnalisation

Le serveur de personnalisation est implémenté en tant que site Web IIS (Internet Information Services) et joue le rôle de broker (répartiteur) entre les postes client et la base de données de personnalisation. Cela permet d'accéder à la base de données depuis plusieurs clients à contrôler depuis le même endroit. Le serveur de personnalisation peut vérifier l'identité des clients avant de traiter les demandes, afin que ces clients n'aient pas besoin d'être ajoutés en tant qu'utilisateurs dans la base de données.

Demande d'état

Pour vérifier qu'un serveur de personnalisation est installé et en cours d'exécution, et pour tester la connexion de base de données, entrez l'URL suivante dans votre navigateur Internet, en remplaçant <SERVEUR> par le nom du serveur voulu :

http://<SERVEUR>/PersonalizationServer/

Le fichier status.aspx d'un serveur indique si la connexion au serveur a réussi et affiche des détails supplémentaires sur la connexion, la base de données et le serveur.

Page status.aspx

Demande d'état d'équilibrage de charge

Si vous utilisez un outil de surveillance de l'équilibrage de charge pour vérifier la page d'état du serveur (status.aspx), où le serveur est configuré sur Authentification Windows, cet outil de surveillance doit fournir les références d'authentification Windows dans les en-têtes HTTP. Sinon, le serveur envoie la réponse « non autorisé ». Autre solution : vous pouvez utiliser l'une des méthodes suivantes, en fonction de votre installation.

Pour vérifier l'état de santé de serveurs avec équilibrage de charge, utilisez les méthodes suivantes, en fonction de votre installation.

IIS7 - Windows Server 2008 et R2

Utilisez les URL suivantes dans un navigateur Internet, en remplaçant <SERVEUR> par le nom de serveur approprié :

  • http://<SERVEUR>/PersonalizationServer/dbmonitor.aspx - Vérifie la connexion à la base de données. Renvoie « OK » si la base de données est accessible et « FAIL » si elle ne l'est pas.
  • http://<SERVEUR>/PersonalizationServer/pingmonitor.aspx - Vérifie si l'adresse du serveur de personnalisation est accessible et renvoie « OK » si tel est le cas. L'absence de réponse signale une erreur.

IIS6 - Windows Server 2003

Pour IIS6, vous devez utiliser le script SetMonitorAnonymousIIS6.vbs pour configurer dbmonitor.aspx et pingmonitor.aspx en vue de l'accès anonyme. Pour en savoir plus, contactez le support.

Niveau 3 - Serveur SQL Server

Stocke des informations concernant les sites et serveurs de personnalisation, les utilisateurs et les groupes, les applications, les données de configuration des postes client et les données de personnalisation des utilisateurs.

Les données de serveur de personnalisation sont organisées et stockées dans des tables sur le serveur SQL Server, avec les regroupements logiques suivants :

  • Données de personnalisation - Contient des données concernant l'utilisateur, notamment les détails d'appartenance aux groupes, et contrôle les données des applications gérées. Les données d'application sont mises à jour chaque fois qu'une application gérée s'ouvre ou se ferme.
  • Appartenance aux sites - Héberge les informations d'appartenance aux sites, qui transmettent les détails du serveur de personnalisation auquel l'utilisateur doit être connecté. Une fois la connexion établie, les informations de configuration sont récupérées, y compris les détails des inclusions et exclusions de dossier et d'élément de registre.
  • Affectation de groupes d'utilisateurs - Définit le groupe dont l'utilisateur est membre, ce qui détermine les applications gérées pour cet utilisateur, en plus de ses paramètres Windows.
  • Utilisateurs autorisés - Contient des tables qui contrôlent les personnes autorisées à se connecter au serveur de personnalisation et les opérations qu'elles peuvent réaliser une fois connectées.
  • Archive - Stocke les données d'archive des tâches d'archivage quotidiennes et à la demande de l'agent SQL Agent, dans deux tables correspondant aux archives de profil d'application et aux archives de données d'application.
  • Audit - Sert à définir et à configurer les événements d'audit générés en interne, et à contrôler quels événements sont créés et à quel endroit. À partir de ces données, Management Center génère les alertes et rapports nécessaires.

  • Paramètres d'application gérée - Contient les détails de tous les chemins d'inclusion et d'exclusion de registre et de dossier, pour chaque application et groupe d'applications.
  • Paramètres généraux - Contient les propriétés globales définies par le système et par l'utilisateur pour les paires clé-valeur, notamment la version de la console, les délais et les informations d'archivage. Les informations d'installation incluent l'historique des mises à niveau et sont gérées dans le portail de configuration des serveurs (SCP) Ivanti.

SQL Server AlwaysOn et mise en miroir

SQL Server AlwaysOn (Toujours actif) est la technologie de serveur SQL préférée pour la prise en charge des scénarios de haute disponibilité/récupération après sinistre, et les serveurs User Workspace Manager 10.x ont été optimisés pour prendre en charge cette technologie.

La mise en miroir SQL est disponible pour les clients User Workspace Manager 10.1 FR1+ actuellement en cours de transition vers la technologie AlwaysOn. Pour en savoir plus, consultez l'aide User Workspace Manager.

Compatibilité d'Azure SQL en SaaS

Il est désormais possible de déployer la base de données de personnalisation en tant que base de données Azure SQL. Auparavant, il fallait disposer d'une machine virtuelle Azure exécutant Microsoft SQL Server. Avec cette nouvelle fonction, vous n'avez plus besoin d'utiliser des machines virtuelles pour gérer votre base de données SQL dans Azure. Les étapes à suivre pour préparer, configurer et déployer une base de données (nouvelle ou existante) dans Azure sont décrites dans le document suivant sur le site de la communauté Ivanti : DOC-73044

Vous continuez à configurer et à gérer la base de données via le portail de configuration des serveurs (SCP), et le système prend toujours en charge les installations SQL Serveur sur site et sur machine virtuelle Azure.