API ліцензування · 99,98%
+995 574 856 856 [email protected] Грузія, Кутаїсі
Revit Server security

Revit Server Guard

Контроль доступу, аудит, адміністрування та захищена експлуатація інфраструктури Autodesk Revit Server.

Версія 1.1.4 Flagship solution
What’s new

Історія версій

На цій сторінці історію версій поки не опубліковано.

Опис

RSG · Технічний розбір

Що таке RSG і навіщо він потрібен.

Revit Server Guard — програмний шлюз, який встановлюється на той самий хост, що й Autodesk Revit Server. Він перехоплює TCP- і HTTP-трафік до портів RS, читає його метадані (хто користувач, який проєкт, який розділ, яка дія) і застозвує правила доступу, яких немає в самому Revit Server.

ОглядЦей екран керує розділом «Огляд»: дані, фільтри, дії та експорт зібрані в панелі RSG. ПроєктиЦей екран керує розділом «Проєкти»: дані, фільтри, дії та експорт зібрані в панелі RSG. РоліЦей екран керує розділом «Ролі»: дані, фільтри, дії та експорт зібрані в панелі RSG. Журнал аудитуЦей екран керує розділом «Журнал аудиту»: дані, фільтри, дії та експорт зібрані в панелі RSG.

01 — Огляд

Що таке RSG і навіщо він потрібен.

Revit Server Guard — програмний шлюз, який встановлюється на той самий хост, що й Autodesk Revit Server. Він перехоплює TCP- і HTTP-трафік до портів RS, читає його метадані (хто користувач, який проєкт, який розділ, яка дія) і застозвує правила доступу, яких немає в самому Revit Server.

Из коробки Revit Server не даьот прозрачних прав доступа по пользователю, проєкту, розділу і действию. Якщо участник имеет доступ к серверу, в RS нет встроенной модели прав, которая надьожно ограничит его лише своей зоной відповідьственности. Для маленькой команди ето может бить допустимо. Для проєктов з большим числом компаний, временних участников і разной відповідьственностью одних инструкций і регламентов недостатньо: RSG убирает ето техническое ограничение.

Кому це потрібно

  • Проєктним бюро, які ведуть кількох замовників паралельно й не хочуть, щоб команда замовника А бачила, що робиться для замовника Б.
  • BIM-координаторам, яким потрібно розділяти права на рівні розділів моделі — конструктори бачать і редагують структуру, інженери МЕП — свій розділ, і так далі.
  • Підрядникам і фрилансерам, яким віддають доступ тимчазво, на конкретний проєкт і конкретний розділ, і яких потрібно заблокувати одним кліком після завершення.
  • Командам із регуляторними вимогами (держконтракти, обʼєкти з обмеженим доступом), де обовʼязковий журнал хто-що-коли відкривав.

01 ОглядЦей екран керує розділом «Огляд»: дані, фільтри, дії та експорт зібрані в панелі RSG.

02 — Архітектура

Чотири компоненти, один Windows-хост.

RSG — це один моноліт, але чотири окремі модулі, які встановлюються разом. Це зроблено свідомо: кожен компонент відповідає за свій контур і за потреби перезапускається незалежно.

Що робить кожен компонент

  1. RSG.Proxy — TCP/HTTP-проксі, який слухає на порту 8086 замість штатного RS-порту. Розпаковує SOAP-конверти Revit Server, дістає метадані запиту, питає в RSG.Server: «можна?» — і або пропускає, або повертає 403 клієнту.
  2. RSG.Server — Windows-сервіс на.NET 8, який тримає правила доступу в локальному SQLite/SQL Server, веде журнал аудиту, перевіряє ліцензію і спілкується з License API. Це «мозок» рішення.
  3. RSG.AdminPanel — React SPA, доступна на localhost:5080 (або усіредині корпоративної мережі через HTTPS). Через неї адмін створює користувачів, проєкти, правила і дивиться аудит.
  4. RSG.LicenseTool — окремий CLI-інструмент для офлайн-активації. Використовується лише в air-gapped мережах, у звичайній онлайн-інсталяції не потрібен.

Важливо

Revit Server залишається таким, як був. RSG не модифікує його бінарників, не переписує бази, не підмінює конфігів. Він стає збоку й працює через стандартні мережеві інтерфейси. Якщо RSG вимкнути, Revit Server продовжить працювати як до його встановлення.

02 RS-шлюзиЦей екран керує розділом «RS-шлюзи»: дані, фільтри, дії та експорт зібрані в панелі RSG.

03 — Контроль доступу

