Comment ajouter dans les services ADFS 2.0 des revendications supplémentaires qui peuvent être consommées dans SharePoint 2010

Date de publication initiale de l’article : samedi 02 avril 2011

Juste une petite astuce pour vous faire gagner du temps dans le cas où vous décideriez d’ajouter des revendications supplémentaires pour vos utilisateurs dans les services ADFS 2.0 et les consommer dans SharePoint 2010. Le principal élément à noter est que SharePoint prend uniquement en charge SAML 1.x ; le type de revendication doit par conséquent être dans une valeur très spécifique.

 

Dans les services ADFS 2.0, vous pouvez très aisément ajouter des revendications supplémentaires à l’aide du langage de règles personnalisées qu’ils exposent. Pour cela, il vous suffit de cliquer sur votre partie de confiance SharePoint dans les services ADFS et de cliquer ensuite sur le lien Modifier les règles de revendications dans le volet d’action de droite. Lorsque l’éditeur de règles s’affiche, cliquez sur Ajouter une règle, puis sélectionnez Envoyer les revendications à l’aide d’une règle personnalisée dans le menu déroulant. Cliquez sur le bouton Suivant pour continuer, et ensuite vous pouvez entrer un nom de revendication et votre règle de revendication personnalisée à l’aide du langage de règles ADFS (https://technet.microsoft.com/en-us/library/dd807118(WS.10).aspx). Malheureusement, le tout premier exemple de règle citée sur cette page ne fonctionne pas avec SharePoint car le nom n’est pas dans un format pris en charge par WS-Federation.

 

Fort heureusement, Adam Conkle a rédigé un billet de blog sur les formats corrects pour WS-Fed à l’adresse https://social.technet.microsoft.com/wiki/contents/articles/ad-fs-2-0-the-admin-event-log-shows-error-111-with-system-argumentexception-id4216.aspx. Du point de vue de SharePoint, il faut bien comprendre la description qu’il donne des exigences d’affectation de noms pour SAML 1.x :

 

(tiré de son blog – merci Adam)

Les jetons SAML 1.1 adhèrent à des règles strictes qui stipulent que le format doit être 'espace_de_nom'/'nom'. Ces éléments peuvent être construits de nombreuses manières. En voici quelques exemples courants :

  • monOrganisation/monTypeRevendication
  • urn:monOrganisation:revendications/monTypeRevendication
  • https://monOrganisation/revendications/monTypeRevendication

 

Ainsi, vous pouvez par exemple ajouter une revendication personnalisée dans les services ADFS qui sera utilisée dans SharePoint avec une règle ressemblant à ceci :

 

=> issue(Type = "https://www.vbtoys.com/claims/demo", Value = "BlazersPlayoffs2010");

 

Le langage de règle dans les services ADFS est très intéressant et riche en fonctionnalités. Et voilà. Vous connaissez désormais le format que doivent avoir vos types de règles lorsque vous les envoyez vers SharePoint.

Ce billet de blog a été traduit de l’anglais. L’article d’origine se trouve à l’adresse How To Add Additional Claims in ADFS 2.0 that can be Consumed in SharePoint 2010