Техническое задание: Интеграция Keycloak SSO с приложением на CakePHP

Цель проекта

Модернизировать процесс аутентификации в существующем веб-приложении, добавив безопасный и современный метод единого входа (Single Sign-On).

Основные задачи

  • Развернуть тестовый экземпляр веб-приложения на базе фреймворка CakePHP.
  • Интегрировать систему аутентификации через Keycloak для реализации функционала SSO.
  • Модифицировать стандартную страницу входа в приложение, добавив на неё возможность авторизации через интегрированный сервис.
  • Обеспечить корректный обмен данными и перенаправление между приложением и сервером аутентификации.

Требования к реализации

  • Интеграция должна быть выполнена с соблюдением стандартов безопасности OAuth 2.0 / OpenID Connect.
  • Функционал стандартной аутентификации (логин/пароль) должен оставаться работоспособным.
  • Решение должно быть документировано для последующего развертывания.

Ожидаемый результат

Пользователь на странице входа в приложение видит и может использовать как стандартную форму логина, так и отдельную кнопку для входа через единую систему (SSO). После успешной аутентификации в Keycloak пользователь автоматически получает доступ к приложению.