Настройки текстов интерфейса#
Мультиязычность#
Веб-интерфейс Blitz Identity Provider поддерживает мультиязычность. По умолчанию предусмотрено два языка – русский и английский.
По умолчанию пользователю отображается интерфейс на том языке, который соответствует его системному языку в ОС и предпочтительному языку в браузере. В этом случае переключение языка осуществляется посредством изменения основного языка ввода (языка отображения веб-страниц) в используемом браузере. Например, для изменения языка в браузере Chrome нужно выполнить шаги:
перейти к настройкам браузера (
chrome://settings/
);выбрать пункт Показать дополнительные настройки;
нажать на кнопку Изменить языковые настройки;
переместить нужный язык на первое место в списке.

Для изменения языка в браузере Firefox нужно выполнить шаги:
перейти к настройкам браузера (
about:preferences
);выбрать раздел Содержимое настроек;
в подразделе Языки нажать на кнопку Выбрать;
переместить нужный язык на первое место в списке:

Дополнительно возможно провести настройку языка через конфигурационный файл blitz.conf
. Для этого следует отредактировать раздел для настройки языка blitz.prod.local.idp.lang
со следующими параметрами:
languages
– список доступных языков. Первый язык в списке считается языком по умолчанию;portal-lang-cookie
– имя (name
) и домен установки (domain
) cookie с текущим языком портала (опциональный). Если портальная cookie задана, то смена языка в Blitz Identity Provider сохраняется в указанной cookie;ignore-browser
– выключен или нет режим игнорирования языка браузера;lang-variants
– перечень идентификаторов специальных наборов строк для отдельных приложений.
Пример фрагмента конфигурационного файла:
"lang" : {
"ignore-browser" : true,
"languages" : [
"ru",
"en"
],
"lang-variants": ["special1", "special2"],
"portal-lang-cookie" : {
"domain" : "domain.com",
"name" : "blitzlng"
}
}
Таким образом, например, если применение английского языка интерфейса не
требуется, то его можно удалить из параметра languages
.
Текстовые сообщения веб-интерфейса#
Blitz Identity Provider позволяет менять текстовые строки, используемые
в интерфейсе системы. Для этого необходимо отредактировать файл
messages
, размещенный в директории /custom_messages/
, добавив
строку вида «параметр=значение», где параметр – идентификатор текстовой
строки, а значение – необходимый текст.
Все текстовые строки, используемые Blitz Identity Provider по умолчанию,
сохранены в архиве messages.zip
, входящий в состав ПО.
Например, следующая строка отвечает за текст на форме регистрации, где размещена ссылка на условия использования:
reg.page.reg.action.agreement=Нажимая на кнопку «Зарегистрироваться» вы соглашаетесь с <a href="{0}" target="_blank">условиями использования</a>
Для корректного отображения файл должен быть сохранен в кодировке UTF-8.
При необходимости изменить английский язык следует добавить в указанную
директорию файл messages.en
и изменить в нем необходимые файлы.
При необходимости использовать в текстах символ @
его следует ввести
дважды.
Шаблоны писем и SMS-сообщений#
Шаблоны писем представляют собой текстовые строки, сохраняемые аналогично обычным строкам в веб-интерфейсе. Их изменение производится аналогичным образом.
Используется унифицированный формат кодов сообщений, который имеет вид:
message.$[группа_сообщений].$[тип_сообщения].$[вариация].$[канал].$[часть]
Используются группы сообщения:
notif
- для информационных сообщений;reg
- для взаимодействия с пользователем при регистрации;recovery
- для взаимодействия с пользователем при восстановлении доступа;auth
- для взаимодействия с пользователем при аутентификации;profile
- для взаимодействия с пользователем в Личном кабинете;api
- для взаимодействия с пользователем при использовании API.
Типы сообщений из различных групп:
login_unknown_device
Информирование пользователя о входе с неизвестного устройства.
Параметры:
device
- код устройстваdevice.msg
- название устройства, вычисленное через строку msg(audit.device.$[device])browser
- браузер пользователяатрибуты из сессии пользователя
ua.name
- имя устройстваapp.id
- идентификатор приложенияapp.name
- имя приложенияip
- IP-адресip.country
- странаip.state
- регионip.city
- городip.lat
- широтаip.lng
- долготаip.radius
- радиус окрестностиdevice.type
- тип устройстваdevice.mkey
- собранный ключ для сообщений, правило формирования:s"$deviceType.$osName.$osVer"
os.name
- имя операционной системыos.ver
- версия операционной системыos.mkey
- собранный ключ для сообщений, правило формирования: s»$osName.$osVer»event.time
- время события (в unixtime).
В шаблоне сообщения можно использовать следующие функции форматирования:
$[<ATTR>&dic(<MSG_KEY_PREFIX>,<PARAM_SUBSTITUTION>)]
- получение значения из строки;$[<ATTR>&formatUnixTime(dd MMMM YYYY г.,ru,GMT)]
- форматирование даты и времени, гдеdd MMMM YYYY
г. - шаблон в форматеSimpleDateFormat
,ru
- локаль (опционально),GMT
- таймзона (опционально)
link_social_network
Информирование пользователя о присоединении к социальной сети.
Параметры:
f p.humanReadableName
- название внешнего поставщика идентификацииатрибуты пользователя
change_pwd
Информирование пользователя о смене пароля.
Параметры:
Атрибуты пользователя
changed_pwd_to_object
Информирование о смене пароля в зависимой учетной записи.
Параметры:
Атрибуты зависимой учетной записи с префиксом obj
.
access_recovery
Информирование пользователя о восстановлении пароля
Параметры:
Атрибуты пользователя
access_recovery_by_object
Информирование о восстановлении пароля в зависимой учетной записи.
Параметры:
Атрибуты зависимой учетной записи с префиксом obj
.
set_2factor_auth
Информирование пользователя о назначение второго фактора аутентификации.
Параметры:
method
- код метода аутентификацииmethod.msg
- имя метода аутентификации, полученное через строкуmsg(message.method .name.$[method])
атрибуты пользователя
granted_access_to
Информирование субъекта о предоставление доступа к объекту.
Параметры:
blitz_right
- код права доступаатрибуты субъекта
атрибуты объекта с префиксом
obj.
granted_access_on
Информирование объекта о предоставление доступа к нему.
Параметры:
blitz_right
- код права доступаатрибуты субъекта
атрибуты объекта с префиксом
obj.
revoked_access_to
Информирование субъекта об отзыве доступа к объекту.
Параметры:
blitz_right
- код права доступаатрибуты субъекта
атрибуты объекта с префиксом
obj.
revoked_access_on
Информирование объекта об отзыве доступа к нему.
Параметры:
blitz_right
- код права доступаатрибуты субъекта
атрибуты объекта с префиксом
obj.
on_registration
Информирование пользователя о регистрации его учетной записи.
Параметры:
_entryPoint_
- канал регистрации_appId_
- приложение_requesterId_
- приложениеатрибуты пользователя
Пример строки:
message.notif.login_unknown_device.email.body=Уважаемый пользователь!<br><br>Мы обнаружили, что вы вошли в систему с нового устройства $[event.time&formatUnixTime(dd MMMM YYYY г.,ru,GMT)]:<br>$[device.mkey&dic(dics.devices,os.ver)], браузер $[ua.name&dic(dics.browsers)]<br>Если вы не совершали это действие, обратитесь к администратору.
vrf_code
Отправка кода подтверждения контакта при регистрации.
Параметры:
code
- код подтвержденияlink
- ссылка для подтверждения (только для email)req.ip
- IP-адресreq.userAgent
- userAgent пользователяcfg.domain
- доменатрибуты пользователя из контекста регистрации с префиксом
attrs
.
set_pwd_link
Отправка ссылки на смену пароля при регистрации (только для канала email).
Параметры:
link
- ссылка на страницу смены пароляreq.ip
- IP- адресreq.userAgent
-userAgent
пользователяcfg.domain
- доменатрибуты пользователя из контекста регистрации с префиксом
attrs
.
generated_pwd
Отправка назначенного при регистрации пароля (только для канала SMS).
Параметры:
pwd
- сгенерированный парольreq.ip
- IP-адресreq.userAgent
-userAgent
пользователяcfg.domain
- домен атрибуты пользователя из контекста регистрации с префиксомattrs
.
vrf_code
Отправка кода подтверждения контакта при восстановлении доступа.
Параметры:
code
- код подтвержденияlink
- ссылка для подтверждения (только для email)
vrf_code
Отправка кода подтверждения мобильного номера (каналы: SMS/push).
Параметры:
code
- код подтверждения
vrf_code
Отправка кода подтверждения контакта при изменении его в Личном кабинете.
Параметры:
attr.msg
- наименование атрибута в форме профиляattr
- код атрибутаlink
- ссылка для подтверждения (только для email)code
- код подтверждения
vrf_code
Вариации:
$attr.$rpId - отдельно для данного приложения и атрибута
$attr - отдельно для данного атрибута
Отправка кода подтверждения контакта через API
Параметры:
code
- код подтвержденияlink
- ссылка для подтверждения (только для email)attr.value
- новый контакт (e-mail или мобильный телефон)attr
- код атрибута контакта
Вариации позволяют помимо базового шаблона сообщения задать его варианты
(например, отдельный шаблон в разрезе приложений). Наличие вариации
проверяется по основному шаблону с текстом сообщения (часть body
).
Если вариация основного шаблона описана в системе, то все остальные
шаблоны (email.subject
, email.from
, push.title
) будут
применяться с этой же вариацией. Если вариаций несколько, то они будут
проверяться в некотором заданном порядке (обычно от большей детализации
к меньшей). При отсутствии вариаций будет использован базовый шаблон. В
большинстве случаев вариации отсутствуют.
Возможны следующие каналы:
sms
- отправка сообщений по SMS. Части для этого канала отсутствуют;email
- отправка сообщений по электронной почте. Части для этого канала:subject
- тема;body
- основное содержание;from
- отправитель (необязательно);
push
- отправка push-уведомлений. Части для этого канала:title
- тема;body
- основное содержание.
Пример ключей для сообщений типа login_unknown_device
:
message.notif.login_unknown_device.email.subject
- тема сообщения по email;message.notif.login_unknown_device.email.body
- текст сообщения по email;message.notif.login_unknown_device.email.from
- отправитель email сообщения;message.notif.login_unknown_device.sms
– текст сообщения по SMS.
Логотипы кнопок входа через внешних поставщиков#
В Blitz Identity Provider можно изменить логотипы, отображаемые на кнопках входа через внешние поставщики идентификации (социальные сети) на странице входа и кнопок привязок внешних поставщиков идентификации в личном кабинете.
Для настройки нужно создать в директории custom_messages
в файле
messages
строки, имена которых соответствуют следующим паттернам:
для страницы входа –
meth-logo.${type}.${name}
для личного кабинета –
social-icon.${type}.${name}
В ${type}
указывается тип внешнего поставщика идентификации, в
${name}
– имя поставщика идентификации. Значения берутся из настроек.
В значении строк указываются имена <icon class>
, присваиваемые
кнопкам.
Примеры строк:
social-icon.saml.demo-idp=saml-demo
social-icon.esia.esia_1=esia
meth-logo.saml.demo-idp=meth-saml-demo
meth-logo.esia=meth-esia
Имена устройств и браузеров#
В Blitz Identity Provider можно настроить имена устройств (операционных
систем) и браузеров с точностью до версий. Для этого в нужно создать в
директории custom_messages
в файле messages
строки, имена
которых соответствуют следующим паттернам:
для браузеров –
dics.browsers.<name>
. Поддерживаются определение следующих браузеров для подстановки в<name>
:Firefox
,Opera
,Chrome
,Safari
,IE
,Edge
,Yandex
,Sputnik
,unknown
. В текст строки в качестве строки подстановки{0}
передается версия браузера.для устройств (операционных систем) –
dics.devices.<typ>.<os>.<ver>
. В качестве<typ>
можно указывать:kindle
,mobile
,tablet
,iphone
,windowsPhone
,pc
,ipad
,playStation
,unknown
. В качестве<os>
можно указывать:Android
,iOS
,WindowsPhone
,Windows
,macOS
,Linux
,ChromeOS
,unknown
. Если для<os>
и<ver>
не определена частная строка, то берется более общая строка. В текст строки в качестве строки подстановки{0}
передается версия операционной системы.
Примеры строк:
dics.browsers.Firefox=Firefox Browser {0}
dics.browsers.Opera=Opera {0}
dics.browsers.Chrome=Google Chrome {0}
dics.browsers.Safari=Safari {0}
dics.browsers.IE=Internet Explorer
dics.browsers.Edge=Microsoft Edge {0}
dics.browsers.Yandex=Яндекс.Браузер {0}
dics.browsers.Sputnik=Спутник
dics.devices.mobile=Мобильное устройство
dics.devices.mobile.Android=Android
dics.devices.mobile.Android.10=Android 10
dics.devices.mobile.Android.9=Android 9
dics.devices.tablet=Планшет
dics.devices.iphone=iPhone
dics.devices.iphone.iOS.14=iPhone (iOS {0})
dics.devices.pc.macOS=macOS {0}
dics.devices.pc.macOS.13=macOS Ventura {0}
dics.devices.pc.macOS.12=macOS Monterey {0}
dics.devices.pc.macOS.11=macOS Big Sur {0}
dics.devices.pc.macOS.10.15=macOS Catalina {0}
dics.devices.pc.macOS.10.14=macOS Mojave {0}
dics.devices.pc.macOS.10.13=macOS High Sierra {0}
dics.devices.pc.macOS.10.12=macOS Sierra {0}
dics.devices.pc.Windows.8=Windows 8
dics.devices.pc.Windows.10=Windows 10
dics.devices.pc.Windows.11=Windows 11
Сообщения для разных приложений#
Возможно изменение всех текстовых сообщений и шаблонов таким образом, чтобы использовались специфические тексты/шаблоны для разных приложений. Таким образом можно, например, брендировать письма, отправляемые при регистрации на разных сайтах, подключенных к одной установке Blitz Identity Provider, или давать ссылку на скачивание различных правил использования ресурса.
Для привязки набора шаблонов к конкретному приложению следует выполнить шаги:
Создать экземпляр файла с текстами, который будет использоваться исключительно для данного приложения. Для этого в директории
custom_messages/
создать текстовый файлmessages.ru-special1
(messages.en-special1
) для данного приложения, гдеspecial1
– последовательность из 5-8 символов (допускаются как цифры, так и буквы латинского алфавита).Отредактировать файл
messages.ru-special1
(messages.en-special1
), добавив в него специфические строки для данного приложения. Все остальные строки будут взяты из базы строк по умолчанию.Отредактировать файл
blitz.conf
следующим образом:в разделе
blitz.prod.local.idp.apps
файла найти идентификатор приложения, который должен использовать созданный файл шаблона;добавить в настройки приложения параметр вида
"lang-variant" : "special1"
, гдеspecial1
– использованная для маркировки шаблона последовательность символов.
Пример:
"demo-application" : { "domain" : "http://testdomain.ru", "lang-variant" : "special1", "name" : "test", "oauth" : { "autoConsent" : false, "clientSecret" : "1234567890", "defaultScopes" : [], "enabled" : true, "redirectUriPrefixes" : [ "http://localhost" ] }, "theme" : "default" }
Зарегистрировать в разделе
blitz.prod.local.idp.lang
в настройкеlang-variant
все используемые для маркировки различных приложений последовательности символов (special1
,special2
).
После этого при входе в приложение будет использоваться специально созданный файл сообщений.
Сообщения вспомогательных приложений (pipes)#
В Blitz Identity Provider можно настроить сообщения вспомогательного
приложения, выпускающего ключ безопасности (Passkey, WebAuthn, FIDO2)
при входе пользователя. Можно настроить разные тексты сообщений в
зависимости от устройств (операционных систем), используемых
пользователем. Для этого в нужно создать в директории
custom_messages
в файле messages
строки, имена которых
соответствуют следующим паттернам:
pipes.conf.webAuthn.addKey.<message-path>.<device-type>.<os>
;login.outside.flow.error.internal.webAuthn.addKey.<device-type>.<os>
.
В качестве <message-path>
указывается имя строки (см. ниже пример).
В качестве <device-type>
указывается тип устройства: mobile
,
tablet
, iphone
, pc
, ipad
. В качестве <os>
можно
указывать: Android
, iOS
, Windows
, macOS
, Linux
,
ChromeOS
. Если для <device-type>
и <os>
не определена
частная строка, то берется более общая строка.
Примеры строк:
pipes.conf.webAuthn.addKey.page.title.pc.macOS=Вход по Touch ID
pipes.conf.webAuthn.addKey.head.title.pc.macOS=Вход по Touch ID
pipes.conf.webAuthn.addKey.info.pc.macOS=Использовать Touch ID или пароль компьютера Mac для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo.pc.macOS=Вход по Touch ID для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name.pc.macOS=Touch ID на Mac
login.outside.flow.error.internal.webAuthn.addKey.pc.macOS=Произошла ошибка при настройке входа по Touch ID на Mac
pipes.conf.webAuthn.addKey.page.title.pc.Windows=Вход через Windows Hello
pipes.conf.webAuthn.addKey.head.title.pc.Windows=Вход через Windows Hello
pipes.conf.webAuthn.addKey.info.pc.Windows=Использовать PIN-код компьютера, распознавание лица или отпечатка пальца для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo.pc.Windows=Вход через Windows Hello для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name.pc.Windows=Windows Hello
login.outside.flow.error.internal.webAuthn.addKey.pc.Windows=Произошла ошибка при настройке входа через Windows Hello
pipes.conf.webAuthn.addKey.page.title.iphone.iOS=Вход по Face ID
pipes.conf.webAuthn.addKey.head.title.iphone.iOS=Вход по Face ID
pipes.conf.webAuthn.addKey.info.iphone.iOS=Использовать Face ID или Touch ID телефона для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo.iphone.iOS=Вход через Face ID для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name.iphone.iOS=Face ID на iPhone
login.outside.flow.error.internal.webAuthn.addKey.iphone.iOS=Произошла ошибка при настройке входа через Face ID
pipes.conf.webAuthn.addKey.page.title.ipad.iOS=Вход по Touch ID
pipes.conf.webAuthn.addKey.head.title.ipad.iOS=Вход по Touch ID
pipes.conf.webAuthn.addKey.info.ipad.iOS=Использовать Touch ID планшета для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo.ipad.iOS=Вход через Touch ID для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name.ipad.iOS=Touch ID на iPad
login.outside.flow.error.internal.webAuthn.addKey.ipad.iOS=Произошла ошибка при настройке входа через Touch ID
pipes.conf.webAuthn.addKey.page.title.mobile.Android=Вход по распознаванию лица или отпечатка пальца
pipes.conf.webAuthn.addKey.head.title.mobile.Android=Вход по распознаванию лица или отпечатка пальца
pipes.conf.webAuthn.addKey.info.mobile.Android=Использовать распознавание лица или отпечатка пальца для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo.mobile.Android=Вход через распознавание лица или отпечатка пальца для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name.mobile.Android=Smart Lock на Android
login.outside.flow.error.internal.webAuthn.addKey.mobile.Android=Произошла ошибка при настройке входа через через распознавание лица или отпечатка пальца
pipes.conf.webAuthn.addKey.page.title=Вход по ключу безопасности
pipes.conf.webAuthn.addKey.head.title=Вход по ключу безопасности
pipes.conf.webAuthn.addKey.info=Использовать ключ безопасности FIDO2 для входа в приложения?
pipes.conf.webAuthn.addKey.finishInfo=Вход через ключ безопасности для учетной записи настроен. Нажмите кнопку "Продолжить"
pipes.conf.webAuthn.addKey.name=FIDO2
В Blitz Identity Provider можно настроить тексты для вспомогательного
приложения, показывающего пользователю сообщение при входе в приложение.
Для этого нужно определить в директории custom_messages
в файле
messages
строки для настроенных в
blitz.prod.local.idp.built-in-pipes.info
приложений с их {id}
вспомогательного приложения.
Пример строк:
pipes.info.head.title.{id} - название вкладки
pipes.info.page.title.{id} - заголовок вспомогательного приложения
pipes.info.message.{id} - текст сообщения
pipes.info.read.{id} - название кнопки (для вспомогательных приложений с типом "news")
pipes.info.agree.{id} - название 1-й кнопки (для вспомогательных приложений с типом "agreement")
pipes.info.disagree.{id} - название 2-й кнопки (для вспомогательных приложений с типом "agreement")
В Blitz Identity Provider можно настроить тексты для вспомогательного
приложения, запрашивающего у пользователя при входе выбор значения из
списка и сохраняющего результат выбора в атрибут учетной записи. Для
этого нужно определить в директории custom_messages
в файле
messages
строки для настроенных в
blitz.prod.local.idp.built-in-pipes.choice
приложений с их {id}
вспомогательного приложения.
Пример строк:
pipes.choice.head.title.{id} - название вкладки
pipes.choice.page.title.{id} - заголовок вспомогательного приложения
pipes.choice.info.{id} - текст информации под заголовком
pipes.choice.button.{id}.{choiceId} – текст на кнопке выбора
pipes.choice.skip – текст на кнопке пропуска
В Blitz Identity Provider можно настроить тексты для вспомогательного
приложения, запрашивающего у пользователя при входе в приложение ввод
значения атрибута. Для этого нужно определить в директории
custom_messages
в файле messages
строки, соответствующие
следующему паттерну –
pipes.act.attr. <message-path>.common.<attr-name>
. В качестве
<message-path>
указывается имя строки (см. ниже пример). В качестве
<attr-name>
указывается имя атрибута.
Примеры строк (в случае заполнения атрибута family_name
):
pipes.act.attr.page.title.common.family_name=Подтверждение фамилии
pipes.act.attr.head.title.common.family_name=Подтверждение фамилии
pipes.act.attr.info.confirm.common.family_name=В учетной записи указана ваша фамилия?<br>Проверьте и нажмите кнопку <b>Подтвердить</b>.
pipes.act.attr.info.enter.common.family_name=В учетной записи не указана фамилия.<br>Введите и нажмите кнопку <b>Подтвердить</b>.
pipes.act.attr.label.common.family_name=Фамилия
pipes.act.attr.msg.required.msg.common.surname=Введите фамилию