АСК Легарус

Поиск

Релиз

Содержание

Нужна помощь?

Не нашли ответ на свой вопрос? Свяжитесь с нашей службой поддержки.

Обратиться в поддержку

Актуальная документация (версия 2.4.0) · версионный адрес

Техническое описание решения

Обновлено: 09 Октябрь 2026 Версия: 2.4.0

1. Место в платформе

Контур АСК Удалённая поддержка / RMM относится к модулю сервис-деска и состоит из трёх сторон:

Сторона Роль
АСК (веб-консоль) Бизнес-объекты: задания, RBAC, группы/теги, скрипты/пакеты, автоматизация, операционный жизненный цикл оповещений, политики и окна обслуживания, UI
Контур связи (Gateway) Идентичность устройств, присутствие, исполнение целей заданий, сырой инвентарь/мониторинг, технические оповещения, сеансы и сигналинг
Windows-агент и клиенты Служба, исполнитель заданий, сбор инвентаря, согласие, захват экрана; программа оператора; портативный клиент

Интерактивный экран/ввод и фоновые задания — разные каналы доверия: для сеанса всегда нужно локальное согласие на каждый новый session_id; для заданий RMM — авторизация АСК (права + политика + окно обслуживания) без per-job consent.

2. Компоненты на компьютере пользователя

Компонент Назначение
ASK.RemoteAssist.Service Служба (в т.ч. LocalSystem): связь, оркестрация, опасные действия reboot/shutdown/update
ASK.RemoteAssist.JobWorker Изолированное выполнение заданий
ASK.RemoteAssist.Tray Трей, UID, заявка, опция unattended
ASK.RemoteAssist.Consent UI согласия на сеанс
ASK.RemoteAssist.DesktopHost / SecureHost Захват/ввод; Secure Desktop / Winlogon (pilot, часто выключен по умолчанию)
ASK.Support.Portable Портативный клиент без установки

На стороне специалиста: ASK.RemoteAssist.Viewer (АСК Техподдержка).

3. Каталог действий заданий (v1)

Классы: safe / mutate / high-risk. Опасные и часть mutate проходят через gate окна обслуживания (gates_destructive, опционально medium_require_mw для stop/restart служб).

action_type Класс Параметры (кратко)
inventory.refresh safe {}
inventory.software.refresh (alias inventory.software_refresh) safe {}
agent.health safe {}
service.query safe optional name
process.list safe optional name_contains
windows_update.scan safe {} (только сканирование)
service.start mutate required name
service.stop / service.restart mutate required name
process.terminate mutate pid + image_name
script.run mutate body/language/timeout/hash…
package.deploy mutate URI/hash, silent args
device.reboot / device.shutdown high-risk reason*, delay_seconds (0…3600, default 60), force, message
agent.update high-risk signed manifest/MSI, reason

Вне каталога (не P0): установка обновлений Windows, файловый обмен, интерактивный терминал и т.п.

Команды заданий подписываются (RmmCommandV1, JWS). Повтор по идемпотентности: command_id / job_target_id. TTL команды порядка 10–15 минут. На агенте mutate может быть отключён флагом конфигурации (AllowMutate) — тогда придёт отказ mutate_disabled.

Статусы бизнес-задания АСК (AskJobStatus): draft | submitted | running | succeeded | failed | cancelled.

Поведение вне окна: по умолчанию outside_mw_behavior=wait (цель остаётся Pending до окна) либо reject — по политике.

4. Инвентарь и мониторинг

Поток Типичный период Принудительно
DeviceInventoryV1 ~24 ч Job inventory.refresh, enroll/startup
SoftwareInventoryV1 ~6 ч Job software refresh; после package.deploy
MonitoringBatchV1 пакет ~5 мин —
Presence / heartbeat ~60 с —

Порог «нет связи» (stale) в UI АСК: 24 часа без контакта. Настройки модуля также содержат порог свежести инвентаря (часы) и интервал снимка endpoint (минуты).

5. Оповещения и автоматизация

Техсостояние оповещения живёт на Gateway (open/cleared). В АСК — операционный статус: open | ack | resolved.

Примеры rule_id: disk.low_space, disk.low_free_mb, device.offline, windows.activation.*, security.*, event.log.match, cpu.sustained_high, memory.sustained_high.

Автоматизация P0: триггер alert.opened; poller периодически (порядка 1 минуты) оценивает правила. Allowlist для device.reboot / script.run из автоматизации; пустой = запрет. Справочные ключи: at10_service_restart, at11_disk_low_space, at11b_disk_low_free_mb (по умолчанию выключены).

6. Права Django / группы

Группы: Rules-Rmm-View, Rules-Rmm-Jobs, Rules-Rmm-RA, Rules-Rmm-Manage (+ system.settings для хаба настроек).

Permission Группы
remote_assist.view_endpoint View, Jobs, RA, Manage
remote_assist.view_inventory View, Manage
remote_assist.run_job / cancel_job Jobs, Manage
remote_assist.remote_assist RA, Manage
remote_assist.view_audit View, Manage
remote_assist.view_script / manage_script view: View+Jobs+Manage; manage: Jobs+Manage
remote_assist.view_package / manage_package аналогично
remote_assist.view_alerts / manage_alerts аналогично
remote_assist.view_policy / manage_policy аналогично
remote_assist.view_group / manage_group / tags аналогично
remote_assist.view_automation / manage_automation аналогично
remote_assist.view_updates / manage_updates аналогично
remote_assist.delete_endpoint Jobs, Manage

Статусы скрипта/пакета: draft | approved | retired.

7. URL-префиксы АСК

  • /rmm/ — дашборд, устройства, задания, скрипты, пакеты, группы, автоматизации, оповещения, аудит, обновления, аналитика…
  • /settings/rmm/ — хаб: привязки тенантов, флаги модуля, политики оповещений, ссылки на политики Jobs и окна обслуживания
  • SSO запуска Viewer: путь вида viewer/sso/

Флаги модуля (defaults): register_portable=false, auto_create_ci=true.

8. Удалённая сессия (кратко)

  1. АСК выдаёт короткий launch_ref или оператор вводит UID в Viewer.
  2. Gateway создаёт сессию → Consent UI на endpoint.
  3. Accept/Reject → DesktopHost (и опционально SecureHost).
  4. Локальный индикатор + Disconnect.

Portable Elevated: Transient LocalSystem Broker (Rank 5), SecureHost в winsta0\Winlogon, учётные данные администратора не пишутся в логи/телеметрию. Unattended consent bypass — только установленный агент, default off.

9. Источники контрактов и фикстур

  • Gateway: contracts/ask-s2s/fixtures/, contracts/wss/ (job-actions, rmm-command-v1, session-consent…).
  • Каталог действий и destructive allowlist на Gateway.
  • ASK: remote_assist/rules.py, services/ui_labels.py, services/jobs.py, templates remote_assist/*.html, locale/ru.
  • Windows: Brand UI (ViewerUiBrand, TrayUiBrand, PortableUiBrand, ConsentUiBrand), Job handlers, Inventory collectors.

10. Ограничения текущей реализации (для планировщиков)

  • Нет полноценного cron-планировщика заданий в UI (расписание фактически через MW + automation poller).
  • Нет CSV-импорта устройств/скриптов/политик.
  • Нет отдельного email/Event Center канала именно для RMM.
  • Dual-admin утверждение скриптов — вне текущего P0.
  • SecureHost / полный manage Windows Update / file transfer — не полный production-scope или выключены по умолчанию.

Пользовательские сценарии без внутренних кодов — в соседних статьях раздела и в руководстве администратора.