Три рівні прав: проєкт, розділ, дія.

RSG надає права не «усі або нічого», а гранулярно. Ви видаєте не «доступ до сервера» — ви видаєте «доступ до проєкту X, розділу Архітектура, лише читання». Під капотом це відбувається на рівні SOAP-запитів Revit Server, де RSG дивиться на тип операції та ухвалює рішення.

Користувачі та AD-групи привʼязуються до ролей. Роль — це набір дозволів для конкретного проєкту та його розділів. Один користувач може мати різні ролі в різних проєктах: «координатор» в одному, «спостерігач» в іншому, «немає доступу» в третьому.

Рівні

  • Проєкт. Базова одиниця — коренева папка-проєкт на сервері. Користувач бачить проєкт у списку, але не може його відкрити.
  • Розділ моделі. Архітектура, конструкції, інженерія, координація — кожен розділ може мати власні права. Інженер-підрядник відкриває лише свій розділ, решта навіть не підтягується в Revit-клієнт.
  • Дія. read, edit. Перегляд без редагування — окреме право від редагування без публікації.

03 ПроєктиЦей екран керує розділом «Проєкти»: дані, фільтри, дії та експорт зібрані в панелі RSG.

Ролі та групи

Нижче — як це виглядає в адмін-панелі. Матриця: проєкти по рядках, ролі по стовпцях, у клітинках — стан дозволу.

Легенда: повний доступ · лише читання · по розділах · немає

Приклад конфігурації правила

Кожне правило виражається JSON-документом, який можна як редагувати через UI, так і імпортувати пакетно з CSV/JSON для міграції з саморобних рішень.

04 РоліЦей екран керує розділом «Ролі»: дані, фільтри, дії та експорт зібрані в панелі RSG.

04 — Адмін-панель

Веб-адмінка замість CLI та реєстру.

Усе керування — через React SPA, доступну локально на хості RSG. Жодного regedit, жодного gpedit, жодних ручних правок XML. Адмін відкриває сторінку в браузері й бачить дашборд, ліцензію, аудит і матрицю прав. Якщо потрібен віддалений доступ, його віддають за reverse-проксі з TLS.

Головна сторінка — це дашборд. Чотири числа зверху за день, фід подій нижче і панель ліцензії.

05 КористувачіЦей екран керує розділом «Користувачі»: дані, фільтри, дії та експорт зібрані в панелі RSG.

06 РозділиЦей екран керує розділом «Розділи»: дані, фільтри, дії та експорт зібрані в панелі RSG.

05 — Аудит

Кожна дія — у журналі.

Аудит — це не опційна фіча, а частина основного флоу. Кожен запит, що проходить через RSG.Proxy, залишає запис: хто, що, проти якого проєкту/розділу, яка дія, який результат, з якого IP, з якої версії Revit. Логи зберігаються локально й експортуються у CSV/JSON/SIEM.

В адмін-панелі є таблиця з фільтрами по кожному полю. Клік по рядку відкриває повний JSON події.

Що фіксується

  • Identity: AD-логін, IP, версія Revit-клієнта, імʼя машини користувача.
  • Target: ID проєкту, імʼя файлу, розділ/workset, ID елемента (де застозвно).
  • Action: open, sync_to_central, reload_latest, create_local, publish, delete_local, borrow_workset тощо.
  • Result: allow / deny / warn (warn — не заблоковано, але позначено для перегляду).
  • Context: яке правило ухвалило рішення, мітка часу з TZ, тривалість операції.

Зберігання

За замовчуванням журнал зберігається 18 місяців. Це налаштовується. Логи можна стрімити в SIEM-систему через webhook (JSON-payload), писати у SQL Server вашої компанії або експортувати пакетно через CLI.

07 Журнал аудитуЦей екран керує розділом «Журнал аудиту»: дані, фільтри, дії та експорт зібрані в панелі RSG.

08 БекапиЦей екран керує розділом «Бекапи»: дані, фільтри, дії та експорт зібрані в панелі RSG.

06 — Ліцензування

Підписана ліцензія, привʼязана до машини.

Ліцензія RSG — це підписаний envelope (LicenseEnvelope), що містить payload із правами та підпис. Підпис створюється на нашому боці приватним ключем ECDSA P-256 і перевіряється на боці клієнта публічним ключем, зашитим у бінарник RSG.

Це означає: підмінити ліцензію або підняти «свій License API» за тим самим URL — неможливо без приватного ключа. Кейген фізично не може існувати — потрібно або зламати ECDSA P-256 (теоретично нереалістично), або вкрасти приватний ключ із нашого HSM.

