KamoCRM

Вход с Google, Microsoft, Apple, LinkedIn, Facebook и GitHub - модуль федерации (ID1.1)

FeatureSecurityService
Отгружено
15 ноября 2026 г. в 02:41 UTC
Автор
Kamo
Завершение
c75df92

federation/: полагающаяся сторона OIDC (PKCE S256 + nonce + state) для Google / Microsoft / Apple / LinkedIn, и адаптеры OAuth2 для GitHub (/пользователь + основной проверенные /user/emails) и Facebook (/me + appsecret_proof), за одним Интерфейс ProviderAdapter. id_tokens проверяется на соответствие JWKS каждого поставщика (кэширование, раннее получение на неизвестном ребенке не чаще одного раза в минуту), эмитент, audience/azp, expiry/iat и nonce; издатель Microsoft проверяется на соответствие собственный ключ tid и идентичности токена на имя эмитента арендатора + oid, никогда на его адрес электронной почты. Секрет клиента Apple - это ES256 JWT, подписанный из .p8 реестра (150 дней, кэшировано); его имя появляется один раз, как appleUser. Записи запуска/связки/регистрации в режиме реального времени в Redis (FEDST/FEDLK/FEDSU/FEDLS), одноразовое использование, по пути в и восстановить с их оставшихся TTL (и доказанные идентичность) по вине, которая не является членом - никогда после неправильного привязки, отказанный код или поддельный токен. Связывание: поиск по (издатель, тема, connection_key); существующие ответы по электронной почте NOT_LINKED и требует доказательства - пароль + второй фактор аккаунта, или код на электронную почту АККАУНТА (5 попыток, 3 отправки); СВЯЗЬ из сеанса с входом в систему требует того же. Каждое подключение/отключение отправляет электронную почту учетной записи и пишет IDENTITY_LINKED / IDENTITY_UNLINKED. Связанное удостоверение передается паролю вниз по пути (FederatedSignInCompleter -> шлюзы учетных записей, правила узла/выбирателя, правила доступа, SignInCompletionService) плюс политика организации (провайдер разрешает для аудитории этого участника; MFA запрошено, но не зарегистрировано = здесь отказано). Не взимается с лестницы блокировки; вместо этого используется бюджет обратного вызова/связи на IP. Клиенты приходят из PlatformOAuthClientResolver для типов *_SIGNIN - организации собственное приложение только на собственном проверенном домене - и предлагаются только на config_json.signinStatus ВКЛЮЧЕН (CONFIGURED = только платформа org). Нет настроен, так что ничего не видно изменений.

Все изменения

Подобно тому, что вы видите доставку?

Все это приходит в ваше рабочее пространство само по себе. Начните с бесплатного плана и прочтите эту страницу снова через месяц.

Начать бесплатно навсегдаПосмотреть цены