Développeurs · Sign-On
Cette documentation reprend les informations nécessaires pour permettre à vos utilisateurs de se connecter au backoffice de la plate-forme Agendize avec les identifiants et mots de passe de votre propre référentiel Microsoft
Active Directory Federation Services.
Contactez-nous si vous souhaitez configurer SAML avec Agendize pour votre entreprise.
Principe de fonctionnement
Voici un diagramme reprenant les étapes d’une connexion :
- L’utilisateur se connecte au backoffice Agendize
- Le navigateur web de l’utilisateur reçoit une redirection vers votre serveur d’authentification
- L’utilisateur fournit son identification pour authentification sur votre serveur
- Votre serveur génère une réponse à l’authentification (incluant les groupes/rôles de l’utilisateur)
- Le navigateur web de l’utilisateur relaye la réponse à Agendize
- Le backoffice Agendize retourne le contexte d’accès au navigateur web de l’utilisateur

Éléments nécessaires à l’intégration SSO
1. Collecter vos données IDP (ID Provider) sur Microsoft ADFS
Spécification de vos paramètres
Les informations suivantes doivent nous être transmises :
- entity-id: service provider choisi sur votre ADFS pour le service SSO Agendize
- Exemple : https://XXXXXXXXX.XXX/adfs/ls/
- sso-binding
- Exemple : urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
- sso-url
- Example : https://XXXXXXXXX.XXX/adfs/ls/
- authn-context: mode d’authentification au niveau de vos utilisateurs (voir https://msdn.microsoft.com/en-us/library/hh599318.aspx)
- Exemple : urn:federation:authentication:windows
- x509cert: fingerprint de votre certificat de signature de jeton SSO
- voir AD FS 2.0 Management > Service > Certificates > Token-Signing
Conversion du certificat Token-Signing au format PEM
Le certificat de votre service SSO doit être converti au format PEM :
openssl x509 -inform DER -in certificate.cer -out certificate.pem -text2. Déclarer l’authentification SAML2 sur votre serveur Active Directory
Nous vous fournissons un fichier de métadonnées de ce type, à déclarer sur votre serveur Microsoft ADFS :
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" cacheDuration="PT604800S" entityID="saml:agendize" ID="SP_a1107b59-5553-4028-82f3-b1c57356de4c"><md:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"><md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://app.agendize.com/sso-login?method=logout&provider=SAMLYOURCOMPANY"/><md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat><md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://app.agendize.com/sso-login?method=login&provider=SAMLYOURCOMPANY" index="1"/></md:SPSSODescriptor> </md:EntityDescriptor>https://app.agendize.com/apps.YOURCOMPANY/callback.jsp
3. Correspondance entre les données de votre référentiel et SAML2
Propriétés des utilisateurs
Voici les informations attendues dans la réponse fournie par votre serveur ADFS à l’occasion de l’authentification d’un de vos utilisateurs :
- firstname
- lastname
- Exemple de correspondance : http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
- email (obligatoire)
- Exemple de correspondance : http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
- groups
- Exemple de correspondance : http://schemas.xmlsoap.org/claims/Group
La correspondance de ces informations avec votre propre schéma de données doit au besoin être ajustée au niveau de votre ADFS (voir https://docs.microsoft.com/fr-fr/azure/active-directory/develop/active-directory-saml-claims-customization).
Association de vos utilisateurs à des rôles du backoffice Agendize
Voici les identifiants de groupes que vous pouvez assigner à vos utilisateurs pour leur associer des droits spécifiques sur la plate-forme Agendize :
| ID group | Description |
| ACCOUNT_ADMINISTRATOR | Administrateur du compte |
| ACCOUNT_ANALYTICS | Gestion des statistiques du compte |
| ACCOUNT_BILLING | Gestion de la facturation du compte |
| ACCOUNT_BUTTONS | Gestion des boutons du comptes |
| ACCOUNT_SCHEDULING_ADMINISTRATOR | Administration de la prise de rendez-vous |
| ACCOUNT_SCHEDULING_READER | Visualisation du calendrier de rendez-vous |
| ACCOUNT_SCHEDULING_SCHEDULDER | Planificateur de la prise de rendez-vous |
| CALLS | Gestion des appels téléphoniques |
| CRM | Gestion de la base de contacts (Customer Relationship Management) |
| EMAILS | Gestion de l'email marketing |
| FORMS | Gestion des formulaires |
| QUEUE | Gestion de la file d'attente |
| ACCOUNT_CONFERENCES_ADMINISTRATOR | Administration des événements |
| ACCOUNT_CONFERENCES_READER | Visualisation des sessions d'événements |
| ACCOUNT_CONFERENCES_SCHEDULDER | Planificateur de sessions d'événement |