- Expédié
- 15 novembre 2026 à 02:41 UTC
- Auteur
- Kamo
- Commit
- c75df92
fédération/: une partie utilisatrice de l'OIDC (PKCE S256 + nonce + état) pour Google / Microsoft / Apple / LinkedIn, et les adaptateurs OAuth2 pour GitHub (/user + primary /user/emails) et Facebook (/me + appsecret_proof), derrière un Les id_tokens sont vérifiés par rapport au JWKS de chaque fournisseur (mise en cache, récupération précoce sur un enfant inconnu au plus une fois par minute), émetteur, audience/azp, expiry/iat et nonce; l'émetteur de Microsoft est vérifié par rapport aux La clé de temps et d'identité du jeton sur l'émetteur du locataire + oid, jamais sur son email. Le secret client de Apple est un JWT ES256 signé à partir du registre .p8 (150 jours, cached); son nom arrive une fois, comme appleUser. Enregistrements de démarrage/lien/inscription en direct dans Redis (FEDST/FEDLK/FEDSU/FEDLS), utilisation unique, Restauration avec leur TTL restant (et le TTL éprouvé de l'ordinateur) identité) sur une faute qui n'est pas du membre - jamais après une mauvaise liaison, Un code refusé ou un jeton contrefait. Lien: recherche par (émetteur, sujet, connection_key); un email existant répond NOT_LINKED et demande une preuve - mot de passe + le deuxième facteur du compte, ou un code à l'email du COMPTE (5 tentatives, 3 envois); LIEN depuis une session connectée Chaque connexion / déconnexion envoie l'email du compte et écrit IDENTITY_LINKED / IDENTITY_UNLINKED. Une identité liée est transmise au mot de passe En aval du chemin (FederatedSignInCompleter -> portes de compte, règles hôte/sélecteur, SignInCompletionService) ainsi que la politique de l'organisation (fournisseur autorisé (pour l'audience de ce membre; MFA demandé mais non inscrit = refusé ici). Non facturé à l'échelle de verrouillage; budget de rappel/lien par IP à la place. Les clients proviennent de PlatformOAuthClientResolver pour les types *_SIGNIN - d'une organisation Nos propres applications sont uniquement sur son propre domaine vérifié - et sont offerts uniquement à Config_json.signinStatus ENABLED (CONFIGURED = platform org uniquement). Aucun n'est Configuré, donc rien de visible ne change.
