KamoCRM

Zaloguj się z Google, Microsoft, Apple, LinkedIn, Facebook i GitHub - moduł federacji (ID1.1)

FeatureSecurityService
Shipped
15 listopada 2026 02:41 UTC
Author
Kamo
Commit
c75df92

federacja /: strona polegająca na OIDC (PKCE S256 + nonce + stan) dla Google / Microsoft / Apple / LinkedIn oraz adaptery OAuth2 dla GitHub (/user + primary Weryfikowane adresy e-mail (/user/emails) i Facebook (/me + appsecret_proof), za jednym Interfejs ProviderAdapter. id_tokens są sprawdzane w JWKS każdego dostawcy (buforowane, wczesne pobieranie na nieznanym dziecku maksymalnie raz na minutę), emitent, audience/azp, expiry/iat i nonce; emitent Microsoft jest sprawdzany w stosunku do Własny klucz tokenów i tożsamości na emitencie dzierżawcy + oid, nigdy na jego e-mailu. Sekret klienta Apple to ES256 JWT podpisany z rejestru .p8 (150 dni, cached); jego nazwa pojawia się raz, jako appleUser. Rekordy startu/połączenia/rejestracji na żywo w Redis (FEDST/FEDLK/FEDSU/FEDLS), jednorazowe, Wszystkie te dane zostaną wydane w drodze i przywrócone z ich pozostałym TTL (i sprawdzonym tożsamość) z winy, która nie jest winą członka - nigdy po niewłaściwym powiązaniu, Odrzucony kod lub sfałszowany token. Łączenie: wyszukiwanie według (wydawca, temat, connection_key); istniejące odpowiedzi e-mail NOT_LINKED i wymaga dowodu - hasło + drugi czynnik konta, lub kod na e-mail ACCOUNT (5 prób, 3 wysyłki); LINK z zalogowanej sesji Każde połączenie/rozłączenie wysyła wiadomość e-mail do konta i pisze IDENTITY_LINKED / IDENTITY_UNLINKED. Połączona tożsamość jest przekazywana do hasła (FederatedSignInCompleter -> bramy konta, reguły hosta/wybieracza, Reguły dostępu, SignInCompletionService) oraz polityka organizacji (dozwolony dostawca MFA wymagane, ale nie zarejestrowane = odrzucone tutaj). Nie jest naliczana do drabiny blokady; zamiast tego budżet na wywołanie zwrotne / łącze IP. Klienci pochodzą z PlatformOAuthClientResolver dla typów *_SIGNIN - organizacji Własna aplikacja tylko na własnej zweryfikowanej domenie - i są oferowane tylko w config_json.signinStatus WŁĄCZONY (KONFIGUROWANY = tylko dla platformy org) Skonfigurowane, więc nic nie zmienia się widocznie.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing