Lync Android et ADFS 2012 R2 : impossible de se connecter à Lync Online (we can’t sign you in)
Depuis Windows Server 2012 R2, ADFS et Web Application Proxy utilisent une fonctionnalité du protocole SSL/TLS : Server Name Indication (SNI). SNI permet d’inclure dans le header de la demande le hostname du serveur auquel il essaye d’établir une négociation TLS. Cela est notamment très utile afin d’utiliser plusieurs hostnames et plusieurs certificats SSL différents dans IIS sur une même interface réseau.
Cependant, certains clients ne supportent pas encore cette nouvelle fonctionnalité, et c’est le cas des clients :
- Lync 2010 pour Android
- Lync 2013 pour Android
- Lync sous Windows Phone 7.8
Symptômes
Vous essayez de vous connecter à Lync Online au travers d’un compte fédéré via ADFS 3.0 sous Windows Server 2012 R2. Vous obtenez le message “We can’t sign you in. Please try again” sous Lync 2013 pour Android.
Résolution
Les clients Lync Android et Windows Phone 7.8 n’étant pas compatibles avec SNI, vous devrez effectuer une manipulation sur vos serveurs ADFS internes et Web Application Proxy afin de rajouter un binding dédié.
Sur vos serveurs ADFS internes
- Ouvrez une invite de commande cmd en tant qu’administrateur
- Tapez la commande netsh http show sslcert pour afficher la liste des bindings configurés par ADFS
- Repérez et copiez quelque part les valeurs Certificate Hash et Application ID du binding lié à votre service ADFS (dans mon cas : adfs.home.maximerastello.com)
- Tapez la commande netsh http add sslcert ipport=0.0.0.0:443 certhash=<votre hash> appid={votre app id} en remplaçant par les valeurs notées à l’étape 3
- Redémarrez le service Active Directory Federation Services
Note : pour le service ADFS 2012 R2, l’app ID est censé être {5d89a20c-beab-4389-9447-324788eb944a}
Important : N’oubliez pas de répéter cette opération sur tous les serveurs de votre ferme ADFS
Sur vos serveurs Web Application Proxy
Effectuez la même opération que sur les serveurs ADFS internes sur tous les serveurs WAP de votre ferme, et n’oubliez pas de redémarrer à chaque fois les services suivants :
- Active Directory Federation Services
- Web Application Proxy Controller Service
Vous êtes désormais en mesure de vous connecter à Lync Online via le client Android.