Aller au contenu

Installation et utilisation de l'agent d'enregistrement pour Windows

  • Installation


    Installation et déploiement de l'agent d'enregistrement Windows.

    Installer

  • Configuration


    Configurer l'agent d'enregistrement Windows pour fonctionner avec des applications RDP et HTML5 RDP et/ou en accès direct.

    Configurer

L'agent d'enregistrement Windows sert, pour cyberelements.io / cyberelements Cleanroom, à ajouter de nouvelles fonctionnalités pour les sessions RDP :

  • Possibilité de filtrer les flux TCP et UDP accessibles par l’utilisateur
  • Possibilité de déclencher un enregistrement de la session pour tout utilisateur se connectant au serveur sans passer par le portail utilisateur ou le client Desktop (fonctionnalité d'accès direct)

A cela s'ajoute la récupération d'événements supplémentaires durant les sessions des utilisateurs :

  • Ouverture de fenêtre
  • Fermeture de fenêtre
  • Lancement de programme
  • Fermeture de programme
  • Contenu du presse-papier
  • Activité de l'utilisateur

Prérequis

Compatibilité du client

Pour connaître la compatibilité de l'agent avec les différents OS Microsoft Windows, reportez-vous à la matrice de compatibilité.

L'agent d'enregistrement nécessite quelques prérequis pour son bon fonctionnement. Certains d'entre eux n'étant destinés qu'à la fonctionnalité d'enregistrement avec agent pour les applications RDP et HTML5 RDP, tandis que d'autres concernent les accès direct avec agent.

Prérequis généraux

L'agent d'enregistrement remonte à cyberelements.io et cyberelements Cleanroom l'enregistrement de la session de l'utilisateur en se connectant à la Edge Gateway sur le port TCP 8443. Il est donc nécessaire que le flux réseau soit ouvert entre les deux machines.

L'agent d'enregistrement, pour remonter de manière sécurisée l'enregistrement à la Edge Gateway, établit avec cette dernière une connexion sécurisée avec TLS. TLS repose sur l'utilisation de certificat et les contraintes suivantes doivent être validées afin que la connexion soit jugée comme fiable et sécurisée :

  • Le certificat du serveur, ici la Edge Gateway, ne doit pas être expiré (date de validité maximale).
  • Le certificat du serveur, ici la Edge Gateway, doit être issu d'une autorité de certification reconnue comme de confiance par la machine sur laquelle l'agent d'enregistrement est installé.

    Informations complémentaires

    Le serveur sur lequel est installé l'agent d'enregistrement doit posséder, au minimum, l'autorité de certification (AC) racine du certificat du serveur d'enregistrement dans son magasin local des autorités de certification de confiance.

    Il est donc nécessaire de :

    1. Récupérer l'AC racine du certificat du service d'enregistrement présent sur la Edge Gateway.
    2. Téléverser cette AC sur le serveur où l'agent d'enregistrement est installé.
    3. Installer l'AC dans le magasin de certificat "Autorités de certification racines de confiance" de la machine locale.
    Exemple avec PowerShell

    Il est possible d'importer facilement un certificat, au format .cer, via PowerShell.
    Pour ce faire, ouvrez un terminal PowerShell en tant qu'administrateur de la machine et exécutez la commande suivante :

    1
    Import-Certificate -FilePath "<PAHT_TO_CERT>" -CertStoreLocation "Cert:\LocalMachine\Root"
    

    Remplacez <PATH_TO_CERT> par le chemin vers le fichier de certificat.

    Exemple avec PowerShell pour le certificat Systancia sans envoi de fichiers

    Cet exemple prévoit l'installation de l'AC racine de Systancia qui est utilisée par défaut sur cyberelements.io ou pour les clients cyberelements Cleanroom utilisant les certificats fournis par Systancia.

    Il est aussi possible d'importer le certificat sans nécessiter l'envoi/téléchargement du fichier sur la machine où l'agent d'enregistrement est installé.
    Pour ce faire, ouvrez un terminal PowerShell en tant qu'administrateur de la machine et exécutez les commandes suivantes :

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    # Systancia Root certificate
    $base64Cert = "MIIFIDCCBAigAwIBAgIBADANBgkqhkiG9w0BAQUFADCBjTELMAkGA1UEBhMCRlIx
    FDASBgNVBAoTC0lQZGl2YSBSb290MR0wGwYDVQQLExRJUGRpdmEgU2VjdXJpdHkg
    RGVwdDEqMCgGA1UEAxMhSVBkaXZhIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
    MR0wGwYJKoZIhvcNAQkBFg5wa2lAaXBkaXZhLmNvbTAeFw0wNTA4MjIxNTAwMzla
    Fw0zMDA4MjIxNTAwMzlaMIGNMQswCQYDVQQGEwJGUjEUMBIGA1UEChMLSVBkaXZh
    IFJvb3QxHTAbBgNVBAsTFElQZGl2YSBTZWN1cml0eSBEZXB0MSowKAYDVQQDEyFJ
    UGRpdmEgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxHTAbBgkqhkiG9w0BCQEW
    DnBraUBpcGRpdmEuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
    ua59tx+RkIPZbGaSwkV0w5fuPBpY3sbLTk/eR2uN7j9zMu0pq38LfibCVsNGlifh
    GfT5CEbrNL7KvlEVY/It1QluYxNgknlcBP1roJG/xHNcUNmbvCFYLy9N3Nd0J/gC
    Vd8tdB4exqyKEoNuqX18rLpSJJOUZdQCeGdF9r+w6vmHdRMeVS44qIiBPv9Bxzgf
    GXBxAlSqfuDDJ3eZEMsWF/kJrbm4Uhav2ACl5qjHgSSTKMoGoEWOJNkB7Mq/khxc
    TnixIpM2s1rpEfhIetPo4BHsyKv7wqWrS6ouwu5AbzT5t3UqaN77CLqcZJGQ3vC0
    IGKBuEcwigd7W6qkX1/XMwIDAQABo4IBhzCCAYMwDwYDVR0TAQH/BAUwAwEB/zAd
    BgNVHQ4EFgQU+lu7XBGohR2DKD+D+abZEODRHjkwgboGA1UdIwSBsjCBr4AU+lu7
    XBGohR2DKD+D+abZEODRHjmhgZOkgZAwgY0xCzAJBgNVBAYTAkZSMRQwEgYDVQQK
    EwtJUGRpdmEgUm9vdDEdMBsGA1UECxMUSVBkaXZhIFNlY3VyaXR5IERlcHQxKjAo
    BgNVBAMTIUlQZGl2YSBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTEdMBsGCSqG
    SIb3DQEJARYOcGtpQGlwZGl2YS5jb22CAQAwCwYDVR0PBAQDAgEGMBkGA1UdEQQS
    MBCBDnBraUBpcGRpdmEuY29tMBkGA1UdEgQSMBCBDnBraUBpcGRpdmEuY29tMBEG
    CWCGSAGG+EIBAQQEAwIABzA+BglghkgBhvhCAQ0EMRYvSVBkaXZhIFJvb3QgQ2Vy
    dGlmaWNhdGlvbiBBdXRob3JpdHkgQ2VydGlmaWNhdGUwDQYJKoZIhvcNAQEFBQAD
    ggEBACaAgBQK7TATXieb9OdKm+l7/GpePo8f2bRKnkqeRS+HXBKYkvqVJdbJnhJm
    YPOdmhr9ATzt+488tQREAGzqPCp5eiVExPgvomNeG77X57KqbgCA1F7zGJqjP1FL
    771FIWvFXp80ReM/zhcM+MY3sa5LADgOEl5NhoMNHT8AhLKwZ81j5nuwxyG9ICCN
    5GjwgsnK/agmum4+RKeybIWuC/JTsSnu5OImXsmrlUiakp2l+VsZ1rRRNRNUlSbg
    Q3T8kj5ajB0lv2I0kj4fN9wDxzdHEn7nEAmv0t6Y5Te0g/VK3VWhuqeLStaahgip
    hmOVxbu5Ijfug5/3Eemep34NsYk="
    
    # Convert the certificate and store it in memory
    $certBytes = [Convert]::FromBase64String($base64Cert)
    
    # Create a certificate object
    $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
    $cert.Import($certBytes)
    
    # Open the trusted root certificate store on the local machine and add the Systancia root certificate
    $store = New-Object System.Security.Cryptography.X509Certificates.X509Store("Root", "LocalMachine")
    $store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)
    $store.Add($cert)
    $store.Close()
    

    Pour utiliser cette méthode avec une autre AC, veuilliez modifier la valeur de la variable base64Cert par le certificat, encodé en base 64, de votre choix.

  • Le certificat du serveur, ici la Edge Gateway, ne doit pas être révoqué.

  • La machine sur laquelle l'agent d'enregistrement est installé, doit pouvoir contacter le serveur, ici la Edge Gateway, avec un nom DNS ou une adresse IP qui est couvert par le certificat du serveur via son Common Name (CN).