Відбиток машини

Ліцензія привʼязується до машини через fingerprint — SHA-256 від детермінованого рядка, складеного з імені машини й MAC-адрес мережевих інтерфейсів.

Мережеві інтерфейси зртуються — це важливо. Якщо в системі кілька MAC, ОС може перелічити їх у різному порядку, а зртування усуває цю нестабільність. Імʼя машини перекладиться у верхній регістр з тієї ж причини.

Онлайн- та офлайн-активація

Коли хост має вихідний HTTPS до нашого домену, активація — це один клік в адмін-панелі. RSG.Server надсилає JSON з відбитком і метаданими, License API повертає підписаний конверт, який застозвується одразу.

Коли мережі немає (закритий контур, держсегмент, ізольований полігон), активація йде через файли:

  1. В адмін-панелі → «Згенерувати запит ліцензії» → зберегти request.rsgreq на USB.
  2. У кабінеті на сайті → «Активувати офлайн» → завантажити .rsgreq → отримати license.rsglic.
  3. Завантажити .rsglic назад в адмін-панель. Готово.

Що відбувається після завершення

Після завершення тріалу або строкової ліцензії RSG переходить у режим bypass — захист вимикається, Revit Server працює як до встановлення RSG. Це зроблено навмисно: ми не хочемо, щоб клієнт у пʼятницю о 23:50 упирався в непрацюючий продакшн. Коли ліцензію поновлено, RSG автоматично повертається у режим full.

09 КонфігураціяЦей екран керує розділом «Конфігурація»: дані, фільтри, дії та експорт зібрані в панелі RSG.

07 — Встановлення

За один вечір: від інсталятора до першої ролі.

RSG встановлюється через установник Windows (MSI чи EXE). Без docker, без kubernetes, без зовнішніх залежностей, крім .NET 8 LTS Runtime — який або вже встановлений на Windows Server 2022/2025, або підтягується установником.

Що потрібно перед встановленням

  • Windows Server 2019 / 2022 / 2025 на тому ж хості, що й Revit Server.
  • Обліковий запис із правами адміністратора на цьому хості.
  • Доступ на читання до БД RS (RSG до неї не пише, лише читає метадані проєктів).
  • Один вільний TCP-порт (8086 за замовчуванням) — RSG.Proxy візьме його.
  • ~250 МБ диска для встановлення, ~5 ГБ для журналу аудиту за пів року.

Кроки

  1. Завантажити RSG-Setup-1.0.0.exe з вашого кабінету.
  2. Запустити інсталятор від адміністратора. Вказати порт проксі та шлях до БД RS.
  3. Відкрити http://localhost:5080 — майстер першого запуску попросить створити суперюзера адмін-панелі.
  4. Імпортувати користувачів з AD (одним кліком) або додати їх вручну.
  5. Створити перше правило доступу на тестовому проєкті.
  6. Перенаправити Revit-клієнти на новий порт проксі (через DNS або Group Policy).

Конфігурація

Більшість налаштувань живуть в appsettings.json RSG.Server. Більшість адмінів його ніколи не чіпають — усе налаштовується через UI — але іноді це потрібно.

08 — Сумісність

Працює з тим, що у вас уже є.

RSG спроєктовано під наявні інсталяції, а не під чисте поле. Жодних вимог нової версії Windows, нової версії Revit Server чи чистої інфраструктури. Він працює з тим, що є.

Продуктивність

Проксі додає ~3–8 мс затримки на запит за типового навантаження (виміряно на Xeon E-2336, Windows Server 2022, 100 одночасних Revit-клієнтів). Для користувача непомітно — Revit і так не славиться блискавично швидкими мережевими операціями.

  • RAM: 200–400 МБ резидентно при 100 активних користувачах.
  • CPU: <5 % одного ядра під піковим навантаженням.
  • Disk I/O: ~15 МБ/годину журналу аудиту при 100 користувачах.
  • Network: майже нульовий overhead — RSG не буферизує, він пропускає потік.

10 СтатистикаЦей екран керує розділом «Статистика»: дані, фільтри, дії та експорт зібрані в панелі RSG.

09 — Безпека

Що RSG захищає — і чого він не робить.

Чесно: RSG — не срібна куля. Він закриває один конкретний клас проблем — авторизацію доступу до Revit Server. Нижче — що входить у його модель загроз, а що — поза нею.

