Переведено ИИ. Сообщество еще не проверило перевод. Читать на английском

Блог · 27 сентября 2023 г. · Steve Simpson · Идентификация

Автоматическое обновление данных пользователей с помощью SAML JIT в Salesforce

Введение

Salesforce Security Identity предлагает мощную функцию: единый вход SAML JIT (Just In Time), простой способ автоматически создавать и обновлять данные пользователей. Для организаций, использующих единый вход с поставщиком удостоверений, SAML JIT становится бесценным инструментом синхронизации данных пользователей между поставщиком удостоверений и Salesforce или другим поставщиком услуг. В этой статье мы рассмотрим механизм и способ использования SAML JIT для автоматического обновления данных пользователей.

Что такое единый вход SAML JIT

Единый вход SAML JIT позволяет автоматически передавать данные пользователя при каждом входе, благодаря чему данные постоянно остаются актуальными. Возьмем, например, пользователя Homer с разными профилями в двух организациях Salesforce. Если Homer обновит номер телефона в профиле у поставщика удостоверений, SAML JIT позаботится о том, чтобы это изменение отразилось в профиле у поставщика услуг при входе, сохраняя согласованность данных между платформами.

Настройка SAML JIT

Схема: своевременная (just-in-time) подготовка пользователей SAML. Поставщик удостоверений отправляет номер телефона пользователя как атрибут в утверждении SAML, а Salesforce создает или обновляет пользователя с этим номером

Настройка пользовательских атрибутов:

Войдите в систему поставщика удостоверений (IDP) и откройте запись текущего пользователя. В нашем примере мы обновляем номер телефона Homer.

Перейдите к конфигурации поставщика услуг в IDP и откройте параметры подключения.

Прокрутите до пользовательских атрибутов и добавьте нужные. Например, добавьте атрибут user.phone и настройте подстановку атрибута так, чтобы номер телефона пользователя включался в содержимое SAML при каждом входе.

Обновление данных пользователя у поставщика услуг:

Перейдите в организацию поставщика услуг и откройте записи пользователей.

Найдите пользователя, данные которого нужно синхронизировать, и внесите необходимые изменения в его профиль. Например, обновите номер телефона Homer.

Изменение параметров единого входа:

Перейдите к параметрам единого входа и включите подготовку пользователей.

Снимок экрана: параметры единого входа Salesforce с включенной своевременной подготовкой пользователей и пользовательским классом обработчика SAML JIT

Создайте и назначьте пользовательский класс, который переопределяет стандартный обработчик JIT, и убедитесь, что его выполняет пользователь с нужными разрешениями.

Реализация обработчика SAML JIT

В среде разработки (IDE) создайте новый класс, например ‘STA_SamlJitHandler’.

Переопределите два метода: ‘createUser’ и ‘updateUser’.

‘createUser’: создайте новую запись пользователя и выберите для нее профиль.

Код Apex: пользовательский обработчик SAML JIT, чей метод createUser создает нового пользователя из атрибутов SAML (имя пользователя, ID федерации, телефон, электронная почта) и задает профиль

‘updateUser’: найдите и обновите запись пользователя на основе полученных атрибутов.

Код Apex: метод updateUser, который загружает пользователя и обновляет номер телефона из атрибутов SAML

Вход и проверка синхронизации данных пользователя

Снимок экрана: расширение браузера SAML-tracer, показывающее ответ SAML с атрибутом User.Phone

Когда пользователь пытается войти к поставщику услуг, его перенаправляют в IDP для аутентификации. После успешного входа данные пользователя автоматически обновляются и синхронизируются. Для проверки можно использовать такие инструменты, как SAML Tracer, чтобы изучить содержимое SAML и убедиться, что данные пользователя передаются и обновляются правильно.

Заключение

При минимуме кода и настроек единый вход SAML JIT в Salesforce дает надежный механизм синхронизации данных пользователей между поставщиком удостоверений и поставщиками услуг. Хотя обновления происходят только при входе пользователей, эта функция — удобная альтернатива настройке и сопровождению пакетных процессов для синхронизации данных пользователей. Для пользователей и администраторов, которым нужны обновления в реальном времени без ночных пакетных заданий, SAML JIT — эффективное решение, которое стоит рассмотреть.

Следите за новыми идеями и техническими советами и не забудьте подписаться!

Следите за новостями

Начните свой путь в Salesforce Identity уверенно! Больше идей и советов ищите здесь, на www.SteveTechArc.com, и на YouTube-канале @SteveTechArc (opens in a new tab). Подписывайтесь и углубляйте свое понимание Salesforce Identity.

Помогаем менять мир, делясь знаниями об интеграции с коллегами-архитекторами и теми, кто идет по пути к профессии архитектора!

Расшифровка сделана с помощью ИИ

STA 3.7