Prérequis spécifiques avec les applications RDP avec agent utilisées sur un poste utilisateur macOS ou Ubuntu

Attention

Les prérequis suivants ne sont nécessaires que si l'utilisateur lance une application RDP avec agent et que son poste utilisateur n'est pas un Windows (macOS ou Ubuntu).

Si les utilisateurs de cyberelements.io ou cyberelements Cleanroom ont des postes utilisateurs exclusivement sous Windows ou dans le cas contraire passent exclusivement par des applications HTML5 RDP, alors les prérequis suivants peuvent être ignorés.

Les clefs de registre suivantes sont nécessaires sur le serveur cible où est déployé l'agent d'enregistrement.

Tout d'abord la première clef va permettre de désactiver la liste des programmes de démarrage autorisés (doc Microsoft). Par défaut une machine Windows n'autorisant uniquement explorer.exe comme programme de démarrage.

1
2
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList]
"fDisabledAllowList"=dword:00000001

Si la machine n'est pas un serveur RDS alors l'application de la clef de registre suivante est conseillée toujours afin de permettre l'ouverture de l'agent d'enregistrement comme programme de démarrage :

1
2
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"HonorLegacySettings"=dword:00000001

Prérequis spécifiques à l'accès direct

Fonctionnalité d'accès direct

