Разработка IAM-системы для страховой компании

2024-03-18 11:09:21 Время чтения 4 мин 49

Компания RedLab приняла участие в реализации проекта по разработке IAM-системы для страховой компании. В этой статье делимся кейсом.

О клиенте

Крупнейшая российская страховая группа. В портфеле клиента больше 200 инновационных решений, которые гарантируют безопасность инвестиций и имущества, а также множество решений для защиты рисков бизнеса. Компания предоставляет услуги по страхованию для 31 млн людей и 125 тыс. компаний.

О проекте

Для управления учетными записями, процессами авторизации и аутентификации внутренних и внешних пользователей страховая компания использует IAM-систему (Identity and Access Management). С течением времени программный продукт перестал соответствовать требованиям бизнеса в части контроля доступов к информационным ресурсам и безопасности данных.

Описание задачи

К моменту обращения клиент имел устаревшую IAM-систему. Требовалось актуализировать существующее решение, а именно область управления ролями и информационными данными, и добавить новый современный функционал:

  1. Реализовать опцию управления пользователями: создание и отключение учетных записей, контроль их доступа к информационным ресурсам.
  2. Обеспечить мониторинг действий сотрудников: обнаружение подозрительной активности или попыток несанкционированного доступа.
  3. Повысить безопасность данных: соответствие международным стандартам и российским законам, защита информации от внешних атак и утечки данных.

Реализация

После изучения требований к продукту и архитектуре специалисты RedLab смоделировали статический вид новой системы, создав Sequence и Component диаграммы. Далее приступили к разработке целевых сервисов под управлением IAM-системы:

  1. Разработали сервис аутентификации пользователей. Предусмотрели обратную совместимость с предыдущим решением, чтобы упростить процесс перехода на новую архитектуру.
  2. Перевели сервисы с Java 11 LTS на Java 17 LTS, в итоге скорость выполнения запросов в коде стала более высокой, а обработка данных — проще.
  3. Реализовали провайдер для Keycloak для отправки сообщений по аудиту в Kafka, которых помог анализировать и отслеживать активность пользователей.
  4. Настроили GitLab CI flow и построили взаимодействие с AD лесами через подход Spring-Data (spring-ldap), что упростило работу. В случае обрыва сети повторные запросы начали идти с помощью spring-retry.
  1. Создали сервис для получения данных о внутренних и внешних пользователях компании. Благодаря решению клиент стал видеть статусы учетных записей, текущие права в разных областях, список контрактов и другое.
  2. Начали использовать фреймворк Spring Boot v3, который сократил время развертывания проекта.
  3. Предложили клиенту внедрить CI/CD в legacy проект. Нововведение позволило быстро вносить правки в старую систему и разбираться с возникающим проблемами.
  4. Провели рефакторинг секретов в Vault для интеграции с Banzai Cloud Pipeline, получив безопасное хранение и управление конфиденциальными данными в инфраструктуре облачных сред.

Результат

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

Источник.

Категории: Кейсы