La KB officielle Parallels (124815) couvre les grandes étapes de la configuration SAML avec Entra ID, mais elle passe sous silence plusieurs points critiques qui font échouer la plupart des déploiements en 2026. Ce guide est le fruit d’une session de configuration complète en lab, logs à l’appui. Il inclut toutes les erreurs rencontrées, leurs causes réelles, et les corrections — y compris un point complètement absent de la documentation officielle Parallels.

Ce guide couvre le mode full SSO : l’authentification SAML est propagée jusqu’à la session RDP, sans que l’utilisateur ait à saisir ses credentials AD. Ce mode requiert une PKI (AD CS) et un Enrollment Server RAS opérationnels.
La KB 124815 vs la réalité terrain en 2026
Avant de commencer, il est utile de faire le point sur ce que la KB officielle dit — et ce qui a changé ou manque.
Ce qui reste valide dans la KB 124815 : la récupération de l’App Federation Metadata URL (section 3 de l’app Entra), l’import des métadonnées dans la RAS Console et la récupération des URLs SP, le renvoi au KB 124813 pour la configuration PKI.
Ce qui ne fonctionne plus : la KB indique de créer l’app via « Create your own application » → « Integrate any other application you don’t find in the gallery ». Cette méthode crée désormais une application en mode OIDC et non SAML. La page Single sign-on affiche « OIDC-based Sign-on » sans option pour passer en SAML.
Ce que la KB ne mentionne pas du tout : le format NameID doit être unspecified et non emailAddress ; le claim http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name est requis pour le matching AD et absent de toute documentation Parallels ; le champ « Override authentication domain » dans le theme RAS est indispensable ; les URLs SP changent d’index après chaque Apply RAS ; un réimport des métadonnées IdP est nécessaire si le certificat Entra a changé.
Prérequis
Infrastructure RAS : Parallels RAS 21.x avec au moins un Connection Broker et un Enrollment Server, AD CS Enterprise CA, templates PrlsEnrollmentAgent et PrlsSmartcardLogon créés et publiés (KB 124813), comptes de service svc_rasenrollment et svc_rasnla, Enrollment Server validé (CA Server, EA Credentials, NLA Credentials tous au vert), FQDN public configuré comme Published Address.
Identité : tenant Microsoft Entra ID, droits Global Admin ou Application Administrator, suffixe UPN correspondant au domaine Entra ajouté dans l’AD on-premises, comptes utilisateurs AD avec UPN correspondant exactement au nom d’utilisateur Entra.
Étape 1 — Créer l’Enterprise Application dans Entra
Ne pas utiliser « Create your own application » — Entra crée désormais l’app en mode OIDC.
La méthode correcte : Enterprise Applications → New application, puis rechercher « Microsoft Entra SAML Toolkit » dans la galerie. Sélectionner cette app template, lui donner un nom parlant (ex : Parallels-RAS), cliquer Create. Cette app est préconfigurée en mode SAML dès la création.
Étape 2 — Récupérer l’URL des métadonnées IdP
Dans les propriétés de l’app → Single sign-on → SAML → section 3 « SAML Certificates », copier l’App Federation Metadata URL :
https://login.microsoftonline.com/<tenantid>/federationmetadata/2007-06/federationmetadata.xml?appid=<appid>
Étape 3 — Déclarer l’IdP dans la RAS Console
RAS Console → Connection → SAML → Tasks → Add. Donner un nom à l’objet IdP, coller l’URL des métadonnées dans Import published IdP metadata, cliquer Next puis Finish. RAS importe automatiquement le certificat de signature Entra, les endpoints SSO et logout.
Sur l’onglet IdP de l’objet créé, cocher Allow unencrypted assertion. Entra n’envoie pas d’assertion chiffrée par défaut — sans cette option, RAS échoue avec l’erreur :
Expected 1 EncryptedAssertion; found 0.
Étape 4 — Récupérer les URLs SP et les reporter dans Entra
Double-cliquer sur l’objet IdP → onglet SP. Vérifier que le champ Host affiche bien le FQDN public du RAS et non le nom interne du broker. Reporter les quatre URLs dans Entra → Basic SAML Configuration → Edit :
| Champ RAS | Champ Entra |
|---|---|
| SP Entity ID | Identifier (Entity ID) |
| Reply URL | Reply URL (Assertion Consumer Service URL) |
| Logon URL | Sign on URL |
| Logout URL | Logout URL |
Supprimer l’entrée par défaut du toolkit dans Identifier et cocher Default sur la nouvelle.
Point de vigilance — changement d’index des URLs : RAS réindexe l’objet IdP à chaque Apply. Par exemple idp_-1 peut devenir idp_2. Si les URLs ont changé après un Apply, les mettre à jour dans Entra avant de tester, sous peine de l’erreur :
AADSTS700016: Application with identifier '...idp_2/metadata.xml' was not found in the directory
Étape 5 — Configurer les Attributes & Claims dans Entra
C’est ici que se cache le point le plus important et le moins documenté.
Format NameID — à changer impérativement
Cliquer sur « Unique User Identifier (Name ID) » et passer le Name identifier format de Email address à Unspecified. Si ce format reste sur emailAddress, RAS échoue à parser l’assertion. Dans les logs broker :
Failed to verify the Assertion Signature.
SAML ID: 2 - Parse Post Assert error
Le claim name — le point non documenté par Parallels
RAS utilise le claim http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name pour identifier l’utilisateur dans l’AD local. Ce claim doit être présent dans l’assertion et contenir l’UPN de l’utilisateur. Le SAML Toolkit Entra l’ajoute par défaut mappé sur user.userprincipalname — vérifier qu’il est bien présent dans la liste des Additional claims.
Sans ce claim, RAS retourne en boucle l’erreur Failed to match AD User (0x00000006) même si le NameID est parfaitement configuré — et aucun log ne l’explique clairement. Ce point est absent de toute KB Parallels à ce jour.
Étape 6 — Réimport des métadonnées IdP si nécessaire
Après toute modification dans l’app Entra, notamment si un nouveau certificat de signature a été généré, le certificat en cache côté RAS peut ne plus correspondre. Symptôme dans les logs broker :
Failed to verify the Response Signature.
Solution : propriétés de l’objet IdP → onglet IdP → réimporter l’URL des métadonnées. Cette opération rafraîchit le certificat Entra côté RAS.
Étape 7 — Configurer le theme RAS
RAS Console → Farm → Site → Themes → propriétés du theme → onglet Access :
- SAML Single Sign-on IdP : sélectionner l’objet IdP créé à l’étape 3
- Override authentication domain : cocher et sélectionner le domaine NetBIOS AD (ex :
MICROSOFTGROUPS)
Ce second point est indispensable. RAS effectue la recherche de l’utilisateur dans l’AD par sAMAccountName et non par UPN complet. Sans le domaine override, RAS tente de trouver [email protected] comme sAMAccountName — ce qui ne correspond à aucun objet. Avec le domaine override configuré, RAS strip le suffixe et cherche uniquement thierry.frache.
Étape 8 — Assigner les utilisateurs dans Entra
App Entra → Users and groups → Add user/group — assigner les utilisateurs ou groupes autorisés. Sans cette assignation, Entra retourne l’erreur AADSTS50105 à l’authentification.
Étape 9 — Vérifier les templates PKI
Si l’Enrollment Server retourne l’erreur 0x8009480b :
Failed to enroll certificate for user [UPN]
One or more signatures did not include the required application or issuance policies.
The request is missing one or more required valid signatures.
Le template PrlsSmartcardLogon n’est pas correctement configuré. Vérifier l’onglet Issuance Requirements : « This number of authorized signatures » = 1, « Policy type required in signature » = Application Policy, « Application policy » = Certificate Request Agent. Se référer au KB 124813 pour la configuration complète.
Récapitulatif des pièges à éviter
| Erreur observée | Cause | Correction |
|---|---|---|
| App créée en mode OIDC | « Create your own app » génère OIDC | Utiliser le SAML Toolkit depuis la galerie |
| AADSTS700016 | URLs SP avec ancien index après Apply | Mettre à jour les URLs dans Entra |
| Unable to parse SAML Assertion | NameID format = emailAddress | Passer à Unspecified |
| Failed to verify Response Signature | Certificat Entra en cache obsolète | Réimporter les métadonnées IdP |
| Failed to match AD User (0x00000006) | Claim name absent ou domaine override manquant | Vérifier le claim + Override authentication domain |
| 0x8009480b | Template PrlsSmartcardLogon mal configuré | Vérifier Issuance Requirements (KB 124813) |
La configuration SAML full SSO entre Parallels RAS et Entra ID est documentée en surface, mais les détails qui font la différence sont éparpillés ou absents. Le point le plus critique — le claim http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name — n’apparaît dans aucune KB Parallels à ce jour.
