Serveur d'impression

Ajout de propriétés RDP personnalisées dans des environnements RDS / VDI Windows Server 2012 – Serveur d’impression

Le 7 octobre 2019 - 6 minutes de lecture

Si vous connaissez les services Bureau à distance dans Windows Server 2008 (R2), vous connaissez probablement le gestionnaire d'applications distantes. Ce composant logiciel enfichable MMC était disponible sur les serveurs exécutant le rôle d'hôte de session Bureau à distance et pouvait être utilisé pour publier des applications distantes. Comme vous le savez peut-être maintenant, avec Windows Server 2012, de nombreux composants logiciels enfichables MMC sont obsolètes et la configuration de ces fonctionnalités est désormais effectuée de manière centralisée à l'aide du service RDMS (Remote Desktop Management Service) intégré à la nouvelle console du gestionnaire de serveur. Pour plus de détails à ce sujet, voir également RDMS sur Windows Server 2012: Où, pourquoi et comment ..

Une partie de ce gestionnaire d'applications distantes dans Windows Server 2008 R2 consistait en la possibilité de définir des paramètres de déploiement, par exemple les paramètres RDP personnalisés. Les paramètres RDP personnalisés peuvent être utilisés pour personnaliser davantage la session des utilisateurs, par exemple en définissant des options de redirection spécifiques ou en activant Smart Sizing.

Avec le paramètre Windows Server 2008 (R2), ces paramètres RDP personnalisés peuvent être modifiés à l'aide de l'interface graphique.

image "border =" 0 "height =" 378 "src =" http://lh5.ggpht.com/-r5NX1XJswKc/UQJWrnAc58I/AAAAAAAABbU/CmckdNu1wXk/image_thumb%25255B1%25255D.png?mgmhala) -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Avec Windows Server 2012, il n'est pas possible de définir cette option dans l'interface graphique du gestionnaire de serveur RDMS. Afin d’ajouter des propriétés RDP personnalisées, nous devons utiliser le module RemoteDesktop PowerShell.

La commande pour faire ceci est Set-RDSessionCollectionConfiguration

Par exemple, si nous voulons supprimer la barre de connexion, nous pourrions exécuter la commande suivante:

Set-RDSessionCollectionConfiguration –CollectionName QuickSessionCollection "displayconnectionbar: i: 0"

image "border =" 0 "height =" 114 "src =" http://lh4.ggpht.com/-TBlQwRpXxXc/UQJWtYq0bVI/AAAAAAAABbk/2HI3L444K_U/image_thumb%25255B17%25255D.pngimgmaxax=30 " -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Ces paramètres sont stockés dans le registre du ou des courtiers en connexion de RD faisant partie du déploiement des collections de sessions.

image "border =" 0 "height =" 193 "src =" http://lh6.ggpht.com/-xU6VVWWmmyc/UQJWvZpiFyI/AAAAAAAABbw/arJR2bmWsbw/image_thumb%25255B9%25255D.pngintmgong -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Notez que si nous voulions ajouter une propriété RDP personnalisée supplémentaire, nous devions spécifier toutes les propriétés RDP personnalisées dans une seule commande. Par exemple, si nous ajoutions une propriété RDP personnalisée supplémentaire pour mapper le lecteur C: local et exécuter

Set-RDSessionCollectionConfiguration –CollectionName QuickSessionCollection "drivestoredirect: s: C:"

Cela écraserait la propriété RDP personnalisée précédemment ajoutée.

image "border =" 0 "height =" 103 "src =" http://lh3.ggpht.com/-Q9gB3spbNUo/UQJWw6wB7lI/AAAAAAAABcA/2uVWyZmfIc0/image_thumb%25255B11%25255D.png?imgm3 -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Nous devons évidemment ajouter toutes les propriétés RDP personnalisées à la fois. Pour que cela fonctionne, nous devons ajouter un caractère de saut de ligne (qui est: `n) entre les options, sinon il ne sera pas appliqué correctement. La commande ressemblerait à ceci:

Set-RDSessionCollectionConfiguration –CollectionName QuickSessionCollection "drivestoredirect: s: C:` n displayconnectionbar: i: 0 "

Cela donnera un bureau publié avec les propriétés suivantes

image "border =" 0 "height =" 425 "src =" http://lh5.ggpht.com/-PJWjhfF6akc/UQJWyqyYNTI/AAAAAAAABcQ/J1v3_rfHTrE/image_thumb%25255B19%25255D.png?imgm. -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Comme vous le savez peut-être, les paramètres de RD Connection Broker (ainsi que d’autres paramètres RDMS) sont stockés dans une base de données. Sans s'exécuter en mode haute disponibilité (HA) du courtier en connexion RD, il s'agit d'une base de données SQL Express s'exécutant sur le courtier en connexions RD lui-même et lorsqu'elle est exécutée en mode haute disponibilité, elle est déplacée vers une instance SQL Server centrale.

