Comment lire les messages du module
Plusieurs messages contiennent un emplacement {} ou %s où le module insère une donnée précise : le nom de la connexion, le domaine, une URL ou la raison de l'échec. C'est cette donnée qu'il faut lire en premier, car c'est elle qui distingue un cas d'un autre.
Si vous êtes encore en train de configurer le module, le guide de mise en route passe en revue les paramètres ; ici, on avance message par message.
Passkeys FIDO2 : enregistrement et authentification
| Message | Quand il apparaît | Que faire |
|---|---|---|
Passkeys (FIDO2) need Odoo 18 or later: on this Odoo use "TOTP Only" or "Either". | Quand vous demandez des passkeys sur un Odoo antérieur à la 18 | Choisissez TOTP Only ou Either, comme l'indique le message |
A user can have at most 5 active FIDO2 credentials (FR-044). Please revoke an existing credential before registering a new one. | À l'enregistrement d'un nouvel identifiant alors que 5 sont déjà actifs | Révoquez un identifiant existant, puis enregistrez le nouveau |
py_webauthn is not installed. FIDO2 registration is unavailable. | En essayant d'enregistrer FIDO2 sans py_webauthn | Signalez l'absence de py_webauthn à la personne qui administre votre serveur Odoo |
py_webauthn is not installed. | Version courte du même avertissement, à plusieurs étapes du flux FIDO2 | Comme pour la ligne précédente |
Failed to generate FIDO2 registration options: {} | Lors de la préparation de l'enregistrement d'un identifiant | Lisez la raison indiquée après les deux-points |
FIDO2 registration verification failed: {} | Lors de la vérification de l'enregistrement | Lisez la raison et recommencez l'enregistrement |
Failed to generate FIDO2 authentication options: {} | Lors de la préparation de l'authentification FIDO2 | Lisez la raison qui accompagne le message |
FIDO2 credential not found for this user. | Le module ne trouve pas l'identifiant de cet utilisateur | Vérifiez que l'identifiant appartient bien à cet utilisateur |
FIDO2 credential was registered for domain "{}" but current domain is "{}". Credential is invalid for this domain (FR-043). | Le domaine actuel n'est pas celui de l'enregistrement | Connectez-vous par le domaine indiqué dans le message |
FIDO2 authentication verification failed: {} | Lors de la vérification de l'authentification | Lisez la raison ajoutée par le message |
Odoo 17 ne propose pas de passkeys : le message lui-même précise qu'elles nécessitent Odoo 18 ou une version ultérieure et vous renvoie vers TOTP Only ou Either.
Connexions OIDC : document de découverte et ID token
| Message | Quand il apparaît | Que faire |
|---|---|---|
The connection "%s" already has its OIDC settings: edit them instead of adding others. | En ajoutant une autre configuration OIDC à une connexion qui en a déjà une | Modifiez la configuration existante |
Issuer URL is required to fetch the discovery document. | En demandant le document de découverte sans Issuer URL | Renseignez l'Issuer URL |
Failed to fetch OIDC discovery document from {}: {} | Le document n'a pas pu être récupéré depuis cette URL | Vérifiez l'URL et la raison affichée dans le message |
JWKS URI is not configured. Fetch the discovery document first. | La JWKS URI manque | Récupérez d'abord le document de découverte |
ID token validation failed: malformed token ({}). | L'ID token est mal formé | Lisez le détail entre parenthèses |
ID token validation failed: algorithm {!r} is not accepted. | L'algorithme du token n'est pas accepté | Vérifiez l'algorithme cité avec la personne qui gère l'IdP |
ID token validation failed: JWKS not readable ({}). | Les clés JWKS sont illisibles | Lisez le détail entre parenthèses |
ID token validation failed: invalid signature. | La signature du token n'est pas valide | Voyez-le avec la personne qui gère l'IdP |
ID token validation failed: missing claims. | Des claims manquent dans le token | Voyez-le avec la personne qui gère l'IdP |
ID token validation failed: issuer mismatch. | L'émetteur ne correspond pas | Comparez l'émetteur de la connexion OIDC avec celui de l'IdP |
ID token validation failed: audience mismatch. | L'audience ne correspond pas | Revoyez la connexion OIDC avec la personne qui gère l'IdP |
ID token validation failed: token expired. | Le token a expiré | Relancez la connexion |
ID token nonce mismatch: expected {} but got {} | Le nonce reçu n'est pas celui attendu | Comparez les deux valeurs affichées dans le message |
Tous les messages qui commencent par ID token validation failed apparaissent lors de la validation du token renvoyé par le fournisseur d'identité. La partie finale vous dit quel contrôle a échoué.

Connexions SAML et métadonnées de l'IdP
| Message | Quand il apparaît | Que faire |
|---|---|---|
The connection "%s" already has its SAML settings: edit them instead of adding others. | En ajoutant une autre configuration SAML à une connexion qui en a déjà une | Modifiez la configuration existante |
Single Logout (SLO) is enabled but no IdP SLO URL is provided. Please enter the IdP SLO URL or disable SLO. | SLO activé sans URL SLO de l'IdP | Saisissez l'URL SLO de l'IdP ou désactivez SLO |
xml.etree.ElementTree is not available. | Le module ne trouve pas xml.etree.ElementTree | Voyez-le avec la personne qui administre votre serveur Odoo |
Failed to parse IdP metadata XML: {} | Le XML de métadonnées de l'IdP n'a pas pu être lu | Vérifiez le XML et la raison ajoutée par le message |
Mappages, exemptions et journal des événements
| Message | Quand il apparaît | Que faire |
|---|---|---|
Attribute mapping cannot belong to both a SAML config and an OIDC config. Please link it to exactly one. | Le mappage d'attributs est lié à la fois à SAML et à OIDC | Liez-le à une seule configuration |
Attribute mapping must be linked to either a SAML config or an OIDC config. | Le mappage d'attributs n'est lié à aucune configuration | Liez-le à une configuration SAML ou OIDC |
Group mapping cannot belong to both a SAML config and an OIDC config. | Le mappage de groupes est lié aux deux | Gardez-en une seule |
Group mapping must be linked to either a SAML config or an OIDC config. | Le mappage de groupes n'est lié à aucune | Liez-le à une configuration SAML ou OIDC |
Exemption expiry date must be today or in the future. Received: {} | La date d'expiration de l'exemption est passée | Indiquez la date du jour ou une date future |
Editing not allowed: authentication event log records are append-only (tamper-evident audit trail). | En essayant de modifier un enregistrement du journal des événements d'authentification | Rien : le module ne permet pas de les modifier |
Deletion not allowed: authentication event log records are append-only (tamper-evident audit trail). | En essayant de supprimer un enregistrement du journal | Rien : le module ne permet pas de les supprimer |

Les deux messages du journal des événements ne signalent pas une erreur de configuration : le texte indique que ces enregistrements acceptent uniquement l'ajout d'entrées (append-only). Si vous cherchez à corriger quelque chose, ce n'est pas là.
Comment FlexigoTech vous aide
Si un message reste obscur malgré son texte, nous pouvons l'examiner avec vous. FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Le module est publié sur Odoo Apps pour les versions 17, 18, 19 et 20, à 9 € HT par version d'Odoo, en paiement unique. Si vous hésitez, consultez ce qu'il couvre et dans quelle version ; les détails d'achat se trouvent sur la page du module.
À 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_event_log.py
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_fido2_credential.py
- 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_mfa_exemption.py
- Code du module : flexigo_2fa_sso_saml_oidc_modern_bundle_for_odoo_commun paquete-BO/20.0 (249f0717): models/auth_mfa_policy.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