La fonctionnalité d'accès direct permet de déclencher un enregistrement de la session de l'utilisateur pour des accès RDP ou console (connexion physique à la machine ou via le mode console de l'hyperviseur) ne passant pas directement via cyberelements.io ou cyberelements Cleanroom.

Si l'utilisateur a l'autorisation d'accéder au serveur alors sa session sera enregistrée. Si ce n'était pas le cas alors, par défaut, l'utilisateur sera déconnecté.

Pour le fonctionnement en accès direct de l'agent d'enregistrement, un certificat x509 est requis. Ce certificat doit répondre aux contraintes suivantes :

  • Le certificat doit encore être valide (période de validité temporelle non dépassée).
  • Le certificat doit être du type (champ utilisation avancée de la clef) authentification du client (OID : 1.3.6.1.5.5.7.3.2).
  • Le certificat ne doit pas être révoqué.
  • Des contraintes provenant du niveau de sécurité 2 d'OpenSSL impliquent que :
    • Le certificat doit avoir une clef privée d'un minimum de 2048 bits avec les chiffrements RSA, DSA et DH ; pour les clefs à courbe elliptique (ECC), elles doivent être d'un minimum de 224 bits.
    • La signature du certificat ne doit pas être en MD5 ou SHA-1 (SHA-512 à privilégier).
  • Le serveur d'enregistrement utilisera le champ Common Name (CN) pour identifier le certificat et par conséquent la machine où un enregistrement direct est déclenché. Ce champ doit être complété.

Utiliser l'agent d'enregistrement avec les applications RDP et HTML5 RDP

Activer l'utilisation de l'agent d'enregistrement

Si l'agent d'enregistrement est correctement installé et paramétré, alors l'activation de l'utilisation de l'agent s'effectue au niveau de l'application RDP ou HTML5 RDP privilégiée :

Trois paramètres rentrent en jeu dans le mécanisme :

Mode sans agent
Cette option doit rester décochée afin que l'agent d'enregistrement soit exploité.
Interrompre la session si l'enregistreur ne se lance pas
Cette active ou désactive une sécurité lorsque l'enregistrement de la session ne parvient pas à s'effectuer pour une raison diverse. Si l'enregistrement ne peut être réalisé alors la session RDP ou HTML5 RDP de l'utilisateur sera coupée. Nous recommandons l'activation de ce paramètre pour prévenir des connexions utilisateurs sans enregistrement (par exemple en cas de défaut de fonctionnement de l'agent d'enregistrement).
Temps avant l'interruption de session
Si l'option précédente est active alors celle-ci permettra de paramétrer le temps en seconde avant que la déconnexion ne soit réalisée. Le paramètre est défini à 30 secondes par défaut mais il peut être raccourci pour augmenter la réactivité ou allongé si par exemple l'ouverture des sessions utilisateurs est connue pour être longue.

Limiter les mouvements latéraux

La limitation des mouvements latéraux est la fonctionnalité de restriction des connexions réseaux pour la session de l'utilisateur. Cette fonctionnalité permet de bloquer par défaut l'ensemble des flux TCP/UDP au sein de la session utilisateur, les administrateurs pouvant ouvrir différents flux d'accès.

Les restrictions sont paramétrées dans la politique d'accès et peut donc être différente en fonction des utilisateurs et avoir différents paramétrages pour un utilisateur unique (en multipliant les politiques d'accès qui lui sont affectées). Un utilisateur ayant plusieurs politiques d'accès pour une même application verra les restrictions réseaux basées sur les accès les plus permissifs.

Dès lors qu'une application RDP ou HTML5 RDP avec agent est autorisée dans une politique d'accès, l'onglet Connexions Réseaux est disponible. Depuis ce dernier il est possible d'activer le filtrage et d'y indiquer des réseaux autorisés pour l'utilisateur :

Information

Toutes modifications de ces paramètres ne seront appliquées aux utilisateurs qu'à partir d'une nouvelle utilisation d'une application RDP ou HTML5 RDP concernée.

Paramétrer les enregistrements en accès direct avec agent

Déclarer les serveurs préparés pour des accès directs avec agent

Pour déclarer un serveur devant fonctionner en accès direct avec agent, il faut tout d'abord ouvrir le module de Gestion des machines :

Puis cliquer sur le bouton pour ajouter un nouveau serveur. Une nouvelle fenêtre apparaitra pour paramétrer le nouveau serveur :

Nom
Nom de la machine tel qu'affiché dans la console cyberelements.io ou cyberelements Cleanroom.
Texte de notification
Message de notification que recevront les utilisateurs lors de la connexion au serveur.
Enregistrer les sessions en vidéo
Active ou non l'enregistrement vidéo de la session, en cas de désactivation seuls les événements de session seront capturés et enregistrés.
Contrôler l'intégrité des vidéos à la lecture
Lors de la création de l'archive vidéo, un calcul de l'empreinte (hash SHA-256) du fichier vidéo est réalisé et conservé. Lors des visionnages de l'archive par des administrateurs il sera contrôlé que l'empreinte n'a pas été modifiée. En cas de modification, un message d'alerte sera donné à l'administrateur car il y aura probablement des modifications sur l'enregistrement vidéo (remplacement ou séquences coupées par exemple).
Autoriser la suppression manuelle des archives
Autoriser ou non les administrateurs à supprimer les archives vidéos.

Information

Les archives générées conservent le paramétrage effectif au moment de leur enregistrement. La modification de ce paramètre impactera seulement les nouvelles archives.
Supprimer les archives automatiquement
Paramétrage de la suppression automatique des archives après avoir dépassé un temps en jours spécifique.

Information

Les archives générées conservent le paramétrage effectif au moment de leur enregistrement. La modification de ce paramètre impactera seulement les nouvelles archives.
Utiliser le mode avec agent
Option à activer obligatoirement pour que le serveur ait le mécanisme d'accès direct avec agent d'actif.
Hôte (CN du certificat)
Indication du CN du certificat qu'exploite l'agent d'enregistrement pour s'authentifier auprès de la Edge Gateway. Ceci correspond au paramétrage du certificat machine.
Utiliser le mode sans agent
Parmètre non utile au mode de fonctionnement recherché, il peut être décoché.

Paramétrer les droits d'accès directs avec agent

Le paramétrage des droits d'accès directs avec agent est similaire au paramétrage des politiques d'accès pour les applications. La déclaration de nouveaux droits ou la modification de ceux existants passent par les Configurations d'enregistrement direct :

L'ajout d'une nouvelle configuration est possible via un clic sur le bouton .

Les différents onglets de paramétrage sont similaires à ceux des politiques d'accès des applications à l'exception de celui des groupes qui propose l'ajout manuel d'un groupe :