У моделі загроз RSG

  • Інсайдер із легітимним AD-доступом, який намагається читати чужі проєкти. Закрито: перевірка проєкт + розділ + дія на кожному запиті.
  • Підрядник, у якого скінчився контракт, але AD-обліковий ще не вимкнули. Закрито: правила з validUntil і denyOnExpired: true.
  • Витік через підроблений сайт чи підроблену License API. Закрито: ліцензія підписана ECDSA P-256, ключ зашитий у клієнт. Підмінити сайт без приватного ключа — неможливо.
  • Перенесення ліцензії на чужу машину. Закрито: machine fingerprint у payload, валідується на кожному старті сервісу.

Поза моделлю загроз RSG

  • Скомпрометований AD-сервер. Якщо зловмисник отримує права DA — він отримує і доступ до RSG.AdminPanel. Це проблема безпеки AD, не RSG.
  • Фізичний доступ до хоста RSG. З локальним адмін-доступом сервіс можна зупинити. Захист на рівні інфраструктури — bitlocker, фізичний контроль.
  • Скріншоти та фотографії екрану. Якщо користувач має легітимний доступ до проєкту, він може його побачити й сфотографувати. RSG не є DLP-рішенням.
  • Витоки через локальні Revit-файли. Коли Revit-клієнт завантажує локальну копію проєкту, вона фізично живе на диску користувача. Тут потрібне шифрування диска і DLP.

Криптографія

  • Підпис ліцензії: ECDSA P-256 + SHA-256, формат IEEE P1363, довжина 64 байти.
  • Звʼязок із License API: TLS 1.2+, валідація сертифіката.
  • Внутрішній трафік AdminPanel ↔ RSG.Server: HTTPS зі самопідписаним сертифікатом за замовчуванням (можна замінити корпоративним).
  • Зберігання приватного ключа підпису на нашому боці: managed key vault із політикою ротації.

10 — запитанняи і відповідьи

Часті питання — конкретно про RSG.

Що буде, якщо RSG.Server упаде вночі?

У такому випадку RSG.Proxy переходить у режим fail_open або fail_closed — налаштовується. За замовчуванням fail_open: коли мозок недосяжний, проксі пропускає трафік до Revit Server без перевірок (наче RSG немає). Це дає безпечну поведінку при відмові RSG: бізнес продовжує працювати. Якщо вимоги вашої компанії протилежні — краще заблокувати усі, ніж ризикнути витоком — ви ставите fail_closed.

А якщо змінився MAC мережевої картки?

Fingerprint змінюється, і ліцензію буде відхилено. Два рішення: або вказати quantity = 2 при покупці (тоді ліцензія валідна на два fingerprint і можна використати ще одну активацію), або запросити перевипуск з кабінету — це безкоштовно й миттєво.

Чи може RSG працювати в HA-конфігурації (два вузли)?

Зараз (v2.4.x) — ні, лише single-instance. HA-конфігурація — у roadmap на v3.0. Як обхідний шлях, команди зазвичай тримають «холодний» другий вузол з ідентичним конфігом і перемикають DNS у разі відмови.

Чи читає RSG файли .rvt?

Ні. RSG працює на рівні мережевого протоколу Revit Server — він бачить SOAP-запити, метадані проєктів, назви розділів. Він не парсить і не зберігає вмісту моделей. Для контролю на рівні вмісту (DLP за тим, що усіредині моделей) потрібні окремі рішення.

Скільки ліцензій потрібно на два Revit Server?

Дві — кожна ліцензія привʼязана до одного fingerprint, а fingerprint двох хостів різні. Знижки для multi-server конфігурацій рахуємо індивідуально, пишіть на info@.

Чи можна мігрувати з саморобного рішення?

Якщо у вас є якась матриця «користувач × проєкт × право» в Excel/CSV/SQL — імпорт у RSG підтримується через CLI rsg-import. Якщо ваше саморобне рішення робило щось складніше (наприклад, права на основі геометричних властивостей усередині моделі) — RSG цього не покриває, цю частину доведеться залишити як було.

Готові спробувати?

Поставте RSG поряд із Revit Server сьогодні.Тріал — 90 днів, без карток.

Завантажте інсталятор із кабінету, поставте на той самий хост, що й RS, дайте йому пів години роботи. До вечора побачите, що RSG робить те, чого Revit Server з коробки не робить.

Спільнота

Відгуки користувачів

Поставте рішенню вподобайку або поділіться досвідом. Відгук можна залишити без реєстрації.

0 відгуків

Відгуки

Поки немає схвалених відгуків.

Залишити відгук

Відгуки проходять модерацію перед публікацією. Реєстрація не потрібна. Privacy

Ваша оцінка