Étant donné que la base de données SQL est l'emplacement central de stockage de la configuration, nous nous attendons à ce que la propriété RDP personnalisée soit également stockée dans cette base de données. J'ai effectué des recherches dans la base de données RDMS et il semble que la propriété RDP personnalisée que nous avons définie à l'aide de PowerShell n'y soit pas stockée. À l'intérieur de la table appelée PoolProperty, il existe un CustomRDPSettings mais il ne contient que le paramètre qui existe par défaut, pas nos propriétés ajoutées.

image "border =" 0 "height =" 142 "src =" http://lh5.ggpht.com/-2fI69bleMTY/UQJW0IhqjvI/AAAAAAAABck/_IN4kX4UeA0/image_thumb%25255B23%25255D.pngmmax=800 "style -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Il existe également une valeur appelée CustomRdpSettings à l'intérieur de la table RdpFileInfo, mais cette table ne semble contenir aucun enregistrement.

image "border =" 0 "height =" 139 "src =" http://lh4.ggpht.com/-Y450R_f0uWk/UQJW15ni6tI/AAAAAAAABcw/h8X3Mo9IznI/image_thumb%25255B26%25255D.pngimgm. "en savoir plus -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

Il semble donc que les propriétés ne sont stockées que dans le registre de RD Connection Broker.

Considérons maintenant le scénario suivant. nous définissons les propriétés RDP personnalisées comme indiqué ci-dessus et après ça ajoutez un courtier de connexion RD supplémentaire. Nos propriétés ajoutées seraient-elles intégrées au registre supplémentaire de RD Connection Brokers?
J'ai essayé cela dans mon laboratoire et il semble que ce paramètre ne fait pas rendez-vous chez le courtier en connexions RD nouvellement ajouté!

Premier serveur de service de connexion par RD Ajout du serveur de courtier de connexion RD

image "border =" 0 "height =" 111 "src =" http://lh6.ggpht.com/--3lI5TmYmp0/UQJW3KgDMII/AAAAAAAABdE/cRRDSTzgvD8/image_thumb%25255B30%25255D.png?mng?mg "." border-left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; marge: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

image "border =" 0 "height =" 112 "src =" http://lh3.ggpht.com/-6AWIrbxHdRE/UQJW49aVrtI/AAAAAAAABdQ/T_k3Ta0rdCo/image_thumb%25255B29%25255D.pngimgmmax3000 " -left-width: 0px; border-right-width: 0px; image de fond: aucune; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; marge: 0px; affichage: en ligne; padding-right: 0px; border-top-width: 0px "title =" image

La solution consiste à réexécuter la commande PowerShell afin que la configuration sur le 2 Broker pour connexion à distance soit à nouveau synchronisée.

Cela soulève une autre question, et si nous ajoutions une propriété RDP personnalisée supplémentaire dans un environnement qui est déjà en mode haute disponibilité, mais avec l'un des serveurs de RD Connection Broker non disponible? Nous pouvons simuler cela en déconnectant la carte réseau du 2nd Broker de connexion à un serveur RD, puis en essayant de réexécuter la commande PowerShell.

image "border =" 0 "height =" 148 "src =" http://lh4.ggpht.com/-83woi3chVMU/UQJW6cvU8iI/AAAAAAAABdk/JgAxK0momO4/image_thumb%25255B32%25255D.png?imgmax=800 " -top: 0px; border-right: 0px; image de fond: aucune; bordure inférieure: 0px; padding-top: 0px; padding-left: 0px; bordure de gauche: 0px; affichage: en ligne; padding-right: 0px "title =" image

La commande génère maintenant une erreur «Impossible de définir les propriétés RDP personnalisées pour la collecte Collection de sessions rapides, car un ou plusieurs serveurs du courtier de connexion RD sont inaccessibles ou mal configurés». Ce qui est bon! Parce que de cette manière, la configuration de RD Connection Broker reste cohérente.

D'autres propriétés configurées dans l'interface graphique RDMS peuvent être configurées lorsqu'un courtier de connexion RD de votre batterie de serveurs HA est hors ligne. Par exemple, nous pourrions publier une application à distance. Lorsque le 2nd RD Connection Broker se remet en ligne, il est déclenché pour synchroniser la configuration, ce qui peut également être forcé en redémarrant le service «Remote Desktop Management». Le fait que vous ne puissiez pas modifier les propriétés RDP personnalisées avec un courtier de connexions Bureau à distance déconnecté semble prouver que ce paramètre n'est pas stocké dans la base de données RDMS, mais uniquement dans le registre.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.