Après avoir cliqué sur le bouton d'ajout manuel, une nouvelle fenêtre apparaîtra pour récupérer le nom du groupe et son domaine d'appartenance :

Astuce

Cette fonctionnalité est particulièrement utile dans le cas où l'on souhaite ajouter un groupe local ou un groupe présent dans une autre OU que celle paramétrée dans les configurations du domaine LDAP.

Les autres onglets sont :

  • Sites : localiser la configuration sur un ou plusieurs sites, et par extension pour autoriser l'agent d'enregistrement de se connecter à une ou plusieurs Edge Gateways rattachées aux sites autorisés.
  • Machine : ajouter des serveurs RDP déclarés dans le chapitre précédent.
  • Alertes : lier des alertes à la configuration.
  • Connexions réseaux : limiter les mouvements latéraux des utilisateurs durant leurs sessions avec un fonctionnement identique aux limitations de mouvements latéraux des applications RDP et HTML5 RDP.

Logs de l'agent d'enregistrement

Activation des logs de l'agent d'enregistrement

Attention !

L'activation des logs nécessite le redémarrage du service de l'agent d'enregistrement ce qui entraine l'arrêt des enregistrement de session en cours sur le serveur.
Suivant le paramétrage de la clef LogOffOnFailure l'utilisateur verra sa session déconnectée ou non.

