SAML : correspondance des champs et droits des administrateurs
Après la connexion technique SAML, le mappage des champs et les options de droits déterminent l’identité edoobox et les droits utilisés. Commencez avec un accès de test et vérifiez chaque cas de rôle prévu.
Ouvrir et enregistrer le mappage
- Ouvrez Paramètres → SAML (SSO) et choisissez le fournisseur.
- Accédez à Mappage des champs de données. Le tableau affiche le libellé, la description, le champ edoobox et l’attribut reçu.
- Cliquez sur Modifier. L’éditeur JSON ouvre l’affectation actuelle complète.
- Adaptez les noms d’attributs aux noms réellement fournis par le fournisseur d’identité.
- Enregistrez un JSON valide avec Enregistrer dans l’onglet de mappage. Le bouton de configuration générale correspond à une étape d’enregistrement distincte.
Harmoniser les champs standard
| Champ edoobox | Google / SAML générique | Revendication Microsoft |
|---|---|---|
email | email | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
first_name | givenName | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname |
last_name | sn | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname |
acl | edoobox.acl lorsque la reprise des droits d’administrateur est activée | |
Comparez les noms exacts. Un nom d’affichage tel que « E-mail » dans le portail du fournisseur n’est pas automatiquement le même nom d’attribut que email. Le prénom, le nom et l’e-mail doivent être correctement mappés. N’utilisez chacun de ces champs standard edoobox qu’une seule fois.
Distinguer NameID des champs de données
La NameID est l’identifiant permanent de l’identité SAML. Edoobox utilise le fournisseur et la NameID pour retrouver une connexion SAML existante. Le champ e-mail mappé sert également au rapprochement des données ou au premier lien.
Sous Configuration → Format NameID, choisissez Email Address, Persistent ou Unspecified. Le format convenu et la valeur proviennent du fournisseur d’identité. Ne modifiez l’identifiant d’un fournisseur déjà utilisé qu’après un test contrôlé ; un autre identifiant peut changer l’affectation existante.
La NameID transmise doit comporter au moins cinq caractères. Utilisez un identifiant permanent ; un court numéro interne tel que « 123 » est rejeté même si le reste du mappage est correct.
Relier des administrateurs existants
Activez Relier les administrateurs à SAML pour connecter les administrateurs actifs existants à partir de la même adresse e-mail. Sans ce lien, une nouvelle identité d’administrateur doit être autorisée par la reprise ACL activée. Un utilisateur IdP inconnu n’obtient pas un accès administrateur par sa seule adresse e-mail.
Si vous souhaitez gérer les droits dans edoobox, laissez la reprise ACL désactivée et utilisez des administrateurs autorisés existants. Après la connexion, contrôlez le profil de droits réellement présent.
Reprendre les droits d’administrateur depuis SAML
L’option Gestion des droits via edoobox active l’évaluation de l’attribut SAML mappé sur acl. Enregistrez l’attribut dans le mappage et demandez au fournisseur d’identité d’envoyer les valeurs prévues :
| Valeur | Résultat |
|---|---|
edoobox.acl.0 ou edoobox.acl.1 | Aucun accès administrateur autorisé. |
edoobox.acl.2 | Droits de responsable. |
edoobox.acl.3 | Droits d’administration. |
edoobox.acl.4 | Droits de superadministrateur. |
Si plusieurs niveaux sont transmis, le plus élevé est retenu. Vérifiez particulièrement les personnes appartenant à plusieurs groupes. Des valeurs ACL manquantes ou inappropriées constituent une erreur de configuration ; ne supposez pas que le droit de remplacement choisi compense une autorisation manquante.
Exemple : l’administration des cours fournit uniquement edoobox.acl.3. Le petit groupe de responsables du compte fournit edoobox.acl.4. Testez les deux rôles et une personne non autorisée avant de donner accès à d’autres personnes.
Affecter des champs supplémentaires de participants
Outre les champs standard, des champs de données supplémentaires des participants, de data_1 à data_30, peuvent être renseignés depuis SAML. Déterminez au préalable dans vos champs de données de participants quel champ correspond au contenu souhaité. Ces champs supplémentaires n’agissent que sur les participants.
L’exemple complet suivant utilise des noms d’attributs génériques et ajoute le numéro de personnel dans le champ supplémentaire 5. Remplacez les noms d’attributs et le numéro de champ par votre configuration réelle :
[
{"name":"E-mail", "description":"E-mail professionnel", "attr":"email", "field":"email", "only_user":false},
{"name":"Prénom", "description":"Prénom", "attr":"givenName", "field":"first_name", "only_user":false},
{"name":"Nom", "description":"Nom", "attr":"sn", "field":"last_name", "only_user":false},
{"name":"Numéro de personnel", "description":"Champ de participant supplémentaire 5", "attr":"employeeNumber", "field":"data_5", "only_user":true}
]Pour l’ACL des administrateurs, ajoutez sur un fournisseur prévu à cet effet une ligne avec "attr":"edoobox.acl" et "field":"acl". N’activez la reprise des droits qu’une fois que le fournisseur transmet réellement l’attribut.
Lors des connexions ultérieures des participants, les valeurs d’attribut présentes et non vides mettent à jour les données associées. Les valeurs manquantes ou vides ne remplacent pas systématiquement les données existantes des participants par du contenu vide. Pour les nouveaux participants, les valeurs mappées nécessaires doivent être présentes.
Valider les champs supplémentaires avec un profil de test
Une connexion réussie confirme d’abord l’accès. Vérifiez également dans le profil du participant et la configuration des champs de données que chaque champ supplémentaire nécessaire a été correctement reçu. Le libellé visible « Numéro de personnel » n’est pas un nom de champ technique SAML : le nom exact de l’attribut du fournisseur d’identité et l’emplacement de champ edoobox approprié, par exemple data_5, sont déterminants.
- Pour chaque champ, notez l’objectif, l’emplacement et le type de données edoobox, ainsi que le nom exact de l’attribut IdP. Convenez d’un format de valeur univoque ; pour les identifiants avec des zéros initiaux, utilisez un champ textuel adapté. Un champ de date ou de sélection nécessite des valeurs correspondant à sa configuration.
- Ajoutez l’affectation au mappage complet et enregistrez. Pour une valeur scalaire du profil, utilisez exactement une valeur d’attribut prévue. Pour un attribut SAML multivalué, le rapprochement du participant reprend la première valeur, et non une liste assemblée.
- Connectez une nouvelle personne de test, puis ouvrez son profil. Comparez l’e-mail, le prénom, le nom et tous les champs supplémentaires aux valeurs attendues.
- Modifiez une valeur chez le fournisseur d’identité et reconnectez la même personne. Contrôlez que le même enregistrement est mis à jour et que la nouvelle valeur figure dans le bon champ.
| Cas de contrôle | Résultat attendu et conséquence |
|---|---|
| Nouvelle personne, tous les attributs mappés sont renseignés | Le profil est créé ; contrôlez chaque champ et sa présentation dans le profil. |
| Nouvelle personne, un attribut supplémentaire mappé manque ou est vide | Le nouvel accès participant peut échouer. Cette exigence s’applique même si le champ est facultatif dans le formulaire de réservation ordinaire. Ne mappez donc que les champs que le fournisseur transmet de manière fiable pour les nouvelles personnes. |
| Personne existante, nouvelle valeur non vide | La valeur de profil associée est mise à jour à la prochaine connexion. Une modification manuelle antérieure peut également être écrasée. |
| Personne existante, attribut manquant ou vide | La valeur existante est conservée. Un attribut IdP vide n’est pas une instruction de suppression fiable. |
| L’attribut contient plusieurs valeurs | Vérifiez l’ordre chez le fournisseur ; seule la première valeur est reprise dans le champ du participant. |
En cas d’erreur, vérifiez d’abord l’emplacement du champ, l’écriture de l’attribut et la valeur fournie. Corrigez ensuite l’affectation ou la sortie IdP et répétez le même cas. Le mappage des champs des participants n’accorde aucun droit d’administrateur et ne remplace pas les tags du fournisseur ou les filtres d’offres.
Recherche d’erreurs
- Enregistrement impossible : vérifiez la syntaxe JSON, la structure complète et les affectations en double des champs standard.
- Une nouvelle personne ne peut pas se connecter : vérifiez le périmètre de connexion, la NameID, les attributs obligatoires et, pour les administrateurs, le lien autorisé ou l’ACL valide.
- Les données existantes du participant semblent inchangées : vérifiez que l’attribut est transmis et non vide, et que vous avez choisi le bon champ de données supplémentaire.
- Droit d’administrateur trop élevé : vérifiez toutes les valeurs ACL fournies ; un second rôle supérieur peut prendre le pas sur le rôle inférieur attendu.