Nœuds — Social Login / OIDC


Connexion via un provider social OAuth2/OIDC, dans le cadre d’un graphe d’authentification.

SelectSocialProviderNode — affiche le choix du provider social.

PropriétéTypeDéfaut
providersstring (obligatoire)
promptstringSelect identity provider

Outcome : outcome.

OidcRedirectNode — démarre un Authorization Code Flow avec PKCE (S256).

PropriétéTypeDéfaut
clientIdstring (obligatoire)
authorizationEndpointstring (obligatoire)
redirectUristring (obligatoire)
scopesstringopenid profile email

Outcome : outcome.

OidcCallbackNode — échange le code contre des tokens et décode l’id_token.

PropriétéTypeDéfaut
providerNamestring (obligatoire)
tokenEndpointstring (obligatoire)
clientIdstring (obligatoire)
clientSecretstring, secret""
redirectUristring (obligatoire)
trustEmailVerifiedbooleanfalse

Outcomes : true / false.

Notes
D’après le code, la signature du id_token n’est pas vérifiée par OidcCallbackNode (le JWT est décodé, pas validé cryptographiquement). À garder à l’esprit avant d’exposer ce nœud sur un provider dont on ne maîtrise pas le canal de transport.

OAuth2CallbackNode — variante d’OidcCallbackNode pour les providers OAuth2 sans id_token (GitHub, LinkedIn…).

PropriétéTypeDéfaut
providerNamestring (obligatoire)
tokenEndpointstring (obligatoire)
clientIdstring (obligatoire)
clientSecretstring, secret (obligatoire)
redirectUristring (obligatoire)

Outcomes : true / false.

FetchUserInfoNode — appelle le UserInfo endpoint avec l’access_token obtenu.

PropriétéTypeDéfaut
userInfoEndpointstring (obligatoire)

Outcome : outcome.

NormalizeProfileNode — mappe les claims spécifiques au provider vers un schéma d’attributs standard.

PropriétéTypeDéfaut
subjectClaimstringsub
emailClaimstringemail
nameClaimstringname
emailVerifiedClaimstringemail_verified

Outcome : outcome.

EmailVerifiedDecisionNode — décide selon le claim email_verified renvoyé par le provider social. Aucune propriété configurable. Outcomes : true / false.

AutoProvisionUserNode — crée un compte TOSIAM local à partir du profil social normalisé, s’il n’existe pas déjà. Aucune propriété configurable. Outcomes : true / false.

SocialAccountLinkingNode — recherche un compte local déjà lié à la paire (provider, subject). Aucune propriété configurable. Outcomes : found / not_found.

Notes
not_found est le seul outcome en snake_case de tout le catalogue — le reste des nœuds utilise systématiquement le camelCase (notEnrolled, expiringSoon…). À vérifier lors du câblage d’un graphe pour ne pas se tromper de nom d’outcome.
Modifier cette page sur GitHub