Les données que demande votre fournisseur d'identité
Quels champs remplissez-vous dans une configuration OIDC ?
La configuration OIDC se rattache à une connexion avec le champ IdP Connection. La première donnée est Issuer URL, que l'aide du champ décrit comme l'URL de l'émetteur OIDC, avec l'exemple https://login.microsoftonline.com/<tenant>/v2.0. Viennent ensuite Client ID et Client Secret (encrypted), le secret client OAuth2. La fiche se poursuit avec Authorization Endpoint, Token Endpoint, JWKS URI et End Session Endpoint. Dans Scopes, vous saisissez la liste des scopes OIDC à demander, séparés par des espaces. Selon l'aide de chaque champ, Client Secret (encrypted), Refresh Token (encrypted) et Access Token (encrypted) sont stockés chiffrés au repos. À côté du jeton d'accès en cours se trouve Access Token Expiry, et la même configuration contient Discovery Document Last Fetched. Quand vous vérifiez la connexion, regardez ces deux dates.
Et si votre fournisseur travaille avec SAML ?
La configuration SAML a elle aussi son champ IdP Connection. Côté fournisseur, vous remplissez IdP Entity ID (l'Entity ID SAML du fournisseur d'identité) et IdP SSO URL (l'URL avec binding HTTP-Redirect pour l'AuthnRequest). IdP SLO URL est l'URL du service de Single Logout ; l'aide du champ l'indique comme facultative sauf si le Single Logout est activé. Dans IdP Signing Certificate (PEM), vous collez le certificat X.509 au format PEM avec lequel le module vérifie les réponses SAML du fournisseur. IdP Encryption Certificate (PEM) est facultatif et sert pour les assertions SAML chiffrées. IdP Metadata URL est l'URL depuis laquelle les métadonnées SAML du fournisseur sont téléchargées périodiquement et mises en cache ; le dernier XML de métadonnées téléchargé avec succès est conservé dans Cached Metadata XML. La configuration comporte aussi SP Entity ID, SP ACS URL et la liste déroulante NameID Format.
Ce que reçoit chaque utilisateur depuis le fournisseur
Comment faire passer un attribut du fournisseur vers un champ de l'utilisateur Odoo ?
Avec les lignes de Claim Mappings de la configuration OIDC. Chaque ligne comporte IdP Attribute / Claim Name, avec le nom de l'attribut ou du claim chez le fournisseur, et Odoo User Field, une liste déroulante avec le champ de l'utilisateur Odoo vers lequel il va. Les lignes portent aussi les champs SAML Configuration et OIDC Configuration, ainsi qu'un Sequence : les séquences les plus basses sont appliquées en premier. Numérotez les lignes en pensant à celle que vous voulez voir appliquée d'abord.
Comment attribuer des groupes Odoo selon le fournisseur ?
Avec les lignes de Group Mappings. Chaque ligne relie un IdP Group Value à un Odoo Group et comporte la liste déroulante Mapping Mode. Comme pour les claims, chaque ligne a ses champs SAML Configuration et OIDC Configuration. Choisissez le Mapping Mode directement dans le formulaire en créant chaque ligne. Si un avertissement apparaît lors du test d'accès, vous trouverez dans les messages d'erreur et avertissements du module les textes littéraux et la marche à suivre pour chacun.
Que vérifier la première semaine
Où voyez-vous toutes les connexions d'un coup d'œil ?
Dans la liste IdP Connections. Chaque ligne montre une connexion avec son protocole (SAML ou OIDC), si elle est active, le provisionnement JIT et SCIM et le mode de secours. En haut, vous avez le bouton pour en créer une nouvelle et la barre de recherche. Parcourez-la pour confirmer que les connexions actives sont celles que vous voulez utiliser.

Comment vérifiez-vous qui est entré et par quelle connexion ?
Dans Paramètres se trouve la liste des sessions actives. Chaque ligne montre le début, l'utilisateur, la connexion IdP, la méthode d'authentification, l'IP et la dernière activité, avec le bouton Terminate. Les premiers jours, comparez la connexion IdP et la méthode d'authentification de chaque session avec ce que vous attendez pour cet utilisateur.

Où vérifiez-vous les politiques MFA ?
Dans le rapport MFA Coverage Report, dans Paramètres. Il liste les politiques MFA avec leur société, les types de facteur acceptés, la période de grâce et l'état actif. Vérifiez que chaque politique est active et a la période de grâce que vous avez décidée. Ce parcours montre les trois écrans à ouvrir la première semaine :

Qu'est-ce que l'assistant Rotate SP Certificate ?
C'est une boîte de dialogue avec les champs SAML Configuration (une liste déroulante), New SP Certificate (PEM), New SP Private Key (PEM) et Effective Rotation Date, et les boutons Save et Discard. Si vous travaillez avec SAML, gardez-le à portée de main : vous y choisissez la configuration SAML, collez le nouveau certificat et la nouvelle clé privée du SP au format PEM et fixez la date de rotation effective.

Que payez-vous pour le module et pour le service ?
Sur Odoo Apps, le module coûte 9 € HT, paiement unique par version, pour Odoo 17, 18, 19 et 20, et dans les quatre versions le manifeste indique : « Some features use a paid external service: FlexigoTech Cloud subscription (from 29 EUR/month, VAT excl.) ». Ce service est facultatif et le plan local coûte 29 €/mois ou 290 €/an HT (Pro : 58 €/mois ou 580 €/an) ; sans abonnement, ou avec le service suspendu, ce que fournit l'abonnement s'arrête et les données restent dans votre Odoo. Avec l'abonnement, le module pour les nouvelles versions d'Odoo est inclus si vous l'avez acheté sur flexigotech.com ; sur l'Odoo App Store, chaque version s'y achète séparément.
Comment FlexigoTech vous aide
Si vous préférez ne pas faire la mise en service seul, chez FlexigoTech nous implantons Odoo 17, 18, 19 et 20 et développons des connecteurs et des intégrations sur mesure. Si vous voulez d'abord comprendre ce que le module ajoute en interne, lisez comment fonctionne Two-Factor Authentication & SSO for Odoo. Sur la page du module, vous trouverez l'achat et le détail du service.
À lire aussi
Vérifié dans le code du module (version 20.0) et dans les sources citées
Sources
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_idp_attribute_mapping.py
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_idp_group_mapping.py
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_oidc_config.py
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_saml_config.py
- apps.odoo.com/apps/modules/20.0/flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun
- apps.odoo.com/apps/modules/17.0/flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun
- apps.odoo.com/apps/modules/18.0/flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun
- apps.odoo.com/apps/modules/19.0/flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
