Configurer l’authentification par certificat client dans UserLock Anywhere
Apprenez à configurer l’authentification par certificat client dans UserLock Anywhere afin de remplacer l’authentification NTLM.
Lorsqu’un agent distant se connecte à UserLock Anywhere, il utilise par défaut le protocole NTLM pour s’authentifier, car aucun contrôleur de domaine n’est accessible en dehors du réseau, et Kerberos ne peut donc pas être utilisé.
Cependant, NTLM est désormais considéré comme obsolète et moins sécurisé.
À partir de UserLock 13.0, il est possible d’utiliser une authentification basée sur certificat client, permettant aux agents de s’authentifier de manière sécurisée grâce à un certificat d’ordinateur émis par votre autorité de certification Active Directory (CA) et déployé via les stratégies de groupe (GPO).
Ce guide explique comment activer et configurer cette méthode d’authentification dans IIS pour UserLock Anywhere.
Avant de commencer, assurez-vous que les conditions suivantes sont réunies :
✅️ UserLock Anywhere est déjà installé et fonctionnel.
✅️ Les agents UserLock sont mis à jour en version 13.0 ou supérieure.
✅️ Tous les ordinateurs portables disposent d’un certificat d’ordinateur dans le magasin de certificats de l’ordinateur local.

✅️ Si vos utilisateurs se connectent via UserLock VPN Connect, chacun doit également posséder un certificat utilisateur dans son magasin de certificats personnel.

✅️ Vous connaissez les principes de déploiement d’une autorité de certification AD et de distribution de certificats par GPO. Pour plus de détails, consultez la documentation Microsoft sur l’installation d’une autorité de certification Active Directory et le déploiement de certificats.
Sur le serveur IIS hébergeant UserLock Anywhere, ouvrez les paramètres SSL de l’application ulproxy :
Activez Require SSL.
Réglez Client Certificates sur Accept.


Patientez jusqu’à ce que plusieurs connexions depuis l'extérieur (hors réseau) et sessions VPN soient ouvertes afin de générer de l’activité dans UserLock Anywhere.
Vérifiez le comportement des agents en accédant à la page de statistiques des certificats :
https://hostname/ulproxy/certificate-stats(Remplacez
hostnamepar le nom de votre serveur.)
Attendez que la valeur Without certificate = 0 soit stable pendant une période suffisante.
Vous pouvez réinitialiser les statistiques en recyclant le pool d’applications UserLockProxyAppPool, ou ajuster ses options de recyclage pour conserver les données plus longtemps.Une fois que tous les agents envoient bien leur certificat, modifiez la configuration IIS pour exiger le certificat client (Require).

Vous êtes maintenant certain que tous les agents envoient un certificat client à UserLock Anywhere.
Note
💡 Optionnel : Vous pouvez aussi restreindre l’accès à UserLock Anywhere uniquement aux ordinateurs de confiance (voir la section Configuration optionnelle).
Installez la fonctionnalité Active Directory Client Certificate Authentication dans IIS en executant la commande Powershell suivante:
Install-WindowsFeature Web-Client-AuthDans IIS Manager, au niveau du serveur, ouvrez la section Authentication et activez :
Active Directory Client Certificate Authentication


Dans l’application ulproxy :
Ouvrez Configuration Editor.

Définissez :
system.webServer > security > authentication > clientCertificateMappingAuthentication = true

Attendez de nouvelles connexions distantes pour générer des événements d’authentification.
Vérifiez les statistiques d’authentification :
https://hostname/ulproxy/auth-stats
Lorsque le seul package d’authentification affiché est SSL/PCT, cela signifie que NTLM n’est plus utilisé.
Vous pouvez alors :Désactiver Windows Authentication dans IIS pour l’application ulproxy, ou
Désactiver NTLM globalement sur le serveur (voir la documentation Microsoft).

Dans certains cas, la fonctionnalité Authentification par certificat client Active Directory ne fonctionne pas après son activation, car la liaison SSL HTTP n’est pas configurée avec l’option requise DS Mapper Usage.
Pour vérifier ce paramètre, ouvrez une invite de commandes en tant qu’administrateur et exécutez:
netsh http show sslcertVous devriez obtenir un résultat similaire à :

Si le champ DS Mapper Usage est défini sur Disabled, activez-le manuellement avec la commande suivante (en adaptant les valeurs à votre environnement) :
netsh http update sslcert ipport=0.0.0.0:443 certhash=be642440a12cf93768ce6d269115a5ce30590c26 appid={4dc3e181-e14b-4a21-b022-59fc669b0914} certstorename=My dsmapperusage=enable⚠️ Important :
Remplacez les valeurs
ipport,certhash,appidetcertstorenamepar celles correspondant à votre site.Dans certains cas, des paramètres supplémentaires peuvent être nécessaires pour conserver d’autres réglages de la liaison.
Pour afficher toutes les options disponibles :netsh http update sslcert helpAprès exécution, vérifiez la configuration avec :
netsh http show sslcertafin de vous assurer que les autres paramètres n’ont pas été modifiés.
Une fois DS Mapper Usage activé, redémarrez IIS et testez à nouveau l’authentification.
Il est possible que NTLM continue d’apparaître dans les statistiques, même si l’authentification par certificat client est bien active.
Cela se produit lorsque l’agent UserLock envoie encore l’en-tête NTLM, même s’il n’est plus requis.
Pour vérifier ce comportement :
Ouvrez la stratégie de sécurité locale sur le serveur IIS.
Activez l’audit des ouvertures de session dans :
Paramètres de sécurité → Stratégies locales → Stratégie d’audit.Reproduisez une connexion depuis un ordinateur distant.
Dans le journal de sécurité Windows, recherchez les événements ID 4624 associés au compte d’ordinateur accédant à UserLock Anywhere.
Vous devriez observer deux événements de connexion pour chaque tentative :
Package d’authentification | Processus de connexion | Description |
|---|---|---|
NTLM | - | L’agent envoie encore l’en-tête NTLM standard |
Kerberos | Schannel | Authentification par certificat client active |
Si ces deux événements apparaissent, cela confirme que l’authentification par certificat client fonctionne correctement.
Vous pouvez alors désactiver NTLM dans IIS ou sur l’ensemble du serveur (voir la documentation Microsoft).
Une fois l’étape 1 terminée, les clients sans certificat valide sont rejetés.
Vous pouvez aller plus loin en autorisant uniquement les certificats émis par votre autorité de certification Active Directory (principe de « Zero Trust »).
Ajoutez le certificat de votre autorité de certification (CA) dans le magasin Client Authentication Issuers du serveur IIS hébergeant UserLock Anywhere.
Mettez à jour la liaison IIS pour y faire référence :
netsh http update sslcert ipport=0.0.0.0:443 certhash=<votre-cert-hash> appid={<votre-app-id>} certstorename=My sslctlstorename=ClientAuthIssuer dsmapperusage=enableNote
Soyez prudent lorsque vous exécutez cette commande. Lisez la section précédente consacrée au dépannage pour plus d'informations sur la manière de l'exécuter et veillez à ne commettre aucune erreur.
Activez le filtrage des autorités de confiance via le registre :
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel" /v SendTrustedIssuerList /t REG_DWORD /d 1Redémarrez le serveur IIS.
Après cette configuration, seuls les ordinateurs appartenant à votre domaine Active Directory pourront accéder à UserLock Anywhere.
🔗️ Voir aussi : Présentation technique de Schannel SSP (Microsoft Learn)