Cet article va vous expliquer comment configurer les smart links afin de bénéficier d'une authentification SSO sous SharePoint Online. Voici le scénario pour bien comprendre l'intérêt des smart links. A noter que cela est totalement complémentaire à ADFS, cette brique représente d'ailleurs un prérequis pour l'utilisation de ces liens.
Pourquoi les smart links ?
Les smart links vont vous permettre de jouer une redirection pour bénéficier d'une authentification SSO sur le service SharePoint Online (dans cet exemple). Le constat est le suivant, même en disposant d'une infrastructure ADFS, lorsque vous essayez de vous connecter sur votre SharePoint Online, vous atterissez sur la page login de Microsoft, c'est qu'une fois avoir renseigné votre email que la configuration ADFS prend le relais et vous connecte automatiquement. Le smart link vous permet de vous connecter en toute transparence comme si vous vous connectez sur la partie Exchange Online par exemple. Plus de détails ici.
Mise en place
La première étape va consister à récupérer l'URL utiliser lors de l'authentification avec ADFS. Pour ce faire, vous avez deux solutions :
1. Utiliser le debogueur présent sur votre navigateur (IE dans cet exemple)
Copiez/coller le lien sur un document .txt
2. Utiliser un outils de capture de trame comme fiddler.
Dans le cas d'un ADFS 2.0 pensez à désactiver la protection étendue. Pour un ADFS 3.0 il faut faire quelque chose de similaire :
Set-ADFSProperties -ExtendedProtectionTokenCheck None
Ensuite, redémarrez le service ADFS
Dans fiddler, cocher l'option Decrypt HTTPS traffic
Pour finir, récupérez le lien utiliser pour l'authentification de vos utilisateur par ADFS
Une fois que vous avez récupérez le lien, il faut y apporter les modifications suivantes :
1. Supprimer les éléments entre '.../adfs/ls/?' et 'wa=wsignin1...'
2. Supprimer le reste de l'URL après 'wreply%3D'
Vous devriez avoir une URL qui ressemble à cela :
https://adfs.it-channels.com/adfs/ls/?wa=wsignin1.0&wtrealm=urn:federation:MicrosoftOnline&wctx=MEST%3D0%26LoginOptions%3D1%26wa%3Dwsignin1%252E0%26rpsnv%3D2%26ct%3D1348618157%26rver%3D6%252E1%252E6206%252E0%26wp%3DMBI%26wreply%3D
Pour finir, construisez l'URL cible de redirection. Utilisez cette table de référence pour la construction de cette URL :
ASCII Character | Double-Encoded Value |
: | %253A |
. | %252E |
/ | %252F |
Je souhaite rediriger vers mon sous-site azure, voici le résultat :
https%253A%252F%252Fitchannels%252Esharepoint%252Ecom%252Fsites%252Fazure
L'URL finale sera donc la concaténation des deux :
https://adfs.it-channels.com/adfs/ls/?wa=wsignin1.0&wtrealm=urn:federation:MicrosoftOnline&wctx=MEST%3D0%26LoginOptions%3D1%26wa%3Dwsignin1%252E0%26rpsnv%3D2%26ct%3D1348618157%26rver%3D6%252E1%252E6206%252E0%26wp%3DMBI%26wreply%3Dhttps%253A%252F%252Fitchannels%252Esharepoint%252Ecom%252Fsites%252Fazure
Il faut maintenant créer le lien de redirection et là aussi, nous avons deux possibilités, soit vous le gérez directement sur vos DNS internes, soit vous le générez sur votre DNS public. Je me suis donc basé sur IIS pour effectuer cette redirection.
Je souhaite faire une redirection sur mon sous site azure, j'ai donc créé une web application spécifique. De cette manière, je pourrai organiser mes différents liens de redirection
Je configure mon entrée DNS pour que mes postes en internes puissent faire la redirection sur le bon site
Mon SSO est maintenant opérationnel pour mon SharePoint Online (sous-site Azure) !
Vous pouvez également créer des smart links pour les autres services Office 365.
Bonne configuration et n'hésitez pas à commenter ;)
Joris