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

Использование режима подтверждения прав по положению клавиатурного ключа задается настройками программы. Подробнее об этом можно прочитать в разделе "Проверка прав".

Для работы клавиатурного ключа необходимо:

  1. В конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [Security.Restrictions]:
    1. Включить настройку authenticateByKeyboardKey.
    2. Задать комбинации клавиш, соответствующие каждому положению ключа настройкой keyboardKey (не более 10-ти).

      Комбинация клавиш имеет следующий вид: [модификатор]+[символ], разделенные ", " (запятой и пробелом).
      Модификаторы: Ctrl, Meta, Alt, Shift.

  2. Задать для пользователя положение ключа в поле keyposition.

Данные о текущем положении ключа записываются в файл /linuxcash/cash/data/tmp/keyboard.key, а также в БД Dictionaries в таблицу Mol. Информация о положении ключа сохраняется при каждом изменении. Данные о сохранении и загрузке ключа записываются в /linuxcash/logs/current/terminal.log.
Если при запуске кассовой программы файл linuxcash/cash/data/tmp/keyboard.key отсутствует, то положение клавиатурного ключа находится в неопределенном состоянии.
При проверке прав на выполнение действия осуществляется поиск пользователя по значению поля keyposition, а также по текущему положению ключа. Если пользователь с текущим положением ключа найден, то он будет использован для подтверждения действия на кассе в качестве подтверждающего пользователя.

Настройки для работы клавиатурного ключа задаются в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [Security.Restrictions].

НаименованиеТип данныхВозможные значенияОписание

Примечания

authenticateByKeyboardKeyлогический
  • true
  • false
Подтверждение прав по положению клавиатурного ключаПо умолчанию false
keyboardKeyTimeoutчисловой
Таймаут комбинаций клавиш клавиатурного ключа, в миллисекундахПо умолчанию 100 мс
keyboardKeyNстроковый
Последовательность кодов для N-ого положения ключа. N – порядковый номер положения ключа от 0 до 9 


Пример настройки
[Security.Restrictions]
; Параметры, относящиеся к безопасности
...
; Подтверждение прав по положению клавиатурного ключа
; По умолчанию false
authenticateByKeyboardKey = true
; Таймаут комбинаций клавиш клавиатурного ключа, в миллисекундах. 
; По умолчанию 100
keyboardKeyTimeout = 100
; Комбинации клавиш для каждого положения ключа
keyboardKey0 = Ctrl+B, Ctrl+A
keyboardKey1 = Ctrl+B, Ctrl+B
keyboardKey2 = Ctrl+B, Ctrl+V
keyboardKey3 = Ctrl+B, Ctrl+X
keyboardKey4 = Ctrl+B, Ctrl+Z
keyboardKey5 = Ctrl+B, Ctrl+C
... 
  • No labels