Child pages
  • Интерфейс Пользователя
24 more child pages
Skip to end of metadata
Go to start of metadata

Меню Интерфейс Пользователя предоставляет пользователям следующие

Возможности:

Адрес страницы пользователя:

https://your.host:9443/

Для отображения ссылки на мобильное приложение нужно указать параметр в файле конфигурации

ПараметрОписание
$conf{APP_LINK_GOOGLE_PLAY} = 'URL'Ссылка на мобильное приложение Google Play
$conf{APP_LINK_APP_STORE} = 'URL'Ссылка на мобильное приложение App Store

Для отображение договора оферты

$conf{user_portal_offer} = 'Договор оферты | https://......;'Название договора | Ссылка на договор'

Предупреждения о использование Cookie

Для того что бы пользователь был уведомлен о использование Cookie вам надо в файле конфигурации прописать два параметра:

ПараметрОписание
$conf{COOKIE_URL_DOC} = 'URL'Ссылка на документ о использование Cookie файлов
$conf{COOKIE_POLICY_VISIBLE} = 1;Включения баннера для уведомления о использование Cookie

Предупреждения о использование Cookie


В системе предусмотрена возможность авторизации абонентов в личном кабинете и User API через JWT вместо классической сессии sid.

При включении JWT логин выдаёт пару токенов:

  • access token — короткий JWT. Передаётся в заголовке Authorization: Bearer … (в кабинете — cookie access_token).
  • refresh token — долгоживущий непрозрачный токен. Нужен, чтобы получить новую пару токенов без повторного ввода пароля. В кабинете он кладётся в cookie sid (прежнее имя, для совместимости с формами и порталом).

По умолчанию (опция выключена) используется прежняя сессия sid в таблице web_users_sessions.

Требования

  • Установлен Perl-модуль Crypt::JWT.
  • Версия биллинга 2.0

Включение

В config.pl или в конфигурации системы:

$conf{USER_AUTH_METHOD_JWT}=1;

Опции

ОпцияОписание
$conf{USER_AUTH_METHOD_JWT}=1Включить JWT-авторизацию абонента. Если не задано — классическая сессия sid.
$conf{USER_JWT_SECRET}HMAC-секрет для подписи access JWT (алгоритм HS256). Не использовать $conf{secretkey}. Если не задан, система падает на secretkey, этого недостаточно для продакшена.
$conf{USER_JWT_ACCESS_TTL}=900Время жизни access token в секундах. По умолчанию 900 (15 минут).
$conf{USER_JWT_REFRESH_TTL}=2592000Время жизни refresh token в секундах. По умолчанию 2592000 (30 суток).
$conf{USERPORTAL_MULTI_SESSIONS}=1Разрешить несколько одновременных сессий одного абонента. Если не задано, новый логин отзывает предыдущие refresh-токены.

Личный кабинет

После успешного входа выставляются cookie (флаги HttpOnly, SameSite=Lax):

CookieСодержимоеСрок
access_tokenJWT$conf{USER_JWT_ACCESS_TTL}
sidrefresh token (прежнее имя cookie)$conf{USER_JWT_REFRESH_TTL}

Повторные запросы кабинета проверяют access_token. Если access истёк, но refresh в sid ещё действителен, система выпускает новый access без повторного логина (без ротации refresh).

User API

Если у Вас интегировано USER API, пожалуйста обновите взаимодействие с ипользованием JWT

  • No labels