A3BC — Build digital trust. Together.
Français English
Documentation/Intégration OIDC/Claims obligatoires

Claims obligatoires

Exiger la présence de certains claims avant que l'utilisateur puisse consentir.

Le paramètre standard claims permet normalement de demander des claims « essentiels » dans id_token et userinfo. A3BC renvoyant les mêmes informations dans les deux, il ignore ces éléments et propose à la place un objet mandatory.

Format

Un JSON UTF-8, encodé dans l’URL, passé dans le paramètre claims :

{
  "mandatory": [
    "given_name",
    "family_name",
    "email",
    "private:doc.id"
  ]
}

Règles

  • Un claim obligatoire doit aussi être couvert par un scope demandé, sinon il est ignoré.
  • Est obligatoire un claim ni nul ni vide.
  • L’utilisateur ne peut pas valider son consentement tant que les informations obligatoires ne sont pas disponibles. Si malgré tout le cas se produit, le flux se termine en erreur.
  • Avec le partage différé, un claim obligatoire doit être disponible et validé au moment du consentement.
import json, urllib.parse
claims = json.dumps({"mandatory": ["given_name", "family_name", "email"]})
params["claims"] = claims  # urlencode s'occupe de l'encodage
const claims = JSON.stringify({ mandatory: ["given_name", "family_name", "email"] });
url.searchParams.set("claims", claims);