Surveillance des connexions et des déconnexions de session
Pour qu’une application de service, telle qu’une application de serveur de canal virtuel, surveille les connexions et les déconnexions de session, vous devez l’inscrire auprès des services Bureau à distance. Pour inscrire l’application auprès des services Bureau à distance, stockez le nom de l’application de serveur de canal virtuel dans le Registre en ajoutant une sous-clé à l’emplacement suivant :
HKEY_LOCAL_MACHINE\Système\Currentcontrolset\Contrôle\TerminalServer\Addins
La sous-clé peut avoir n’importe quel nom. Il doit avoir une valeur REG_SZ , Name, qui contient le nom symbolique de l’application.
Name = AddinName
La longueur maximale de la sous-clé et de la valeur de Name est de 99 caractères.
La sous-clé doit également avoir une valeur REG_DWORD qui indique le type d’application serveur.
Type = AddinType
AddinType doit être la valeur suivante.
Valeur | Signification |
---|---|
3 | Application en mode utilisateur, espace de session. |
L’inscription de l’application de service prend effet uniquement dans les sessions créées après l’inscription.
Pour chaque application de service inscrite, les services Bureau à distance signalent un ensemble d’objets d’événement lorsqu’un client se connecte ou se déconnecte de la session. Chaque plug-in de canal virtuel doit s’inscrire et créer les événements de notification en appelant CreateEvent. Les noms de ces objets d’événement respectent le format suivant.
AddinName-Reconnect
AddinName-Disconnect
AddinName est la chaîne spécifiée dans la valeur Name de la sous-clé de Registre sous laquelle l’application serveur est inscrite. La création de ces événements sous une session entraîne leur création dans un répertoire d’événements par session spécial. Le répertoire d’événements offre une sécurité supplémentaire en empêchant les applications d’autres sessions de modifier l’état de ces événements.
Pour contrôler si les événements RECONNECT et DISCONNECT sont reçus sur le serveur, vous pouvez placer l’indicateur RemoteControlPersistent dans le Registre sous la clé suivante :
HKEY_LOCAL_MACHINE\Système\Currentcontrolset\Contrôle\TerminalServer\Addins\addinname
L’indicateur active ou désactive les événements RECONNECT et DISCONNECT d’être signalés lorsqu’une session cliente démarre ou s’arrête. La syntaxe de la valeur REG_DWORD est la suivante.
RemoteControlPersistent = flag
La valeur de l’indicateur peut être un ou zéro. Zéro est la valeur par défaut. Si la valeur est définie sur un, l’application de service n’est pas avertie si la session cliente est démarrée ou arrêtée. Si la valeur est zéro, un événement RECONNECT est signalé au démarrage de la session cliente et un événement DISCONNECT est signalé lorsque la session cliente s’arrête.
Le format précédent de nom d’objet d’événement est toujours pris en charge dans Windows Server 2008 pour la compatibilité descendante. Il est recommandé d’utiliser le format Windows Server 2008 le plus récent, car il est plus sécurisé.
Le format d’événement précédent est le suivant.
Global\AddinName-SessionId-Reconnect
Global\AddinName-SessionId-Disconnect
AddinName est la chaîne spécifiée dans la valeur Name de la sous-clé de Registre sous laquelle l’application serveur est inscrite. SessionId est l’identificateur de session d’une session cliente.