Shibboleth, ADFS, Keycloak, Okta… : vos utilisateurs entrent dans SpotBooker avec les identifiants de leur établissement.
Votre établissement n'utilise pas Microsoft Entra ID ? Il dispose presque toujours d'un fournisseur d'identité SAML 2.0 : Shibboleth dans les établissements de la fédération RENATER, ADFS, Keycloak, Okta… Une fois relié à SpotBooker, chacun se connecte avec ses identifiants habituels, sans mot de passe de plus. La connexion SAML est incluse dans l'abonnement et disponible pendant l'essai gratuit. Seuls les administrateurs de votre espace la configurent, le plus souvent avec le service informatique.
Votre fournisseur d'identité ne connecte qu'un service qu'il connaît. L'encart « À déclarer dans votre fournisseur d'identité » affiche l'identifiant de votre espace (entity ID, qui est aussi l'adresse du fichier de métadonnées) et l'URL de retour. Transmettez le fichier de métadonnées : il contient tout, certificat compris. Ces adresses ne changent pas, même si vous modifiez l'adresse publique de votre espace.
Le plus simple : collez ses métadonnées XML, celles de votre seul fournisseur d'identité et non le fichier de toute la fédération. SpotBooker en tire son identifiant, son URL de connexion et son certificat de signature. Sinon, renseignez ces trois champs à la main ; l'URL de connexion doit commencer par https://. Pendant un renouvellement de certificat, collez les deux certificats l'un après l'autre : la date d'expiration de chacun s'affiche.
SpotBooker a besoin de l'adresse e-mail et d'un identifiant qui ne change pas d'une connexion à l'autre ; prénom, nom et groupes sont facultatifs. Les noms usuels sont reconnus d'office : eduPersonPrincipalName pour l'identifiant (à défaut, un NameID persistant), mail, givenName, sn et isMemberOf, ainsi que leurs équivalents ADFS. Ne remplissez la correspondance des attributs que si votre fournisseur d'identité en emploie d'autres. Côté établissement, il faut autoriser l'envoi de ces attributs à SpotBooker.
Séparez-les par des virgules, par exemple institut.fr, cnrs.fr. Ils ont trois effets : seules ces adresses peuvent se connecter ; vos utilisateurs retrouvent votre établissement en tapant leur adresse sur la page de connexion ; et un compte SpotBooker qui existe déjà à l'une de ces adresses est relié à l'annuaire au lieu d'être refusé. Sans domaine, toute adresse authentifiée par votre fournisseur d'identité est acceptée, mais les deux derniers effets disparaissent. La découverte depuis la page de connexion, le rattachement des comptes existants et l'admission automatique n'interviennent qu'une fois le domaine prouvé (voir « Prouver vos domaines » plus bas).
Avec l'admission automatique, toute personne de l'annuaire entre dès sa première connexion, sans aucun droit d'administration. Désactivez-la si votre annuaire compte aussi des étudiants ou des invités qui ne doivent pas réserver : chaque première connexion dépose alors une demande d'accès, que vous acceptez ou refusez. Ces réglages sont propres à SAML : la connexion Microsoft garde les siens.
Faites correspondre une valeur de groupe envoyée par l'annuaire (par exemple une entrée de isMemberOf) à un groupe SpotBooker créé au préalable. À chaque connexion, l'utilisateur rejoint les groupes correspondants et quitte ceux dont il ne fait plus partie. Les groupes que vous gérez à la main dans SpotBooker ne sont jamais modifiés.
Activez la connexion, puis enregistrez. L'activation est refusée tant que l'identifiant, l'URL de connexion et le certificat ne sont pas renseignés. Faites un premier essai avec un compte de l'annuaire, dans une fenêtre de navigation privée.
Sur la page de connexion, ils choisissent « Connexion avec votre établissement », tapent leur adresse (ou seulement le domaine) et arrivent sur la page de connexion de votre établissement. Vous pouvez aussi leur donner le lien de connexion direct affiché dans les réglages, par exemple sur votre intranet.
Un domaine que vous déclarez filtre les adresses dès l'enregistrement. Pour qu'il retrouve aussi votre établissement depuis la page de connexion, atteste les adresses et admette automatiquement, il faut prouver qu'il vous appartient. Sans cette preuve, n'importe quel espace pourrait revendiquer votre domaine. La preuve vaut pour le domaine exact : institut.fr ne couvre pas labo.institut.fr, qui se déclare et se prouve à part.
Sous le champ des domaines, chaque domaine enregistré affiche son enregistrement : type TXT, valeur spotbooker-verification=….
Votre service informatique l'ajoute sur le domaine lui-même (par exemple institut.fr) ou, s'il préfère, sur _spotbooker.institut.fr. Il peut rester en place : SpotBooker le revérifie chaque jour.
Cliquez sur « Vérifier maintenant ». Sinon, SpotBooker le cherche seul toutes les 15 minutes pendant 14 jours. Un domaine est vérifié par un seul espace : s'il l'est déjà ailleurs, contactez le support. Si l'enregistrement disparaît 7 jours de suite, la vérification est retirée et vos administrateurs sont prévenus par e-mail.
Facultatif : le champ « URL de déconnexion (SLO, liaison Redirect) » attend une adresse en https://, et se remplit tout seul si les métadonnées collées en contiennent une. De son côté, SpotBooker publie son « URL de déconnexion (Single Logout Service) » dans ses métadonnées : si votre établissement les a déclarées avant, demandez-lui de les recharger. Sans URL de déconnexion, se déconnecter ne ferme que la session SpotBooker.
La session SpotBooker est fermée d'abord, puis une demande signée part vers votre fournisseur d'identité. S'il ne confirme pas, la personne reste déconnectée de SpotBooker et voit « Vous êtes déconnecté de SpotBooker, mais votre établissement n'a pas confirmé la fin de votre session chez lui. Fermez votre navigateur pour la terminer. »
Quand votre fournisseur d'identité envoie une demande de déconnexion signée, SpotBooker ferme toutes les sessions de la personne, sur tous ses appareils, et lui affiche « Vous avez été déconnecté par votre établissement ». Comme pour la connexion, une demande non signée, signée en SHA-1, trop ancienne ou déjà reçue est refusée.
| Refusé | Pourquoi |
|---|---|
| Une réponse sans signature | C'est la signature de votre fournisseur d'identité qui prouve que la réponse vient de lui. Elle peut porter sur la réponse ou sur l'assertion : Shibboleth signe la réponse par défaut, il n'y a rien à changer. |
| Une signature en SHA-1 | Cet algorithme n'offre plus de garantie suffisante, en signature comme en empreinte. Réglez votre fournisseur d'identité sur SHA-256. |
| Une connexion lancée depuis le portail de l'établissement | SpotBooker n'accepte qu'une réponse à une demande qu'il vient d'émettre, utilisable une seule fois et pendant 10 minutes : une réponse interceptée ne peut pas resservir. La connexion doit donc partir de SpotBooker. Pour une tuile de portail, utilisez le lien de connexion direct. |
| Un identifiant transitoire seul | Un NameID transitoire change à chaque connexion : SpotBooker ne reconnaîtrait pas la personne la fois suivante. Envoyez eduPersonPrincipalName ou un NameID persistant. |
| Une adresse hors de vos domaines | Si vous avez déclaré des domaines, les autres adresses n'entrent pas, même authentifiées par votre fournisseur d'identité. |
| Ce que vous voyez | Que faire |
|---|---|
| « Aucune connexion d'établissement ne correspond à cette adresse » | Le domaine tapé ne figure pas dans vos domaines d'adresse acceptés, ou la connexion SAML n'est pas activée. Ajoutez le domaine et vérifiez l'activation. |
| « La connexion par votre établissement n'est pas disponible » | La connexion est désactivée ou incomplète, ou l'essai gratuit s'est terminé sans abonnement. Vos réglages sont conservés : ils s'appliquent de nouveau dès l'abonnement. |
| « La connexion par votre établissement a échoué » | Votre fournisseur d'identité a répondu, mais la réponse a été refusée. Causes fréquentes : certificat renouvelé chez l'établissement mais pas dans SpotBooker (vérifiez sa date d'expiration), signature en SHA-1, adresse e-mail non transmise, connexion restée en suspens plus de 10 minutes. Le détail n'est pas affiché, par sécurité : écrivez-nous en indiquant l'heure de l'essai, nous le retrouvons. |
| Votre fournisseur d'identité affiche une erreur avant de revenir | Il ne connaît pas encore SpotBooker, ou pas sous cet identifiant. Faites déclarer les métadonnées de l'étape 1 dans votre fournisseur d'identité. |
| « Votre compte n'est pas autorisé à accéder à cet espace » | L'adresse n'appartient pas à vos domaines, elle est déjà utilisée dans un autre espace SpotBooker, ou la demande d'accès de cette personne a été refusée. Une personne refusée n'entre pas en se reconnectant. |
| « Un compte existe déjà avec cette adresse… » | Un compte SpotBooker existe déjà à cette adresse, et il n'est relié à l'annuaire que si son domaine figure dans vos domaines acceptés. Ajoutez le domaine, ou la personne se connecte avec son mot de passe. |
| « Votre demande d'accès a été transmise… » ou « Votre compte a été désactivé… » | Le premier message est normal sans admission automatique : acceptez la demande. Le second signifie que la personne a quitté l'annuaire : voir Synchroniser les utilisateurs avec SCIM. |