Brevet FR3074329A1 — publié le 20190531

Procédé et dispositif d'affichage sur un terminal local d'une application exécutée sur un serveur distant au moyen d'un protocole de bureau à distance Domaine technique L'invention se situe dans le domaine de l'affichage sur un dispositif d'affichage d'un terminal local d'un objet graphique généré par un serveur distant. Plus précisément, l'invention s'applique à un terminal local et un serveur distant mettant en oeuvre un protocole de bureau à distance. Elle io s'applique notamment au protocole de bureau à distance connu sous le nom de RDP, pour l'anglais Remote Desktop Protocol. État de la technique antérieure De plus en plus d'utilisateurs mettent en oeuvre des systèmes 15 informatiques, qui peuvent utiliser des protocoles tels que le protocole de bureau à distance, le protocole ICA (pour l'anglais Independant Computing Architecture) ou d'autres, pour visualiser, depuis un terminal local, au moyen d'une connexion à distance, un bureau ou une application dont l'affichage est en réalité généré au niveau d'un équipement distant, par la suite appelé 20 serveur distant, dudit terminal local. Classiquement, de tels systèmes informatiques transmettent à destination du serveur distant, au moyen d'une connexion réseau, des actions de pression effectuée sur un clavier et des clics réalisés sur une souris du terminal local, tout en assurant le rafraîchissement du dispositif d'affichage du terminal local, 25 en transmettant au terminal local les mises à jour d'un affichage généré par le serveur distant. Aussi, le terminal local ne reçoit que des mises à jour d'affichage générées par le serveur distant. Les protocoles de bureau à distance, tel que le protocole RDP, distinguent une connexion de type bureau (en anglais Remote Desktop) et une 30 connexion de type application à distance (en anglais RemoteApp). Une connexion de type bureau présente un affichage d'un bureau généré par le serveur distant dans une fenêtre, dite locale ou locale de type bureau, affichée sur un dispositif d'affichage du terminal local. -2 Dans la présente description, le mot bureau est employé dans son sens classique pour désigner l'environnement de travail d'un utilisateur, et désigne l'ensemble des composants graphiques affichés par un dispositif d'affichage, comportant un ou plusieurs écrans d'affichage, lors de l'ouverture d'une 5 connexion sur un ordinateur générant un affichage effectivement affiché sur ledit dispositif d'affichage. Classiquement, un bureau peut comprendre un menu « Démarrer », une barre des tâches, une zone de notification et une ou plusieurs fenêtres correspondant à une ou plusieurs applications ouvertes sur le serveur distant. Aussi, une connexion de type bureau affiche, dans la fenêtre locale, tout le bureau généré par le serveur distant. Un inconvénient d'une connexion de type bureau est que le bureau est prédéterminé en taille avant l'établissement de ladite connexion et reste fixé en taille pour toute la durée de ladite connexion : un utilisateur ne peut pas le redimensionner. La fenêtre locale peut être déplacée ou rétrécie. Dans le cas où celle-ci est rétrécie, une partie du bureau est masquée ; la partie visible peut être adaptée en utilisant des ascenseurs (en anglais scrollbars) disposés sur les côtés de la fenêtre. Une connexion de type application à distance présente un affichage généré par une application s'exécutant sur le serveur distant dans une ou plusieurs fenêtres, dites locales ou locales de type application, affichées sur un dispositif d'affichage du terminal local. Aussi, au lieu de présenter tout le bureau du serveur distant, seul l'affichage généré par l'application s'exécutant sur le serveur distant est présenté dans les fenêtres locales de type application. Les fenêtres locales de type application sont redimensionnables, peuvent être déplacées sur un même écran d'un dispositif d'affichage, ou être déposées entre plusieurs écrans d'un dispositif d'affichage et possèdent leurs propres entrées sur la barre des tâches du bureau du terminal local. Aussi, une connexion de type application donne à l'utilisateur le sentiment, qui est faux, que l'application, dont l'affichage est affiché sur les fenêtres locales de type application, est une application s'exécutant sur le terminal local. Un inconvénient des protocoles de bureau à distance, tel que le protocole RDP, est qu'il n'est pas possible d'établir une connexion respectivement d'un type, bureau ou application, entre un terminal local et un -3 serveur distant, pour accéder aux ressources que ce dernier propose, respectivement de l'autre type, application ou bureau. Or, un utilisateur ne connaît pas nécessairement le type de ressources qu'il est amené à utiliser. 5 Exposé de l'invention Un but de l'invention est notamment de remédier à tout ou partie des inconvénients précités. Selon un premier aspect de l'invention, il est proposé un procédé io d'affichage d'un objet graphique généré par un serveur distant, sur un terminal local, dans une fenêtre dite locale affichée sur un dispositif d'affichage du terminal local, ledit terminal communiquant avec ledit serveur par l'intermédiaire d'une passerelle mandataire (pour l'anglais proxy) pour le protocole de bureau à distance, tel que le protocole RDP, ladite passerelle 15 établissant une connexion entre ledit terminal local et ledit serveur distant, ladite connexion comportant une connexion primaire établie entre ledit terminal local et ladite passerelle mandataire de type application à distance, et une connexion secondaire établie entre ladite passerelle mandataire et ledit serveur distant. 20 Le procédé d'affichage comporte une étape de détection du type de ladite connexion secondaire. Lorsque le type détecté est une connexion de type bureau, le procédé comporte en outre une étape de transformation, réalisée par ladite passerelle mandataire, de données provenant dudit serveur distant et relatives à une 25 fenêtre locale de type bureau, en des données à destination dudit terminal local et relatives à une fenêtre locale de type application à distance. Par protocole de bureau à distance, la présente invention désigne, de préférence notamment, le protocole RDP ou l'une de ses évolutions. Par connexion de type bureau, la présente invention désigne, de 30 préférence notamment, une connexion selon le protocole RDP, ou l'une de ses évolutions, de type Remote Desktop. -4 Par connexion de type application à distance, la présente invention désigne, de préférence, une connexion selon le protocole RDP, ou l'une de ses évolutions, de type RemoteApp. Avec le procédé selon le premier aspect de l'invention, le terminal local 5 reçoit des données relatives à une fenêtre locale de type application provenant de la passerelle mandataire, que la connexion secondaire soit une connexion de type bureau ou une connexion de type application à distance. Aussi, l'utilisation par le terminal local de la passerelle mandataire et du procédé selon l'invention résout le problème technique posé. io En effet, la transformation, réalisée par la passerelle mandataire, de la fenêtre de type bureau à destination de la passerelle mandataire, en une fenêtre de type application, à destination du terminal local, permet de n'avoir qu'un seul type de connexion entre le terminal local et la passerelle mandataire. 15 Or, lorsqu'un utilisateur affiche, sur respectivement plusieurs fenêtres locales de type application, respectivement plusieurs applications dont l'affichage est généré par un même serveur distant, il n'existe dans le cas optimal, qu'un seul couple de connexions primaire/secondaire de type application établies entre le terminal local et la passerelle mandataire, et entre 20 la passerelle mandataire et le serveur distant pour lesdites plusieurs applications. En conséquence, il est possible pour un utilisateur du terminal local d'afficher, dans des fenêtres locales, de type application, à la fois des affichages des bureaux générés par des serveurs distants et des affichages 25 générés par des applications s'exécutant sur des serveurs distants, ce qui résout le but de l'invention préalablement exposé. En outre, la transformation est avantageuse, car elle permet à l'utilisateur d'un terminal local qui affiche un bureau, généré par un serveur à distance, de redimensionner, la fenêtre locale dans laquelle le bureau à distance est affiché. 30 Dans le but de permettre une interaction entre un utilisateur du terminal local et le serveur distant, le procédé selon l'invention peut comporter, lorsque le type détecté est une connexion de type bureau, une étape de transformation de données de commandes provenant du terminal local et relatives à la fenêtre -5 locale de type application en des données de commande à destination du serveur distant et relatives à la fenêtre locale de type bureau. Selon un deuxième aspect de l'invention, il est proposé un procédé d'affichage d'une pluralité d'objets graphiques générés par au moins un 5 serveur distant, le terminal local communiquant avec l'au moins un serveur distant par l'intermédiaire d'une passerelle mandataire pour le protocole de bureau à distance, une connexion primaire établie entre le terminal local et la passerelle mandataire étant une connexion de type application à distance, et une pluralité de connexions secondaires étant établies entre la passerelle io mandataire et l'au moins un serveur distant, comportant un procédé d'affichage selon le premier aspect de l'invention, ou l'un ou plusieurs de ses perfectionnements, dans lequel l'une au moins de la pluralité de connexions secondaires est de type bureau et une autre de l'une au moins de la pluralité de connexions secondaires est de type application à distance. 15 Selon un troisième aspect de l'invention, il est proposé un procédé selon le premier aspect de l'invention, ou l'un ou plusieurs de ses perfectionnements, ou le deuxième aspect de l'invention, ou l'un ou plusieurs de ses perfectionnements, dans lequel le protocole de bureau à distance prévoit : o dans le cas d'une connexion de type bureau, une génération par un 20 serveur distant de données à destination du terminal client comportant des coordonnées relatives à un point d'origine d'une fenêtre local, o dans le cas d'une connexion de type application à distance, une génération par un serveur distant de données à destination du terminal client comportant des coordonnées absolues relatives à un point fixe d'un afficheur 25 du terminal local. De préférence, le procédé peut en outre comporter une étape d'enregistrement sous forme de flux vidéo des données à destination du terminal local. Selon un mode de réalisation, les données à destination du terminal local 30 peuvent être relatives à au moins deux fenêtres locales de type application, comportant une étape de sélection d'un rectangle minimal comportant lesdites au moins deux fenêtres et, l'étape d'enregistrement étant limitée à l'enregistrement des données relatives audit rectangle minimal. -6 Le protocole de bureau à distance peut être le protocole RDP, une connexion de type bureau étant une connexion de type Remote Desktop selon ledit protocole RDP, et une connexion de type application à distance étant une connexion de type RemoteApp selon ledit protocole RDP. 5 Selon un quatrième aspect de l'invention, il est proposé un produit programme d'ordinateur, chargeable directement dans la mémoire interne d'un ordinateur, comprenant des portions de code de logiciel pour l'exécution des étapes du procédé selon le premier, le deuxième ou le troisième aspect de l'invention, ou l'un ou plusieurs de leurs perfectionnements, lorsque le io programme est exécuté sur un ordinateur. Selon un cinquième aspect de l'invention, il est proposé une passerelle mandataire pour le protocole de bureau à distance comportant une unité de calcul agencée pour mettre en oeuvre un procédé selon le premier, le deuxième ou le troisième aspect de l'invention, ou l'un ou plusieurs de leurs 15 perfectionnements. Selon un sixième aspect de l'invention, il est proposé un système, comportant : - au moins un terminal local, - une pluralité de serveurs distants, 20 - une passerelle mandataire selon le cinquième aspect de l'invention. L'au moins un terminal local peut comporter au moins deux fenêtres locales, la passerelle mandataire étant configurée pour mettre en oeuvre le procédé selon le premier, le deuxième ou le troisième aspect de l'invention, ou l'un ou plusieurs de leurs perfectionnements avec lesdits au moins deux 25 fenêtres locales. L'unité de calcul peut être configurée pour générer une liste de choix de serveurs distants à destination d'une fenêtre de l'au moins un terminal local. De préférence, chacun des choix de la liste de choix correspond à un type de connexion à distance pour le protocole de bureau à distance, et la liste de 30 choix peut comporter au moins deux choix de serveurs distants pour lesquels les types de connexion à distance sont distincts. -7 Description des figures D'autres avantages et particularités de l'invention apparaîtront à la lecture de la description détaillée de mises en oeuvre et de modes de réalisation nullement limitatifs, au regard de dessins annexés sur lesquels : 5 - la figure 1 représente schématiquement l'art antérieur le plus proche ; - la figure 2 représente schématiquement un mode de réalisation d'un système selon l'invention ; - la figure 3 représente schématiquement un procédé selon un mode de réalisation de l'invention. 10 Description de modes de réalisation Les modes de réalisation décrits ci-après n'étant nullement limitatifs, on pourra notamment considérer des variantes de l'invention ne comprenant qu'une sélection de caractéristiques décrites, par la suite isolées des autres 15 caractéristiques décrites, si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l'invention par rapport à l'état de la technique antérieure. Cette sélection comprend au moins une caractéristique, de préférence fonctionnelle sans détails structurels, ou avec seulement une partie des détails structurels si cette partie uniquement est 20 suffisante pour conférer un avantage technique ou pour différencier l'invention par rapport à l'état de la technique antérieure. Sur les figures un élément apparaissant sur plusieurs figures conserve la même référence. En référence à la figure 1, considéré comme l'art antérieur le plus proche, 25 on connaît un système 100, comportant d'une part une pluralité 102 de terminaux, deux terminaux 1021 et 1022 selon l'art antérieur représenté, et d'autre part une pluralité 104 de serveurs distants, deux serveurs distants 1041 et 1042 selon l'art antérieur représenté. Le système 100 comprend en outre une passerelle mandataire 106 pour 30 le protocole de bureau à distance agencée pour établir une connexion 1061 entre le client 1021 et le terminal serveur 1041 et, une connexion 1062 entre le client 1022 et terminal serveur 1042. -8 Plus précisément, la connexion 1061 comporte une connexion primaire 1061p établie entre le terminal local 1021 et la passerelle mandataire 106 de type application à distance, et une connexion secondaire 1061s établie entre ladite passerelle mandataire et serveur distant 5 1041 de type application à distance. La connexion 1062 comporte une connexion primaire 1062p établie entre le terminal local 1022 et la passerelle mandataire 106 de type bureau, et une connexion secondaire 1062s établie entre ladite passerelle mandataire et le serveur distant 1042 de type bureau. 10 Les connexions 1061p et 1061s sont toutes deux de type application à distance sont représentées par un motif à rayures étroites horizontales. Les connexions 1062p et 1062s sont toutes deux de type bureau et sont représentées par un motif à rayures étroites verticales. Selon l'art antérieur, il n'est pas possible, depuis un même terminal local 15 connecté au moyen d'une connexion de type application à distance, d'ouvrir indistinctement, des connexions de type application à distance ou bureau. Cet obstacle est surmonté avec, selon un mode de réalisation d'un système 200 selon l'invention, qui comprend : - un terminal 2021, 20 - une pluralité 204 de serveurs distants, deux serveurs distants 2041 et 2042, - une passerelle mandataire 206 agencée pour établir, une connexion 2061 entre le client 2021 et le terminal serveur 2041 et, une connexion 2062 entre le client 2021 et terminal serveur 2042. 25 La passerelle mandataire 206 pour le protocole de bureau à distance est agencée pour établir une connexion 2061 entre le client 2021 et le terminal serveur 2041 et, une connexion 2062 entre le client 2021 et terminal serveur 2042. Plus précisément, la connexion 2061 comporte une connexion 30 primaire 2061p établie entre le terminal local 2021 et la passerelle mandataire 206 de type application à distance, et une connexion secondaire 2061s établie entre ladite passerelle mandataire et le serveur distant 2041 de type application à distance. -9 À la différence de l'art antérieur, la connexion 2062 comporte la connexion primaire 2061p et une connexion secondaire 2062s établie entre ladite passerelle mandataire et le serveur distant 2042 de type bureau. Les connexions 2061p et 2061s de type application à distance sont 5 représentées par un motif à rayures étroites horizontales. La connexion 2062s est de type bureau et est représentée par un motif à rayures étroites verticales. Avec le système selon l'invention il est possible, depuis un même terminal local connecté au moyen d'une connexion de type application à distance, io d'ouvrir indistinctement, des connexions de type application à distance ou bureau. À cet effet, la passerelle mandataire comporte une unité de calcul agencée pour mettre en oeuvre un procédé P selon un mode de réalisation de l'invention, représenté sur la figure 3. 15 Le procédé P peut être mis en oeuvre par l'exécution sur la passerelle mandataire, d'un produit programme d'ordinateur formé de portions de code de logiciel, chargeables directement ou indirectement dans la mémoire interne de la passerelle mandataire. Le procédé P selon l'invention est un procédé d'affichage d'un objet 20 graphique généré par l'un des serveurs distants, par exemple les serveurs 2041 ou 2042, sur le terminal local, ici le terminal local 2021, dans une fenêtre, dite locale, affichée sur un dispositif d'affichage du terminal local. Le procédé P comporte : - une étape El de détection du type de la connexion secondaire, par 25 exemple des connexions 2061s ou 2062s de la figure 2, - une étape E2 de test du type détecté, et, lorsque ledit type détecté est une connexion, la connexion 2062s dans l'exemple représenté sur la figure 2, de type bureau, - une étape E3 de transformation, réalisée par ladite passerelle 30 mandataire 206, de données provenant du serveur distant et relatives à une fenêtre locale de type bureau, en des données à destination dudit terminal local et relatives à une fenêtre locale de type application. -10 - L'étape El est réalisée en analysant des données de configuration du serveur distant. L'étape E2 est réalisée en comparant le résultat d'analyse à une valeur prédéterminée, ladite valeur prédéterminée correspondant à une connexion de 5 type bureau. L'étape E3 de transformation réalisée par la passerelle mandataire est maintenant décrite plus précisément. La connexion traitée dans cette étape est de type bureau. Aussi, la passerelle mandataire reçoit des données provenant du serveur distant selon io le protocole de bureau à distance qui sont spécifiques à ce type. Plus précisément, selon le mode Remote Desktop du protocole RDP, les données provenant du serveur comportent des ordres de dessins dont les coordonnées sont relatives et données par rapport à un coin supérieur gauche d'une fenêtre locale de type bureau. 15 Or, les données à envoyer à destination du terminal local sont des données relatives à une fenêtre locale de type application à distance. Selon le mode RemoteApp du protocole RDP, les ordres de dessin comportent des coordonnées absolues qui sont données par rapport à un coin supérieur gauche du bureau de l'ordinateur client. 20 Aussi, une transformation des données de dessins provenant du serveur distant est nécessaire pour procurer des données de type application à distance au terminal local. En notant XYdessinServeur les coordonnées relatives d'un point de dessin reçues du serveur distant, la passerelle mandataire doit adresser des 25 coordonnées absolues XYdessinAbsolu de dessin au terminal client, en translatant les dites coordonnées relatives d'un vecteur XYorigineFenetreApp indiquant les coordonnées absolues de la fenêtre locale de type application à distance, ce qui peut s'écrire : XYdessinAbsolu = XYdessinServeur + XYorigineFenetreApp. 30 Les coordonnées absolues de la fenêtre locale de type application sont définies par la passerelle mandataire de plusieurs moyens. Si l'utilisateur les modifie par la suite, la passerelle recevra des messages de mise à jour via la connexion réseau. Lorsqu'un terminal local reçoit des données relatives à une fenêtre locale de type application, ces données comportent typiquement des contours de la fenêtre à afficher, tels que des icônes, une barre de titres, des boutons et des bordures. Toutefois, lorsque la passerelle mandataire reçoit des données 5 relatives à une fenêtre locale de type bureau, les données relatives à la fenêtre locale ne comportent pas de contours de fenêtre. Aussi, le procédé peut comporter une étape de transformation, réalisée par ladite passerelle mandataire, de données provenant dudit serveur distant et relatives à une fenêtre locale de type bureau, en des données à destination 10 dudit terminal local et relatives à une fenêtre locale de type application, comportant une étape d'ajout d'éléments de contour de fenêtre, et de traitement, à réception de données provenant dudit terminal local, d'au moins un évènement généré au niveau desdits éléments. Typiquement, un clic sur un bouton de fermeture du contour de la fenêtre sera traité par la passerelle pour 15 générer des ordres de fermeture de la connexion secondaire correspondante et ne plus occuper de zone de dessin sur le terminal local. Les données à envoyer à destination du terminal local sont des données relatives à une fenêtre locale de type application à distance. Selon le mode RemoteApp du protocole RDP, les ordres de dessin comportent des 20 coordonnées absolues qui sont données par rapport à un coin supérieur gauche du bureau de l'ordinateur client. Le procédé P décrit sur la figure 3 comporte en outre une étape E4, mise en oeuvre parallèlement à l'étape E3 lorsque le type détecté est une connexion de type bureau. 25 On comprend que si les coordonnées de dessins doivent subir une transformation, les coordonnées relatives à des données de commandes provenant dudit terminal local et relatives à la fenêtre locale de type application à distance doivent également subir une transformation, inverse, avant de générer des données de commande à destination du serveur distant et 30 relatives à la fenêtre locale de type bureau. Le procédé selon l'invention permet ainsi, pour un terminal client local, d'afficher des données provenant de connexion de type bureau dans une fenêtre locale de type application. -12 - Comme il a été expliqué, lorsqu'un utilisateur affiche, sur respectivement plusieurs fenêtres locales de type application, respectivement plusieurs applications dont l'affichage est généré par un même équipement distant, ici la passerelle mandataire, dans le cas optimal, il n'existe qu'une seule connexion 5 de type application établie entre le terminal local et la passerelle mandataire pour lesdites plusieurs applications. Aussi, le procédé P permet à un utilisateur du terminal local d'afficher, dans des fenêtres locales de type application, à la fois un affichage d'un bureau généré par un serveur distant et un affichage généré par une io application s'exécutant sur ledit serveur distant, ce qui résout le but de l'invention préalablement exposé. Le procédé P peut aussi comprendre, préalablement à l'étape de détection, une étape de présentation au terminal local, après une étape optionnelle de connexion du terminal local à la passerelle mandataire, d'une 15 liste de choix de serveurs distants à destination du terminal local. La liste des serveurs distants à destination du terminal local peut dépendre de l'utilisateur du terminal local, de ses niveaux d'habilitations, etc. La liste de serveurs distants peut comporter au moins deux choix de serveurs distants pour lesquels les types de connexion à distance sont 20 distincts. Il peut être intéressant, lorsqu'un utilisateur affiche, sur respectivement plusieurs fenêtres locales de type application, respectivement plusieurs applications dont l'affichage est généré par un même équipement distant, ici la passerelle mandataire, de créer autant de connexion entre le terminal local et 25 la passerelle mandataire que d'applications, par exemple pour des raisons de sécurité. Par défaut, une seule connexion existe entre le terminal local et la passerelle mandataire. Dans le but de créer plusieurs connexions entre le terminal local et la 30 passerelle mandataire, il est possible d'utiliser un champ de trame spécifique au protocole de bureau à distance pour indexer la connexion au niveau de la passerelle mandataire. De la sorte, la passerelle mandataire peut être configurée pour mutualiser plusieurs connexions au sein d'une même -13 - connexion primaire ou au contraire les séparer. Le champ Load Balance Info du protocole RDP peut être utilisé par la passerelle mandataire à cet effet, deux connexions RDP présentant deux champs de valeurs différentes étant deux connexions distinctes. 5 L'utilisation du procédé selon l'invention permet de redimensionner une fenêtre locale de type bureau. À cet effet, le procédé selon l'invention peut comporter, alors qu'une session primaire de type application à distance affiche une fenêtre application présentant un bureau d'un serveur distant : - une étape de détection de commandes provenant dudit terminal local et io relatives à la fenêtre locale de type application, lesdites commandes correspondant à un redimensionnement de la fenêtre de type application, - une étape de fermeture de la session secondaire de type bureau préalablement établie entre la passerelle mandataire et le serveur 15 distant, - une étape d'ouverture d'une deuxième session secondaire de type bureau entre la passerelle mandataire et le serveur distant, comportant des paramètres de taille correspondant au redimensionnement de ladite fenêtre application. 20 Les fenêtres de type bureau converties en fenêtre de type application utilisent virtuellement un bureau qui fait la taille de toutes les surfaces réunies d'écrans physiques du client local. Cela peut être disproportionnellement grand par rapport à la taille de la zone effectivement occupée par la fenêtre de type application. 25 Par exemple, le client local dispose de deux écrans Full HD de 1920 pixels sur 1080 et si le serveur dispose d'un écran de 800 pixels sur 600, le bureau du serveur est très petit par rapport au bureau du client local. Ce problème n'a pas d'effet sur la taille qu'occupe l'enregistrement sur l'unité de stockage. Par contre, la vaste zone non-signification rend la 30 visualisation de sessions enregistrées beaucoup moins aisée. La passerelle voit passer les ordres d'affichage d'une session applicative RemoteApp comme des ordres de dessin des fenêtres de l'application sur l'ensemble des écrans du poste utilisateur. - 14 - Lors de l'enregistrement, si rien n'est fait, la géométrie des ordres produit un enregistrement rectangulaire englobant tous les écrans du poste utilisateur. Les fenêtres peuvent y apparaître, si elles ne sont pas en mode plein écran, perdues au milieu d'un grand rectangle noir. 5 Afin d'éviter cela, le procédé selon l'invention peut comporter une étape de détermination d'un rectangle de largeur et de hauteur minimum qui est calculé de façon à englober les fenêtres durant toute la durée de la session. Seul le contenu du rectangle déterminé rectangle peut être enregistré dans une vidéo de sorte de minimiser l'espace inutile autour des fenêtres. io Dans le cas où l'application n'a qu'une seule fenêtre, le rectangle déterminé correspond exactement à la surface de la fenêtre de l'application. Pour la visualisation temps réel, le procédé peut comprendre une détermination en temps réel d'un rectangle pour englober l'ensemble des fenêtres visibles au moment du calcul. La visualisation temps réel peut donc 15 voir sa taille varier au cours de la session. Bien sûr, l'invention n'est pas limitée aux exemples qui viennent d'être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l'invention. De plus, les différentes caractéristiques, formes, variantes et modes de réalisation de l'invention REVENDICATIONS1. Procédé (P) d'affichage d'un objet graphique généré par un serveur distant (2041, 2042), sur un terminal local (2021), dans une fenêtre, dite locale, affichée sur un dispositif d'affichage du terminal local, ledit terminal local communiquant avec ledit serveur distant par l'intermédiaire d'une passerelle mandataire (206) pour le protocole de bureau à distance, ladite passerelle établissant une connexion (2061, 2062) entre ledit terminal local et ledit serveur distant, ladite connexion comportant une connexion primaire (2061p) établie entre ledit terminal local et ladite passerelle mandataire de type application à distance, et une connexion secondaire (2061s, 2062s) établie entre ladite passerelle mandataire et ledit serveur distant, caractérisé en ce que le procédé comporte une étape (El) ) de détection du type de ladite connexion secondaire et, lorsque ledit type détecté est une connexion (2062s) de type bureau, le procédé comporte en outre une étape (E3) de transformation, réalisée par ladite passerelle mandataire, de données provenant dudit serveur distant et relatives à une fenêtre locale de type bureau, en des données à destination dudit terminal local et relatives à une fenêtre locale de type application. 2. Procédé selon la revendication précédente, comportant en outre, lorsque le type détecté est une connexion de type bureau, une étape (E4) de transformation de données de commandes provenant dudit terminal local et relatives à la fenêtre locale de type application en des données de commande à destination du serveur distant et relatives à la fenêtre locale de type bureau. 3. Procédé d'affichage d'une pluralité d'objets graphiques générés par au moins un serveur distant, ledit terminal local communiquant avec l'au moins un serveur distant par l'intermédiaire d'une passerelle mandataire pour le protocole de bureau à distance, une connexion primaire établie -16 - entre ledit terminal local et ladite passerelle mandataire étant une connexion de type application à distance, et une pluralité de connexions secondaires étant établies entre ladite passerelle mandataire et l'au moins un serveur distant, comportant un procédé d'affichage selon l'une 5 quelconque des revendications précédentes, dans lequel l'une au moins de la pluralité de connexions secondaires est de type bureau et une autre de l'une au moins de la pluralité de connexions secondaires est de type application à distance. 10 4. Procédé selon l'une quelconque des revendications précédentes, dans lequel le protocole de bureau à distance prévoit : o dans le cas d'une connexion de type bureau, une génération par un serveur distant de données à destination du terminal client comportant des coordonnées relatives à un point d'origine d'une 15 fenêtre local, o dans le cas d'une connexion de type application à distance, une génération par un serveur distant de données à destination du terminal client comportant des coordonnées absolues relatives à un point fixe d'un afficheur du terminal local. 20 5. Procédé selon l'une quelconque des revendications précédentes, comportant en outre une étape d'enregistrement sous forme de flux vidéo des données à destination du terminal local. 25 6. Procédé selon la revendication précédente, dans lequel les données à destination du terminal local sont relatives à au moins deux fenêtres locales de type application, comportant une étape de sélection d'un rectangle minimal comportant lesdites au moins deux fenêtres et, l'étape d'enregistrement étant limitée à l'enregistrement des données relatives 30 audit rectangle minimal. 7. Procédé selon la revendication précédente, dans lequel le protocole de bureau à distance est le protocole RDP, une connexion de type bureau -17 - étant une connexion de type Remote Desktop selon ledit protocole RDP, et une connexion de type application à distance étant une connexion de type RemoteApp selon ledit protocole RDP. 5 8. Produit programme d'ordinateur, chargeable directement dans la mémoire interne d'un ordinateur, comprenant des portions de code de logiciel pour l'exécution des étapes du procédé selon l'une des revendications précédentes, lorsque ledit programme est exécuté sur un ordinateur. 10 9. Passerelle mandataire (206) pour le protocole de bureau à distance comportant une unité de calcul agencée pour mettre en oeuvre un procédé selon l'une quelconque des revendications précédentes. 15 10. Système (200), comportant : - au moins un terminal local (2021), - une pluralité (204) de serveurs distants (2041, 2042), - une passerelle mandataire (206) selon la revendication précédente. 20 11. Système selon la revendication précédente, dans lequel l'unité de calcul est configurée pour générer une liste de choix de serveurs distants à destination d'un de l'au moins un terminal local. 12. Système selon la revendication précédente, dans lequel chacun des 25 choix de la liste de choix correspond à un type de connexion à distance pour le protocole de bureau à distance, et dans lequel ladite liste de choix comporte au moins deux choix de serveurs distants pour lesquels les types de connexion à distance sont distincts.