Conseils pour la mise à niveau ou le déplacement d’ADFS 2.0

Article d’origine publié le mardi 9 août 2011

Dernièrement, j’ai passé beaucoup de temps à essayer de mettre à niveau un serveur ADFS, dans mon cas, de Windows Server 2008 vers 2008 R2. Comme beaucoup d’utilisateurs de SharePoint qui essaient de se débrouiller dans le monde merveilleux des revendications, les tâches a priori simples telles que celle-ci peuvent se révéler incroyablement fastidieuses. Voici quelques conseils qui pourront vous être utiles :

  • Il n’existe pas réellement de chemin de mise à niveau direct de Windows Server 2008 vers Windows Server 2008 R2 à partir d’ADFS 2.0 Dans mon cas, l’opération a abouti à la désinstallation complète d’ADFS. Autrement dit, après cette opération, vous devrez en quelque sorte tout reprendre à zéro. Je vous conseille dans un premier temps de sauvegarder la base de données. Je vous en dirai plus prochainement.
  • ADFS cherche réellement à utiliser cette fichue base de données interne Windows. Si vous cherchez simplement à tout mettre en place pour votre batterie de serveurs SharePoint, cela s’avère généralement suffisant. La question est : comment faire lorsqu’il s’agit de sauvegarder et restaurer la base de données ? Heureusement, il existe un outil en téléchargement gratuit qui s’en chargera. Même si le lien que j’ai trouvé concernait SQL Server 2005, l’outil fonctionne quand même avec la base de données interne Windows. Suivez le lien https://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=8961 pour télécharger l’outil en question, qui s’appelle « SQL Server Management Studio Express ».
  • Comme vous pourrez le constater, la connexion que vous devez utiliser à l’ouverture de l’outil n’est pas un modèle d’intuitivité. C’est la raison pour laquelle je l’ai collée ici. Vous devriez pouvoir la copier ici et la coller dans l’outil lorsque la boîte de dialogue de connexion s’ouvrira : « \\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query » (sans les guillemets)
  • Lors de la réinstallation d’ADFS, il se peut qu’un message s’affiche à la fin de l’Assistant ADFS pour vous avertir que le site Web ADFS est déjà installé et que son contenu n’a donc pas été écrasé. Il vous invite ensuite à suivre un lien afin de redéployer le site Web. Problème :  le lien est VIDE ! Consternant, je l’admets... mais respirez un bon coup, car ce qui va suivre n’est guère plus enthousiasmant : si vous regardez dans le composant logiciel enfichable Gestionnaire des services Internet, vous ne trouverez aucun répertoire virtuel ADFS. Frustrant ! La solution ici est d’utiliser appcmd pour supprimer les répertoires virtuels. C’est ce que j’ai fait avec les deux commandes suivantes :
    • C:\Windows\System32\inetsrv>appcmd delete app "Site Web par défaut/adfs/card"
    • C:\Windows\System32\inetsrv>appcmd delete app "Site Web par défaut/adfs/ls"
  • Maintenant que vous en avez terminé de ces bidouillages, vous pouvez réexécuter l’Assistant ADFS pour mettre tout en place. Une fois que tout est prêt, vous pouvez restaurer les bases de données que vous avez sauvegardées précédemment. Voici comment procéder :
    • Fermez l’application ADFS Management si elle est ouverte.
    • Arrêtez le service ADFS.
    • Restaurez d’abord la base de données AdfsConfiguration.
    • Démarrez le service ADFS.
    • Restaurez la base de données AdfsArtifactStore.
    • Ouvrez l’application ADFS Management. Tout doit fonctionner et être restauré.
  • Pour finir, vous pouvez identifier le certificat de signature de jetons qu’utilise le service ADFS. Encore une fois, il essaiera d’utiliser le certificat auto-signé qu’il a créé à l’installation. Toutefois, si vous utilisiez auparavant un autre certificat, il est évident que celui-ci sera inopérant lorsque vous essaierez d’accéder à des sites SharePoint qui fonctionnaient avec ce certificat (le bon vieux message d’autorité racine non approuvée que j’ai décrit dans le billet https://blogs.technet.com/b/speschka/archive/2010/02/13/root-of-certificate-chain-not-trusted-error-with-claims-authentication.aspx). Cependant, avant de pouvoir ajouter un nouveau certificat de signature de jetons, vous devez exécuter ces commandes PowerShell sur le serveur ADFS :
    • add-pssnapin Microsoft.adfs.Powershell
    • set-adfsproperties -AutoCertificateRollover $false
  • Si vous ajoutez un certificat de signature de jetons, pensez à en faire le certificat principal s’il était auparavant configuré de la sorte.

En espérant que ces conseils vous seront utiles.

Ce billet de blog a été traduit de l’anglais. Vous trouverez la version originale sur Tips for Upgrading or Moving ADFS 2.0