Синхронизация
С 5.23.0 синхронизация пользовательских сессий идет с стороны стороннего idp, OpenId так как с стороны безопасности, это более корректный вариант контроля пользовательских сессий, из соответствующего инструмента, а не отдельного приложения.
Как это работает:
В ТестОпс есть client session ttl в конфигурации приложения и синхронизация параметра Idp
Если в ТестОпс прописано время жизни 1 час, а в Idp 10 минут - разлогин будет по правилу кейклоак.
Если в ТестОпс прописано 10 минут, а в Idp 1 час - разрыв пользовательской сессии будет произходить по правилу ТестОпс
На данный момент сессии завершаются по правилам установленным для клиента и realm в keaycloak, прим.:


Важно, что token refresh настраивается на стороне провайдера, а не ТестОпс.
Т.е. если токен приходит пустой от провайдера аутентификации - пользователя ТестОпс разлогинит.
Траблшутинг
Разлогин происходит спонтанно, в логе приложения появляются ошибки:
An error occurred while attempting to retrieve the OAuth 2.0 Access Token Response: I/O error on POST request for \"https://keycloak.platform.corp/realms/magnit/protocol/openid-connect/token\": PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Такое происходит если на стороне провайдера обновляется его сертификат, java об этом не узнает - ошибка валидации
Решение: подставить корневой сертификат в caserts

Отключение синхронизации
Синхронизацию можно отключить добавив параметр
SPRING_SECURITY_OAUTH2_TOKEN_REFRESH_ENABLED: "false"

Для хелм в values.yaml:
env:
open:
SPRING_SECURITY_OAUTH2_TOKEN_REFRESH_ENABLED: "false"