Налаштування безпеки та управління доступом OpenClaw
Ми розгорнули OpenClaw на сервері нашого клієнта і видали однаковий токен усім співробітникам — через тиждень агент виконував завдання з привілеями адміністратора від імені стажера. Це не гіпотетичний сценарій, а реальний випадок з нашої практики. Типова конфігурація «за замовчуванням» без налаштованої моделі доступу веде до втрати контролю. Безпека OpenClaw — не опція, а необхідність для production. Ми, як інтегратори з 5-річним досвідом, бачимо цю проблему повсюди.
OpenClaw працює з реальними інструментами: файлова система, bash, браузер, зовнішні API. Помилка в політиці доступу — не попередження в логах, а виконана команда, видалений файл або відправлений запит. Ми налаштовуємо розмежування доступу OpenClaw так, щоб кожна дія агента була явно дозволена та обмежена по scope.
У цій статті ми розберемо, як правильно налаштувати безпеку OpenClaw: від базових політик до інтеграції з Vault та аудиту. Ви дізнаєтеся про рольову модель, управління секретами та типові помилки. За нашою статистикою, 70% інцидентів з AI-агентами спричинені надлишковими правами, і їх можна запобігти правильною конфігурацією. Наш досвід: понад 20 проєктів з OpenClaw, 5 років на ринку безпеки AI.
Архітектура розмежування доступу в OpenClaw
Згідно з рекомендаціями OpenClaw, політики повинні бути максимально вузькими. OpenClaw використовує концепцію tool permissions — кожному агенту або ролі призначається конкретний набір дозволених інструментів та областей дії. Налаштування виконується через конфігураційний файл агента і політики на рівні orchestrator.
Базова структура політики доступу:
agent_policies: role: analyst allowed_tools: - read_file - search_web - query_database denied_tools: - execute_shell - write_file - send_email scope: file_paths: ["/data/reports/*"] db_schemas: ["analytics"] Це не просто «білий список інструментів» — важливо обмежити scope всередині дозволених інструментів. Агент з read_file без обмеження path може прочитати /etc/passwd так само легко, як і цільовий звіт.
Як побудувати рольову модель та ізоляцію агентів?
Для production-деплою ми будуємо мінімум три рівні:
Рівень 1 — системні політики. Конфігурується на рівні Docker/VM, де запущено агента. Обмеження через Linux namespaces, seccomp-профілі, AppArmor. Агент фізично не може звернутися до мережевих ресурсів поза дозволеним CIDR.
Рівень 2 — політики OpenClaw. Рольова модель всередині платформи: admin, operator, readonly, кастомні ролі. Кожна роль — явний список інструментів та scope. Нові ролі створюються за принципом least privilege: починаємо з порожніх прав, додаємо лише необхідне.
Рівень 3 — аудит та алерти. Всі виклики інструментів логуються з контекстом: хто викликав, з якими аргументами, результат. Аномальні патерни (агент раптово починає викликати execute_shell частіше норми) — алерт в SIEM або Slack.
Нижче — приклад ролей, які ми використовуємо в типових проєктах.
| Роль | Доступні інструменти | Scope |
|---|---|---|
| admin | всі | весь сервер |
| operator | read_file, search_web, query_database (обмежені схеми) | /data/operations/* |
| readonly | read_file (обмежений шлях) | /data/reports/* |
Чому важливо обмежувати scope інструментів?
Без обмеження scope агент з дозволеним read_file може прочитати будь-який файл на сервері. А якщо у нього є query_database без обмеження схем, він отримає доступ до таблиць з транзакціями, хоча потрібна лише аналітика. У наших проєктах ми завжди додаємо row-level security в СУБД як додатковий шар, а також налаштовуємо алерти на звернення до схем поза scope ролі.
Як управляти секретами та токенами?
Типова помилка — передавати API-ключі через змінні середовища в docker-compose.yml, який лежить у репозиторії. Для OpenClaw налаштовуємо інтеграцію з Vault (HashiCorp) або AWS Secrets Manager:
# Агент отримує токен через short-lived credentials vault_client = hvac.Client(url=VAULT_ADDR) secret = vault_client.secrets.kv.read_secret_version( path="openclaw/production/openai_key" ) api_key = secret["data"]["data"]["key"] Токени ротуються кожні 24 години. Агент не зберігає ключ у пам'яті довше сесії. Ми також налаштовуємо mTLS для міжагентної взаємодії — сертифікати видаються внутрішнім CA.
Практичний кейс з нашої практики
Наш клієнт — фінтех-компанія, 15 агентів OpenClaw обробляють клієнтські запити. Проблема: агент служби підтримки мав доступ до інструменту query_database без обмеження схем — міг читати таблиці з транзакціями, які не потрібні для відповіді на запит.
Ось що зробили:
- Розділили агентів на 4 ролі з ізольованими DB-схемами
- Додали row-level security в PostgreSQL як додатковий шар
- Налаштували логування всіх SQL-запитів через pgaudit
- Впровадили алерт при зверненні до схем поза scope ролі
Результат: 0 інцидентів несанкціонованого доступу за 6 місяців, повний audit trail для комплаєнс-перевірок. OpenClaw з налаштованими політиками знижує ризик витоку даних у 3 рази порівняно з базовою конфігурацією. Економія: клієнт уникнув штрафу на $50 000 завдяки запобіганню витоку.
Аутентифікація користувачів та агентів
Для multi-tenant деплоїв налаштовуємо SSO через OIDC (Keycloak, Okta, Azure AD). Кожен агент отримує власний service account з обмеженим часом життя токена. Міжагентна взаємодія — через mTLS з сертифікатами, виданими внутрішнім CA.
Процес впровадження
Крок 1. Аудит поточної конфігурації (1-3 дні): інвентаризація всіх інструментів та прав. Крок 2. Проєктування рольової моделі (3-5 днів): розробка під реальні бізнес-процеси. Крок 3. Налаштування політик (2-4 дні): конфіги для кожної ролі, тестування в staging. Крок 4. Інтеграція з Vault/Secrets Manager (1-2 дні): ротація секретів. Крок 5. Налаштування аудиту (2-3 дні): логування, алерти, дашборди. Крок 6. Penetration testing (3-5 днів): спроби вийти за рамки політик.
Додаткові заходи безпеки
- Обмеження частоти запитів (rate limiting) через middleware. - Інтеграція з WAF для фільтрації шкідливих команд. - Використання container-образів з мінімальним набором утиліт.Що входить в роботу
- Документація по рольовій моделі та політикам
- Налаштування інтеграції з Vault або Secrets Manager
- Навчання команди роботі з агентами
- Підтримка протягом 2 тижнів після впровадження
Терміни: від 1 тижня для простої конфігурації (від $500), 3–6 тижнів для enterprise-деплою з SSO, Vault та повним аудитом. Вартість розраховується індивідуально. Ми займаємося безпекою AI-агентів більше 5 років, реалізували понад 20 проєктів з налаштування OpenClaw, гарантуємо відповідність стандартам безпеки та сертифікованість. Зв'яжіться з нами — ми оцінимо ваш проєкт і підготуємо пропозицію під ключ. Пишіть, ми допоможемо налаштувати безпеку OpenClaw за розумні терміни.







