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

Revit Server Guard

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

Версія 1.1.4 Flagship solution ↓ Завантаження 414
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

Ваша оцінка