Introduction
Cet article vient compléter une série d’articles sur le SSO dans SharePoint avec AD FS (que je vous conseille de lire pour mieux comprendre celui-ci) suite à une demande de certains lecteurs.
La demande de leur part était la suivante, quelle est la marche à suivre pour ajouter une web app à notre SSO avec AD FS ? Dans la série évoquée j’avais indiqué que je rédigerai peut être cet article, chose promise chose due.
Petit récapitulatif : A ce stade vous avez normalement une installation AD FS fonctionnelle et une web app SharePoint qui utilise ce fournisseur d’authentification pour authentifier les utilisateurs. Vous avez compris les concepts d’identification, d’authentification, de fédération d’identité, de chaine de certificats, de secure token service et de SPTrustedIdentityTokenIssuer.
Vous avez aussi déjà créé la web app que vous voulez ajouter à votre SSO avec un binding en HTTPS et le certificat valide est installé sur IIS. (pour le moment elle a une zone d’authentification en claims NTLM)
La procédure que nous allons donc dérouler ici consiste principalement à ajouter un RP-STS (application qui consomme des identités) côté AD FS et ajouter des domaines d’authentification sur notre SPTrustedIdentityTokenIssuer, enfin nous terminerons par une rapide configuration de la web app.
Etape 1 ajout du RP-STS dans AD FS
Première partie, ouvrez la console AD FS et ajoutez une relation de confiance à un tiers de cette manière
Une fenêtre apparait, cliquez sur « Suivant » pour passer le message de bienvenue.
Sélectionnez « entrer les données manuellement » et cliquez sur « Suivant »
Entrez un nom pour cette nouvelle relation (et des notes au besoin) et cliquez sur « Suivant »
Sélectionnez la version 2 et cliquez sur « Suivant »
Si vous utilisez un certificat pour chiffrer les jetons au sein des communications (en plus des communications qui sont déjà chiffrées pour rappel) sélectionnez-le, cliquez sur « Suivant ».
Cochez la première case (WS-Passive) et entrez l’url complète de votre Web App SharePoint suivie de /_trust/, cliquez sur « Suivant »
Entrez le domaine de la relation (pour rappel il s’agit d’une clef de la forme foo:bar:foo connue du RP-STS et de l’IP-STS qui permet d’identifier les requêtes d’authentification et les jetons délivrés), cliquez sur « Ajouter » puis sur « Suivant ».
Cochez la politique d’autorisation d’accès par défaut à appliquer à votre RP-STS (pour ma part permit all) et cliquez sur « Suivant ».
Contrôlez le récapitulatif de votre configuration puis cliquez sur « Suivant » et « Fermer »
Une nouvelle ligne apparait alors dans la liste des relations et une nouvelle fenêtre s’ouvre.
Cliquez sur « Ajouter une règle ».
Paramétrez la règle de transmission des revendications au jeton telle que vous l’avez paramétrée pour les autres applications.
Cliquez sur « OK »
Maintenant que notre RP-STS supplémentaire est configuré côté AD FS, c’est-à-dire que l’on a indiqué à AD FS que l’on pouvait délivrer des jetons SAML d’authentification à une nouvelle application, nous allons indiquer à SharePoint qu’il peut utiliser notre service de SSO pour une Web Application supplémentaire.
Etape 2 Configuration du SPTrutedIdentityTokenIssuer
Nous allons dans un premier temps indiquer à notre SPTrutedIdentityTokenIssuer, qu’une autre de nos Web Applications va l’utiliser pour gérer l’authentification. Cet objet c’est l’objet côté SharePoint qui représente notre IP-STS ainsi que la configuration pour communiquer avec et permet à nos Web Applications (RP-STS du point de vue d’AD FS) de l’utiliser.
$sptiti = Get-SPTrustedIdentityTokenIssuer | where{$_.Name –eq “nomduIssuerr”}
$sptiti.ProviderRealms.Add(“https://www.toto.net/","urn:claims:totonet")
$sptiti.Update()
Spécifiez le nom de votre SPTrutedIdentityTokenIssuer à la place de » nomduIssuerr » ainsi que l’url de votre web app et le domaine entré précédemment dans la configuration du RP-STS.
Etape 3 : modification du provider d’authentification de la web app
Cette étape va consister à indiquer à la web app qu’elle peut se servir de notre configuration d’IP-STS côté SharePoint pour procéder à ses authentifications. Pour cela rendez-vous dans la centrale d’admin et cliquez sur « Gérer les applications Web », sélectionnez votre Web App et cliquez sur « Fournisseurs d’authentification » dans le ruban. Cliquez sur la zone d’authentification sur laquelle vous voulez mettre en place le SSO et descendez au niveau des types d’authentifications par revendication.
A ce niveau décochez l’authentification Windows et cochez votre fournisseur d’identité, cliquez sur « Sauvegarder »
Etape 4 : autorisation des utilisateurs
Ajoutez ensuite « all authenticated users »ou les utilisateurs souhaités via le menu user policy dans la gestion des applications web ou via la gestion des groupes sur le site et vous pouvez maintenant utiliser votre SSO !
Note : le correctif cumulatif de Juin 2011 (et ultérieurs) corrige un problème d’affichage des claims providers dans le people picker
Votre People Picker devrait ressembler à ça