Перейти к основному содержимому
Версия: 7.0

Настройка правил

Правила передаются в Пассворк через JSON-файл. Может быть использован только один файл правил для текущего устройства. Импорт нового файла заменяет все ранее сохранённые правила.

Формат файла​

Файл должен содержать номер версии и массив правил. Ниже примеры файлов для соответствующих операционных систем:

{
"version": 1,
"rules": [
{
"name": "SSH через PuTTY",
"match": {
"protocol": "ssh"
},
"command": {
"program": "C:\\Program Files\\PuTTY\\putty.exe",
"arguments": [
"-ssh",
"{URL:HOST}",
"-P",
"{URL:PORT:22}",
"-l",
"{LOGIN}"
]
}
},
{
"name": "Подключение к удалённому рабочему столу",
"match": {
"protocol": "rdp"
},
"command": {
"program": "C:\\Windows\\System32\\mstsc.exe",
"arguments": [
"/v:{URL:HOST}:{URL:PORT:3389}"
]
}
}
]
}

В примерах используются следующие ссылки:

  • ssh://server.company.com:22 — запуск SSH-клиента;
  • rdp://server.company.com:3389 — запуск RDP-клиента в Windows или Linux;
к сведению

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

Параметры файла и правил​

ПараметрОписание
versionВерсия формата файла 1.
rulesМассив правил. Должен содержать хотя бы одно правило.
nameНазвание правила, отображается при подтверждении запуска.
match.protocolURI-схема без ://, например rdp, ssh или vnc.
command.programПрограмма, которую нужно запустить.
command.argumentsМассив аргументов программы. Каждый элемент массива передаётся как отдельный аргумент.

Регистр URI-схемы не учитывается. Значения RDP, rdp и rdp: обрабатываются как одна схема. Для одной URI-схемы можно определить только одно правило. Если в файле несколько правил с одинаковой схемой, файл не будет импортирован.

Подстановки​

В аргументах программы можно использовать данные записи и части URI.

ПодстановкаЗначение
{NAME}Название записи.
{LOGIN}Логин из записи.
{PASSWORD}Пароль из записи.
{URL}Полный URI, по которому пользователь выполнил переход.
{URL:SCM}URI-схема без двоеточия.
{URL:HOST}Имя хоста без порта.
{URL:PORT}Порт из URI. Если порт не указан, передаётся пустая строка.
{URL:PORT:значение}Порт из URI или указанное значение по умолчанию. Например, {URL:PORT:22}.
{URL:PATH}Путь из URI.
{URL:QUERY}Строка запроса вместе с ?.
{URL:USERINFO}Имя пользователя и пароль из URI, если они указаны.
{URL:USERNAME}Имя пользователя из URI.
{URL:PASSWORD}Пароль из URI.
{URL:RMVSCM}URI без схемы: хост, порт, путь и строка запроса.
{CUSTOM:Имя поля}Значение дополнительного поля записи с указанным именем.

Имена подстановок и дополнительных полей чувствительны к регистру. Если дополнительное поле не найдено, вместо него передаётся пустая строка. Подстановки разрешены только в command.arguments. Путь к программе в command.program должен быть постоянным.

warning

При подстановки {PASSWORD}, {URL:PASSWORD}, {URL:USERINFO} и дополнительных полей с типом пароль передают программе чувствительные данные. Перед таким запуском Пассворк запрашивает отдельное подтверждение.

Импорт файла​

При импорте Пассворк:

  1. проверяет размер и структуру JSON-файла;
  2. проверяет обязательные параметры каждого правила;
  3. проверяет URI-схемы, пути к программам и подстановки;
  4. отклоняет дублирующиеся URI-схемы;
  5. показывает пользователю список соответствий URI-схема → программа;
  6. сохраняет правила только после подтверждения пользователя.

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