Функции#

IAM Proxy#

Platform V IAM Proxy выполняет следующие основные функции:

  • Аутентификация пользователя при доступе к приложению посредством какого-либо провайдера аутентификации (например Platform V KeyCloak.SE). В рамках функций аутентификации IAM Proxy поддерживает:

    • Взаимодействие с внешним провайдером аутентификации по OpenID Connect;

    • Поддержка custom IdP;

    • Передача проверенной информации о пользователе внутренним приложениям в удобном виде: JWT, http headers, custom;

  • Функции авторизации, включая:

    • Авторизация доступа к защищаемым приложениям по ролям: дает возможность ограничить обращение к backend приложениям на основе ролей из токена (по маске роли, регулярное выражение);

    • Дает возможность на прокси ограничить обращение к серверам-приложений на основе обращения к внешнему серверу авторизации (дополнительный слой авторизации на основе URL(RBAC) и атрибутов запросов(ABAC)), что позволяет вынести функции безопасности на отдельный компонент(прокси) и упростить авторизацию на приложении;

    • Кэширование авторизационных политик. Возможность принятия локальных авторизационных решений.

  • Проксирование, поддержка HTTP, включая:

    • Поддержка проксирования http 1/1.1/2, ws, sse - Предоставляет возможность заказчику использовать в своих web-приложениях технологии WebSocket и Server-send events;

    • Балансировка - Round Robin, Hash, IP Hash, Least Connections;

    • Mtls - Терминирование mtls, mtls с backend сервисами;

    • Поддержка sticky-session (по комплексным критериям);

    • Ведение сессии прокси - позволяет ограничить время жизни по неактивности, абсолютному времени, выполнить привязку по ip (или любому другому критерию).

KeyCloak.SE#

Keycloak.SE выполняет следующие основные функции:

  • Аутентификация пользователя при доступе к приложению. В рамках функции аутентификации возможно:

    • Настраивать собственные сценарии ( flow ) аутентификации;

    • Использовать функции одноразовых паролей OTP: TOTP/HOTP;

    • Реализовать аутентификацию по X.509 сертификатам;

    • Использовать поддержку WebAuthn;

    • Настраивать парольные политики.

  • Авторизация пользователя на выполнение операции / действия в приложении. В KeyCloak.SE реализованы базовые функции авторизации. Более расширенная функциональность авторизации возможна при использовании Объединенного Сервиса Авторизации. В рамках функций авторизации в KeyCloak.SE возможно:

    • Реализовать ведение каталога ресурсных серверов / ресурсов / полномочий;

    • Настроить политики авторизации: User-Based, Role/Group-Based, JavaScript-Based, Time-Based, Client-Base, Aggregated;

    • Включать авторизационную информацию в JWT-токены.

  • Поддержка сценариев в рамках отраслевых проколов: OpenID Connect, Oauth 2.0, SAML 2.0, User Managed Access (UMA).

  • Хранение данных, включая данные аутентификационного профиля пользователя, аутентификационного профиля приложения ( client), авторизационных данных. В рамках хранения данных обеспечивается выполнения следующих функций:

    • Персистентность данных в СУБД / LDAP каталоге;

    • Поддержка внешних хранилищ данных (federation);

    • Кэширование данных;

    • Identity Brokering;

    • Мультитенантность (realms).

  • Функции самообслуживания пользователей (Self-service) включая функции:

    • Регистрации в Identity Provider;

    • Управление согласиями;

    • Личный кабинет (account console);

    • Account Linking.

  • Функции администрирования, включая:

    • Admin REST API;

    • Административная консоль;

    • Управление учетными записями пользователей / сессиями;

    • Export / Import;

    • События / аудит.

  • Функции управления аутентификационными профилями и дополнительные функции для защищаемых приложений (client), включая:

    • Регистрация приложений: OIDC. Dynamyc client registration, SAML v2 Entity Descriptors;

    • Политики регистрации, client registration cli;

    • Token Exchange.

Объединенный сервис авторизации (ОСА)#

Объединенный сервис авторизации (ОСА) выполняет следующие основные функции:

  • Механизмы Role-Based Access Control (RBAC) авторизации, включая:

    • RBAC с динамическим расчётом групп на основании атрибутов сеанса (например, канал);

    • Центральное хранилище ролевых моделей (XML в СУБД);

    • Клиентские библиотеки (java) с кешированием в распределённом сессионном хранилище;

    • UI, рабочее место администратора.

  • Механизмы Attribute-Based Access Control (ABAC) авторизации, включая:

    • Поддержка языка политик - XACML (eXtensible Access Control Markup Language);

    • Формирование политик авторизации (конвертирование) из DSL.

  • Функции принятия авторизационного решения - Policy Decision Point (PDP), включая:

    • Централизованный API: XAML, JSON, Profile;

    • Принятие авторизационного решения в клиентской библиотеке.

  • Функции централизованного хранения / динамического получения из внешних источников атрибутов пользователя с привязкой к пользователям (Policy Information Point), включая:

    • REST API для получения атрибутов;

    • Административный UI для создания атрибутов.