Pour activer les logs de l'agent d'enregistrement, il est nécessaire de réaliser les étapes suivantes :

  1. Créer un répertoire nommé Log dans le répertoire d'installation de l'agent (par défaut il s'agit de C:\Program Files (x86)\Systancia\Safe pour cyberelements Cleanroom et de C:\Program Files (x86)\Systancia\cyberelements pour cyberelements.io).
  2. Redémarrer le service CleanroomAgent, par exemple avec la commande administrateur PowerShell suivante :

    1
    Restart-Service -Name 'CleanroomAgent'
    

A chaque démarrage du service de l'agent d'enregistrement, un nouveau fichier de log sera généré dans le répertoire Log créé à l'étape 1.

Contenu des logs de l'agent d'enregistrement

Les logs que générera l'agent d'enregistrement ressembleront à ceci :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem System directory: C:\Windows\system32
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem Windows directory: C:\Windows
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem Windows temporary directory: C:\Windows\TEMP\
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem User profile directory: C:\Windows\system32\config\systemprofile
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem Current directory: C:\Windows\system32
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem Application Data directory: C:\Windows\system32\config\systemprofile\AppData\Roaming
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Command line: C:\Program Files (x86)\Systancia\Safe\IpDivaCareSupervisor.exe
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Current exe directory: C:/Program Files (x86)/Systancia/Safe/
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Root directory: C:/Program Files (x86)/Systancia/
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Microsoft Windows NT family
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Service Pack 0.0
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem OEM ID: 0
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Number of Processors: 8
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Page size: 4096
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Processor Type: 586
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Active processor mask: 255
16-06-25 14:49:02.608 [6364] TRACE Console.infoSystem Username: Système
16-06-25 14:49:02.608 [6364] TRACE Console.infoSystem -----------------------------------
16-06-25 14:49:02.609 [4620] TRACE main.run Loaded 1 gateways from file C:/Program Files (x86)/Systancia/Safe/gateways.xml
16-06-25 14:49:02.610 [4620] ERROR main.run Error loading public keys. boost::filesystem::directory_iterator::construct: Le fichier spécifié est introuvable [system:2]: "C:/Program Files (x86)/Systancia/pubkeys"
16-06-25 14:49:02.610 [4620] TRACE main.wtssessionchange Copying C:/Program Files (x86)/Systancia/Safe/CareInit.exe to C:/Windows/system32/CareInit.exe
16-06-25 14:49:12.298 [6364] TRACE main.wtssessionchange Session logon or connect :6 event:3
16-06-25 14:49:12.299 [6364] TRACE main.wtssessionchange
16-06-25 14:49:13.301 [6364] TRACE main.wtssessionchange Session logon or connect :6 event:5
16-06-25 14:49:13.303 [6364] TRACE main.wtssessionchange cyberelements_user
16-06-25 14:49:13.319 [6364] TRACE wtssessionchange.wtssessionchange 17 bytes written
16-06-25 14:49:13.319 [6364] TRACE wtssessionchange.wtssessionchange Opened VC clr
16-06-25 14:49:13.371 [6364] TRACE main.wtssessionchange Recording server retrieved via VC clr:my-edge-gateway.domain.local
16-06-25 14:49:13.371 [6364] TRACE main.wtssessionchange care password :K5efPBwVM2cIU0LaYQucZp0FV19nRIE5f5VYoBZz6EqlZOxNGM
16-06-25 14:49:13.371 [6364] TRACE SelectConfig.autoconf poll() is not supported on this platform, using select()
16-06-25 14:49:13.418 [6364] TRACE main.getNetFilterRulesInformation Filter not enabled
16-06-25 14:49:13.419 [6364] TRACE main.getNetFilterRulesInformation FALSE
16-06-25 14:49:13.419 [6364] ERROR main.getNetFilterRulesInformation No public key configured. Cannot verify net filtering rules.
16-06-25 14:49:13.419 [6364] TRACE Socket.incrCounters 0 UDP, 0 TCP, 1 Objs
16-06-25 14:49:13.421 [6364] TRACE main.createRecorderProcess launching whith password :K5efPBwVM2cIU0LaYQucZp0FV19nRIE5f5VYoBZz6EqlZOxNGM
16-06-25 14:49:26.664 [4620] TRACE main.createRecorderProcess Calling logoff.exe 6
16-06-25 14:49:26.990 [6364] TRACE main.wtssessionchange User DOMAIN\cyberelements_user has no other session. Dropping network filter rules
16-06-25 14:49:26.990 [6364] TRACE main.wtssessionchange Session logoff or disconnect :6 event:6
16-06-25 14:49:27.331 [6364] TRACE main.wtssessionchange Session logoff or disconnect :6 event:4
16-06-25 14:49:38.964 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:3
16-06-25 14:49:38.965 [6364] TRACE main.wtssessionchange
16-06-25 14:49:40.75 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:5
16-06-25 14:49:40.76 [6364] TRACE main.wtssessionchange cyberelements_user
16-06-25 14:49:40.178 [6364] TRACE wtssessionchange.wtssessionchange WTSVirtualChannelOpenEx failure.31 Not a Cleanroom session, or the client has no support for the clr virtual channel
16-06-25 14:49:40.179 [6364] TRACE main.wtssessionchange prog :
16-06-25 14:49:40.185 [6364] TRACE main.createRecorderProcess User groups :DOMAIN\Utilisateurs du domaine domain.local\Utilisateurs du domaine \Tout le monde domain.local\Tout le monde BUILTIN\Utilisateurs BUILTIN\Utilisateurs du Bureau à distance AUTORITE NT\REMOTE INTERACTIVE LOGON AUTORITE NT\INTERACTIF AUTORITE NT\Utilisateurs authentifiés domain.local\LOCAL DOMAIN\cyberelements_users domain.local\cyberelements_users 
16-06-25 14:49:40.186 [6364] TRACE getDirectRecordInformation.getDirectRecordInformation gateways: my-edge-gateway.domain.local
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server.domain.local in the local machine store
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate subject:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=my-rds-server.domain.local
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate issuer:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=SUB-CA
16-06-25 14:49:40.404 [6364] TRACE Socket.incrCounters 0 UDP, 0 TCP, 1 Objs
16-06-25 14:49:40.404 [6364] TRACE main.createRecorderProcess Net filter enabled
16-06-25 14:49:40.426 [3948] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Remote address: 168427818 (10.10.1.42) Remote port: 443 Protocol condition: TCP
16-06-25 14:49:40.427 [3948] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Remote address: 168432641 (10.10.20.1) Remote port: 53 Protocol condition: UDP
16-06-25 14:49:40.428 [6364] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Application: C:/Program Files (x86)/Systancia/Safe/IpdivaCareRecorder.exe Remote address: 168427791 (10.10.1.15) Remote port: 8443 Protocol condition: TCP
16-06-25 14:49:40.430 [6364] TRACE main.createRecorderProcess launching whith password :DIRECT_33fRBYAwVDEKs8n3bGFwlIgKYd39C2Ubcl4pkLLC0YAouL4Gml
16-06-25 14:49:48.690 [4620] TRACE main.createRecorderProcess Calling logoff.exe 7
16-06-25 14:49:50.13 [6364] TRACE main.wtssessionchange User DOMAIN\cyberelements_user has no other session. Dropping network filter rules
16-06-25 14:49:50.13 [6364] TRACE main.wtssessionchange Session logoff or disconnect :7 event:6
16-06-25 14:49:50.379 [6364] TRACE main.wtssessionchange Session logoff or disconnect :7 event:4
16-06-25 14:49:54.658 [6364] TRACE main.wtssessionchange Removing C:/Windows/system32/CareInit.exe
Initialisation de l'agent d'enregistrement (lignes 1-21)

Lors de l'initialisation de l'agent d'enregistrement (lignes 1-18) diverses informations sur le système y sont consignées.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem System directory: C:\Windows\system32
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem Windows directory: C:\Windows
16-06-25 14:49:02.604 [6364] TRACE Console.infoSystem Windows temporary directory: C:\Windows\TEMP\
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem User profile directory: C:\Windows\system32\config\systemprofile
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem Current directory: C:\Windows\system32
16-06-25 14:49:02.605 [6364] TRACE Console.infoSystem Application Data directory: C:\Windows\system32\config\systemprofile\AppData\Roaming
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Command line: C:\Program Files (x86)\Systancia\Safe\IpDivaCareSupervisor.exe
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Current exe directory: C:/Program Files (x86)/Systancia/Safe/
16-06-25 14:49:02.606 [6364] TRACE Console.infoSystem Root directory: C:/Program Files (x86)/Systancia/
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Microsoft Windows NT family
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Service Pack 0.0
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem OEM ID: 0
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Number of Processors: 8
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Page size: 4096
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Processor Type: 586
16-06-25 14:49:02.607 [6364] TRACE Console.infoSystem Active processor mask: 255
16-06-25 14:49:02.608 [6364] TRACE Console.infoSystem Username: Système
16-06-25 14:49:02.608 [6364] TRACE Console.infoSystem -----------------------------------

La ligne 19 précise le nombre de Edge Gateway trouvées dans le fichier gateways.xml pour le fonctionnement en mode direct.

19
16-06-25 14:49:02.609 [4620] TRACE main.run Loaded 1 gateways from file C:/Program Files (x86)/Systancia/Safe/gateways.xml

La ligne 20 indique un problème de chargement de clefs dans un répertoire inexistant, il s'agit d'un ancien fonctionnement ne nuisant pas au fonctionnement général de l'agent. Ce log d'erreur peut donc être ignoré.

20
16-06-25 14:49:02.610 [4620] ERROR main.run Error loading public keys. boost::filesystem::directory_iterator::construct: Le fichier spécifié est introuvable [system:2]: "C:/Program Files (x86)/Systancia/pubkeys"

La ligne 21 précise l'action de copie de l'exécutable CareInit.exe dans System32 afin de couvrir les cas de lancement d'une application RDP avec agent depuis une machine macOS ou Ubuntu.
Dans cette condition la connexion au serveur demandant d'exécuter CareInit.exe en tant que programme de démarrage.

21
16-06-25 14:49:02.610 [4620] TRACE main.wtssessionchange Copying C:/Program Files (x86)/Systancia/Safe/CareInit.exe to C:/Windows/system32/CareInit.exe
Connnexion d'une application HTML5 RDP ou RDP avec agent (lignes 22-39)

Lorsque qu'une nouvelle session RDP est détectée, les logs suivants sont inscrits pour mentionner la détection d'une nouvelle session RDP et inscrire le nom d'utilisateur qui s'est connecté :

22
23
24
25
16-06-25 14:49:12.298 [6364] TRACE main.wtssessionchange Session logon or connect :6 event:3
16-06-25 14:49:12.299 [6364] TRACE main.wtssessionchange
16-06-25 14:49:13.301 [6364] TRACE main.wtssessionchange Session logon or connect :6 event:5
16-06-25 14:49:13.303 [6364] TRACE main.wtssessionchange cyberelements_user

Dans les logs ci-dessus, c'est l'utilisateur cyberelements_user qui s'est connecté en RDP.

Lors d'un lancement d'une application HTML5 RDP ou RDP avec agent, un canal virtuel RDP spécifique est créé afin de remonter à l'agent d'enregistrement l'adresse de connexion à la Edge Gateway ainsi que le mot de passe unique de connexion au service d'enregistrement de la Edge Gateway.
Cela indique deux éléments :

  1. L'agent d'enregistrement a détecté qu'il s'agit d'une connexion RDP initiée par cyberelements Cleanroom ou cyberelements.io, il ne doit donc pas traiter la session comme un accès direct.
  2. L'agent d'enregistrement a pu récupérer l'adresse de la Edge Gateway à qui il doit remonter les enregistrements vidéos et les événements.

Ces informations correspondaient aux lignes 27-29 où dans l'exemple l'agent d'enregistrement a récupéré l'adresse de connexion à la Edge Gateway (my-edge-gateway.domain.local) ainsi qu'un mot de passe à usage unique (K5efPBwVM2cIU0LaYQucZp0FV19nRIE5f5VYoBZz6EqlZOxNGM) :

29
30
31
16-06-25 14:49:13.319 [6364] TRACE wtssessionchange.wtssessionchange Opened VC clr
16-06-25 14:49:13.371 [6364] TRACE main.wtssessionchange Recording server retrieved via VC clr:my-edge-gateway.domain.local
16-06-25 14:49:13.371 [6364] TRACE main.wtssessionchange care password :K5efPBwVM2cIU0LaYQucZp0FV19nRIE5f5VYoBZz6EqlZOxNGM

Puis vient des logs concernant l'application de règles de filtrage réseau qui sont détaillées dans une autre section information plus bas dans la page.

Un log précise quand est-ce que l'agent d'enregistrement initie la connexion avec la Edge Gateway et avec quel mot de passe unique il s'y authentifie.

35
16-06-25 14:49:13.421 [6364] TRACE main.createRecorderProcess launching whith password :K5efPBwVM2cIU0LaYQucZp0FV19nRIE5f5VYoBZz6EqlZOxNGM

Finalement, lorsque l'utilisateur initie une déconnexion, celle-ci est capturée par l'agent d'enregistrement afin de mettre fin à l'enregistrement et retirer les règles de filtrage réseau s'il y en avaient. Cela correspond aux lignes 36-39 du fichier de logs d'exemple :

36
37
38
39
16-06-25 14:49:26.664 [4620] TRACE main.createRecorderProcess Calling logoff.exe 6
16-06-25 14:49:26.990 [6364] TRACE main.wtssessionchange User DOMAIN\cyberelements_user has no other session. Dropping network filter rules
16-06-25 14:49:26.990 [6364] TRACE main.wtssessionchange Session logoff or disconnect :6 event:6
16-06-25 14:49:27.331 [6364] TRACE main.wtssessionchange Session logoff or disconnect :6 event:4
Connnexion en accès direct RDP (lignes 40-61)

Lorsque qu'une nouvelle session RDP est détectée, les logs suivants sont inscrits pour mentionner la détection d'une nouvelle session RDP et inscrire le nom d'utilisateur qui s'est connecté :

40
41
42
43
16-06-25 14:49:38.964 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:3
16-06-25 14:49:38.965 [6364] TRACE main.wtssessionchange
16-06-25 14:49:40.75 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:5
16-06-25 14:49:40.76 [6364] TRACE main.wtssessionchange cyberelements_user

Dans les logs ci-dessus, c'est l'utilisateur cyberelements_user qui s'est connecté en RDP.

Lors d'une connexion RDP en direct, le canal virtuel RDP spécifique pour le fonctionnement des lancements des applications RDP ou HTML5 RDP avec agent n'est pas utilisé. L'agent d'enregistrement conclu donc que la session ouverte est une session en accès direct.

44
16-06-25 14:49:40.178 [6364] TRACE wtssessionchange.wtssessionchange WTSVirtualChannelOpenEx failure.31 Not a Cleanroom session, or the client has no support for the clr virtual channel

Du fait de la détection d'un accès direct, l'agent d'enregistrement inscrit dans le fichier de log les différents groupes utilisateurs de l'utilisateur qui vient de se connecter :

46
16-06-25 14:49:40.185 [6364] TRACE main.createRecorderProcess User groups :DOMAIN\Utilisateurs du domaine domain.local\Utilisateurs du domaine \Tout le monde domain.local\Tout le monde BUILTIN\Utilisateurs BUILTIN\Utilisateurs du Bureau à distance AUTORITE NT\REMOTE INTERACTIVE LOGON AUTORITE NT\INTERACTIF AUTORITE NT\Utilisateurs authentifiés domain.local\LOCAL DOMAIN\cyberelements_users domain.local\cyberelements_users 

Astuce

Grâce à cette information vous pouvez déterminer des causes du non déclenchement des enregistrements en accès direct : si le contrat d'accès direct n'autorise pas l'un des groupes de l'utilisateur ou que le nom du domaine indiqué doit être le nom court (nom netBIOS) ou le nom complet.

L'agent d'enregistrement précise à quelles Edges Gateways il va pouvoir se connecter pour remonter l'enregistrement de la session de l'utilisateur.
Pour rappel il s'agit des Edges Gateways faisant parties du fichier gateways.xml paramétré lors de la configuration de l'agent d'enregistrement.

47
16-06-25 14:49:40.186 [6364] TRACE getDirectRecordInformation.getDirectRecordInformation gateways: my-edge-gateway.domain.local

Vient ensuite l'indication du certificat client qu'utilise l'agent d'enregistrement pour s'authentifier auprès du service d'enregistrement.
Par défaut l'agent d'enregistrement cherchera un certificat contenant dans son CN le nom du serveur RDP sauf si la clef MachineName a été définie.
L'agent d'enregistrement précise ensuite le certificat retenu ainsi que les informations de l'autorité de certification qui l'a généré.

48
49
50
51
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server.domain.local in the local machine store
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate subject:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=my-rds-server.domain.local
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate issuer:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=SUB-CA

Dans l'exemple ci-dessus, l'agent d'enregistrement recherchait un certificat contenant my-rds-server et en a trouvé un avec pour CN my-rds-server.domain.local émis pour l'autorité de certification SUB-CA.

Puis vient des logs concernant l'application de règles de filtrage réseau qui sont détaillées dans une autre section information plus bas dans la page.

Un log précise quand est-ce que l'agent d'enregistrement initie la connexion avec la Edge Gateway et avec quel mot de passe unique il s'y authentifie.

57
16-06-25 14:49:40.430 [6364] TRACE main.createRecorderProcess launching whith password :DIRECT_33fRBYAwVDEKs8n3bGFwlIgKYd39C2Ubcl4pkLLC0YAouL4Gml

Finalement, lorsque l'utilisateur initie une déconnexion, celle-ci est capturée par l'agent d'enregistrement afin de mettre fin à l'enregistrement et retirer les règles de filtrage réseau s'il y en avaient. Cela correspond aux lignes 58-61 du fichier de logs d'exemple :

58
59
60
61
16-06-25 14:49:48.690 [4620] TRACE main.createRecorderProcess Calling logoff.exe 7
16-06-25 14:49:50.13 [6364] TRACE main.wtssessionchange User DOMAIN\cyberelements_user has no other session. Dropping network filter rules
16-06-25 14:49:50.13 [6364] TRACE main.wtssessionchange Session logoff or disconnect :7 event:6
16-06-25 14:49:50.379 [6364] TRACE main.wtssessionchange Session logoff or disconnect :7 event:4
Application de règles de filtrage réseau (lignes 31 et 53-56)

Pour chacune des sessions détectées par l'agent d'enregistrement, ce dernier cherchera à savoir s'il est nécessaire d'appliquer des règles de filtrage réseau à la session de l'utilisateur.

Dans le cas où aucune règle de filtrage réseau ne doit être appliquée, l'agent d'enregistrement indique Filter not enabled.

31
16-06-25 14:49:13.418 [6364] TRACE main.getNetFilterRulesInformation Filter not enabled

Si des règles de filtrage réseau devaient être appliquées, la mention Net filter enabled apparaîtra.
A la suite de cette ligne d'activation de filtre est indiqué chacun des filtres appliqués, un par ligne :

53
54
55
56
16-06-25 14:49:40.404 [6364] TRACE main.createRecorderProcess Net filter enabled
16-06-25 14:49:40.426 [3948] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Remote address: 168427818 (10.10.1.42) Remote port: 443 Protocol condition: TCP
16-06-25 14:49:40.427 [3948] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Remote address: 168432641 (10.10.20.1) Remote port: 53 Protocol condition: UDP
16-06-25 14:49:40.428 [6364] TRACE CleanroomNetFilter.addRule User DOMAIN\cyberelements_user Application: C:/Program Files (x86)/Systancia/Safe/IpdivaCareRecorder.exe Remote address: 168427791 (10.10.1.15) Remote port: 8443 Protocol condition: TCP

Pour rappel lors de l'activation de filtrage réseau, le comportement par défaut est l'interdiction de l'ensemble des flux TCP/UDP. Par conséquent les filtres indiqués sont les seuls flux TCP/UDP autorisés pour les programmes exécutés dans le contexte de l'utilisateur.
Dans l'exemple ci-dessus les connexions à TCP 10.10.1.42:443 et à UDP 10.10.20.1:53 sont autorisées. En plus de ces deux flux autorisés par l'administrateur, le flux de connexion au service d'enregistrement est lui aussi ouvert pour permettre la remontée de l'enregistrement de la session par le programme qui en a la charge.

Astuce

Si aucun flux n'est autorisé pour l'utilisateur, seules les lignes indiquant que le filtrage est actif et que le processus d'enregistrement puisse contacter le service d'enregistrement de la Edge Gateway seront affichées.

Défaut de connexion au service d'enregistrement

Plusieurs phénomènes peuvent provoquer l'incapacité de connexion de l'agent d'enregistrement au service d'enregistrement d'une Edge Gateway.

Le premier étant un blocage du flux réseau, dans ce cas, lorsque le service d'enregistrement tente de se connecter au service d'enregistrement il inscrit des logs similaires à ceux-ci :

1
2
3
4
18-06-25 15:29:45.805 [2456] TRACE Socket.connect error during select or socket not writable, rc=0
18-06-25 15:29:45.805 [2456] TRACE Socket.raise error not registered: 0
18-06-25 15:29:45.809 [2456] ERROR main.getDirectRecordInformation Could not connect to gateway my-edge-gateway.domain.local Exception :ESocket:errors.cpp:242
18-06-25 15:29:45.809 [2456] ERROR main.getDirectRecordInformation No gateway available

Dans cet exemple, la ligne 1 indique que le flux n'a pas pu être initié tandis que la ligne 3 précise la Edge Gateway concernée et le défaut de connexion (notez aussi le numéro 242 en fin de ligne 3 pour ce type de problème).

Le second problème pouvant être rencontré étant l'incapacité de l'agent d'enregistrement, et par extension le serveur RDP, de pouvoir résoudre le nom de la Edge Gateway :

1
2
3
18-06-25 15:37:07.539 [2456] ERROR Socket.DNSLookup getaddrinfo() Hôte inconnu. 
18-06-25 15:37:07.539 [2456] ERROR main.getNetFilterRulesInformation Could not retrieve netfilter rule with gateway wrong-dns-edge-gateway.domain.local Exception :ESocketLookupFailed:socket2.cpp:232
18-06-25 15:37:07.539 [2456] ERROR main.getNetFilterRulesInformation The gateway may need an upgrade

Dans cet exemple c'est la ligne 1 qui confirme le problème de résolution DNS du nom de la Edge Gateway.
La seconde ligne précise le défaut de connexion ainsi que le nom de la Edge Gateway, à noter que la ligne se termine par le nombre 232 lors de défaut de résolution DNS.

Le troisième problème pouvant survenir étant une connexion à un service n'étant pas un service d'enregistrement, par exemple un serveur Web écoutant sur le port 8443. Dans ce cas les logs suivants sont obtenus :

1
2
3
18-06-25 15:38:33.607 [2456] TRACE IO.read problem when read data
18-06-25 15:38:33.608 [2456] ERROR main.getNetFilterRulesInformation Could not retrieve netfilter rule with gateway wrong-server.domain.local Exception :IOException:io.cpp:140
18-06-25 15:38:33.608 [2456] ERROR main.getNetFilterRulesInformation The gateway may need an upgrade

La ligne 1 indique un défaut avec les données échangées, la ligne 2 confirme le problème de connexion et précise l'erreur 140 en fin de ligne.

Aucun contrat d'accès direct ne permet de déclencher l'enregistrement de la session directe

Lors des accès direct, tous les utilisateurs ne sont pas forcément contraints d'être enregistrés, si tel est le cas nous retrouvons les logs suivants :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
16-06-25 14:49:38.964 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:3
16-06-25 14:49:38.965 [6364] TRACE main.wtssessionchange
16-06-25 14:49:40.75 [6364] TRACE main.wtssessionchange Session logon or connect :7 event:5
16-06-25 14:49:40.76 [6364] TRACE main.wtssessionchange cyberelements_user
16-06-25 14:49:40.178 [6364] TRACE wtssessionchange.wtssessionchange WTSVirtualChannelOpenEx failure.31 Not a Cleanroom session, or the client has no support for the clr virtual channel
16-06-25 14:49:40.179 [6364] TRACE main.wtssessionchange prog :
16-06-25 14:49:40.185 [6364] TRACE main.createRecorderProcess User groups :DOMAIN\Utilisateurs du domaine domain.local\Utilisateurs du domaine \Tout le monde domain.local\Tout le monde BUILTIN\Utilisateurs BUILTIN\Utilisateurs du Bureau à distance AUTORITE NT\REMOTE INTERACTIVE LOGON AUTORITE NT\INTERACTIF AUTORITE NT\Utilisateurs authentifiés domain.local\LOCAL DOMAIN\cyberelements_users domain.local\cyberelements_users 
16-06-25 14:49:40.186 [6364] TRACE getDirectRecordInformation.getDirectRecordInformation gateways: my-edge-gateway.domain.local
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server
16-06-25 14:49:40.199 [6364] TRACE SecChannelClient.ClientCreateCredentials looking for a certificate with name containing:my-rds-server.domain.local in the local machine store
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate subject:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=my-rds-server.domain.local
16-06-25 14:49:40.201 [6364] TRACE SecChannelClient.ClientCreateCredentials certificate issuer:C=FR, S=Grand-Est, L=Sausheim, O=Systancia, CN=SUB-CA
16-06-25 14:49:40.404 [6364] TRACE Socket.incrCounters 0 UDP, 0 TCP, 1 Objs
16-06-25 14:49:40.406 [6364] TRACE main.createRecorderProcess no need to record

Les logs obtenus débutent comme toutes sessions directes capturées par l'agent d'enregistrement, cependant, une fois la connexion établie vers le service d'enregistrement de la Edge Gateway, cette dernière retourne à l'agent d'enregistrement l'information que l'utilisateur qui s'est connecté n'est pas soumis à un enregistrement.
L'agent d'enregistrement indique donc qu'il n'y a pas besoin d'enregistrer la session de l'utilisateur (ligne 14 de l'exemple ci-dessus).

La ligne 7 liste l'ensemble des groupes récupérés par l'agent d'enregistrement pour l'utilisateur qui s'est connecté.
Grâce à cette information vous pouvez déterminer des causes du non déclenchement des enregistrements en accès direct : si le contrat d'accès direct n'autorise pas l'un des groupes de l'utilisateur ou que le nom du domaine indiqué doit être le nom court (nom netBIOS) ou le nom complet.