Обеспечение безопасности подключения#

Оператором приложения, подключенного к Blitz Identity Provider, должно обеспечиваться соблюдение следующих требований к безопасности:

  1. Должна обеспечиваться конфиденциальность полученного для приложения при регистрации в Blitz Identity Provider значения client_secret:

    • Запрещается предавать значение client_secret лицам, не связанным с обеспечением эксплуатации приложения.

    • Запрещается использовать client_secret в клиентской части ПО (код, выполняемый на стороне браузера, мобильного приложения, десктопного приложения). Применяться client_secret должен только в серверных компонентах приложения. Исключение – client_secret, полученный мобильным или десктопным приложением с помощью операции динамической регистрации, такой client_secret можно хранить и обрабатывать в мобильном или десктопном приложении.

    • В случае если client_secret скомпрометирован, то должна быть подана заявка на замену client_secret приложения. В Blitz Identity Provider предусмотрена возможность «плавной замены» client_secret, а именно, приложению может быть присвоен дополнительный client_secret на время, пока будет выполняться перенастройка приложения с прежнего на новое значение client_secret.

  2. Должна обеспечиваться конфиденциальность полученных приложением от Blitz Identity Provider маркеров доступа (access_token) и маркеров обновления (refresh_token).

    • Нужно избегать использования маркеров доступа в браузерной части приложения. Если все‑таки это необходимо (SPA-приложение), то использующий маркер доступа JS‑код должен предусматривать защиту от возможности получения значения маркера доступа из браузерной консоли.

    • Запрещено хранить/обрабатывать маркер обновления на стороне браузерной части приложения – маркер обновления должен использоваться исключительно в серверных компонентах приложения. При хранении маркеров обновления в приложении (в БД, файлах и т.д.) доступ к хранимым маркерам обновления должен быть ограничен.

  3. Взаимодействие приложения с Blitz Identity Provider в продуктивном контуре должно осуществляться исключительно с использованием защищенного соединения (HTTPS). Запрещено использовать HTTP в обработчиках приложения (адреса возврата redirect_uri, post_logout_redirect_uri).

  4. Приложению запрещено открывать страницу входа Blitz Identity Provider во фрейме.

  5. При подключении мобильных приложений к Blitz Identity Provider:

    • использованием PKCE является обязательным;

    • запрещено использовать Embedded-браузер.